diff --git a/.cursorignore b/.cursorignore new file mode 100644 index 000000000..5afa2292b --- /dev/null +++ b/.cursorignore @@ -0,0 +1,3 @@ +gfx* +scenario_tests* +.vscode* diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml new file mode 100644 index 000000000..aa36b7337 --- /dev/null +++ b/.github/workflows/create_release.yml @@ -0,0 +1,39 @@ +on: + push: + branches: + - master + +name: Create Release + +jobs: + build: + name: Create Release + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Get current date and time in CEST, and compatible version from descriptor.mod + id: get-version + run: | + # Read compatible version from descriptor.mod and remove quotes + compatible_version=$(grep -oP 'supported_version="\K[0-9]+\.[0-9]+\.\*' descriptor.mod | sed 's/"//g') + + # Get current date and time in CEST + date_time=$(TZ="Europe/Paris" date +'%d-%m-%Y_%H-%M') + + echo "::set-output name=compatible_version::$compatible_version" + echo "::set-output name=date_time::$date_time" + + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.LOTR_MOD_RELEASE_TOKEN }} + with: + tag_name: ${{ steps.get-version.outputs.date_time }} + release_name: ${{ steps.get-version.outputs.date_time }} + body: | + Compatible HoI4 Version: v${{ steps.get-version.outputs.compatible_version }} + draft: false + prerelease: false diff --git a/common/ideas/generic.txt b/common/ideas/generic.txt index 13164e262..d135c34c2 100644 --- a/common/ideas/generic.txt +++ b/common/ideas/generic.txt @@ -115,7 +115,7 @@ ideas = { removal_cost = -1 - picture = idea_generic_belligerent_drift_bonus + picture = generic_belligerent_drift_bonus modifier = { belligerent_drift = 0.15 diff --git a/common/ideas/lothlorien.txt b/common/ideas/lothlorien.txt index 2cf2fe228..41986456a 100644 --- a/common/ideas/lothlorien.txt +++ b/common/ideas/lothlorien.txt @@ -1069,88 +1069,6 @@ ideas = { } } - - - ### OLD STUFF BELOW - - - spiritual_mobilization_idea = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = generic_manpower_bonus - - modifier = { - conscription = 0.025 - } - } - - warrior_traditions_idea = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - modifier = { - war_support_factor = 0.15 - army_morale_factor = 0.1 - } - } - - LTH_automated_production = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = generic_production_bonus - - modifier = { - production_factory_max_efficiency_factor = 0.15 - line_change_production_efficiency_factor = 0.2 - conversion_cost_civ_to_mil_factor = -0.2 - } - } - - LTH_recycling = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = idea_generic_flexible_foreign_policy - - modifier = { - consumer_goods_factor = -0.02 - } - } - LTH_refined_scientists = { allowed = { @@ -1170,212 +1088,6 @@ ideas = { } } - LTH_poison_arrows = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = officers_purged - - modifier = { - army_attack_factor = 0.05 - } - } - - LTH_adaptable_arrow_tips = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = idea_generic_flexible_foreign_policy2 - - modifier = { - out_of_supply_factor = -0.01 - army_org = 5 - } - } - - LTH_integrated_orcs = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = generic_manpower_bonus - - modifier = { - stability_factor = -0.05 - conscription = 0.05 - army_attack_factor = 0.05 - army_defence_factor = -0.05 - } - } - - LTH_global_aspirations = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = FRA_national_mobilization_focus - - modifier = { - justify_war_goal_time = -0.25 - stability_factor = 0.05 - ai_focus_aggressive_factor = 0.5 - conscription_law_cost_factor = 0.25 - } - } - - LTH_propaganda_spreaders = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = FRA_scw_intervention_republicans_focus - - modifier = { - subversive_activites_upkeep = -0.3 - } - } - - LTH_commune_for_elves = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = Home_of_the_Revolution - - modifier = { - stability_factor = 0.1 - training_time_factor = -0.15 - } - } - - LTH_commune_for_all = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = Home_of_the_Revolution - - modifier = { - stability_factor = -0.1 - conscription = 0.02 - training_time_factor = 0.1 - } - } - - LTH_elven_protection_league = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = Yug_federal_defense_council - - modifier = { - conscription_law_cost_factor = -0.25 - lend_lease_tension = -0.50 - join_faction_tension = -0.20 - } - } - - LTH_exceptional_endurance = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = Yug_federal_defense_council - - modifier = { - drift_defence_factor = 0.5 - foreign_subversive_activites = -0.50 - send_volunteers_tension = -0.20 - send_volunteer_size = 20 - attrition = -0.3 - } - } - - LTH_enhanced_trade = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = can_wartime_prices_and_trade_board - - modifier = { - trade_opinion_factor = 0.50 - } - } - LTH_total_isolation = { allowed = { @@ -1395,58 +1107,6 @@ ideas = { research_speed_factor = 0.1 } } - - LTH_stout_nation = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = generic_goods_red_bonus - - modifier = { - consumer_goods_factor = 0.2 - stability_factor = 0.3 - supply_consumption_factor = 0.05 - global_building_slots_factor = 0.5 - production_speed_buildings_factor = 0.3 - } - } - - LTH_self_preservation = { - - allowed = { - always = no - } - - allowed_civil_war = { - always = yes - } - - removal_cost = -1 - - picture = idea_generic_flexible_foreign_policy - - modifier = { - unaligned_drift = 0.05 - belligerent_drift = -0.01 - revolutionary_drift = -0.01 - drift_defence_factor = 0.25 - ai_get_ally_desire_factor = -50 - ai_join_ally_desire_factor = -50 - ai_focus_defense_factor = 0.5 - max_dig_in = 5 - justify_war_goal_time = 0.25 - generate_wargoal_tension = 0.2 - } - } - } research_advisor = { diff --git a/common/national_focus/angmar.txt b/common/national_focus/angmar.txt index c52f742a0..0d7e5dd97 100644 --- a/common/national_focus/angmar.txt +++ b/common/national_focus/angmar.txt @@ -22,7 +22,7 @@ shared_focus = industrial_effort #Focus for The Fate of Angmar focus = { id = ANG_steady_as_we_go - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 1 modifier = { factor = 0 is_going_unaligned = no } @@ -311,7 +311,7 @@ focus = { #Focus for The Fate of Angmar focus = { id = thefateofangmar - icon = GFX_goal_angmar_unalligned + icon = GFX_goal_angmar_unaligned search_filters = { FOCUS_FILTER_POLITICAL } ai_will_do = { factor = 4 } mutually_exclusive = { focus = ANG_steady_as_we_go } @@ -569,7 +569,7 @@ focus = { #Focus for Defeat the close evil focus = { id = ANG_defeat_our_neighbours_evil - icon = GFX_goal_gundabad + icon = GFX_goal_gundabad_flag search_filters = { FOCUS_FILTER_ANNEXATION } ai_will_do = { factor = 5 } relative_position_id = ANG_send_out_a_warning @@ -777,7 +777,7 @@ focus = { #Focus preempty the threat focus = { id = ANG_wargoal_isengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag search_filters = { FOCUS_FILTER_ANNEXATION } ai_will_do = { factor = 8 } available = { @@ -1037,7 +1037,7 @@ focus = { focus = { id = ANG_the_true_arnor - icon = GFX_goal_angmar_unalligned + icon = GFX_goal_angmar_unaligned search_filters = { FOCUS_FILTER_ANNEXATION } ai_will_do = { factor = 10 } available = { @@ -1600,7 +1600,7 @@ focus = { focus = { id = ANG_saruman_has_betrayed_us - icon = GFX_goal_sauron_is_looking + icon = GFX_goal_saruman_with_palantir x = -4 y = 1 relative_position_id = ANG_unite_with_sauron @@ -1622,7 +1622,7 @@ focus = { focus = { id = ANG_request_investment - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag x = 2 y = 1 relative_position_id = ANG_unite_with_sauron @@ -1643,7 +1643,7 @@ focus = { focus = { id = ANG_honor_morgoth - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth x = 4 y = 1 relative_position_id = ANG_unite_with_sauron @@ -1957,7 +1957,7 @@ focus = { focus = { id = ANG_avenge_rivendell - icon = GFX_goal_elrond + icon = GFX_goal_riv_elrond search_filters = { FOCUS_FILTER_ANNEXATION } ai_will_do = { factor = 25 } available = { @@ -2039,7 +2039,7 @@ focus = { focus = { id = ANG_learn_from_past_mistakes - icon = GFX_goal_meats_back_on_the_menu + icon = GFX_goal_mor_meat_back_skulls_knife search_filters = { FOCUS_FILTER_POLITICAL } ai_will_do = { factor = 25 } relative_position_id = ANG_recall_loyal_troops @@ -2136,7 +2136,7 @@ focus = { focus = { id = ANG_recall_the_nazguls - icon = GFX_goal_gather_the_nazgl + icon = GFX_goal_mor_nazgul_ringwraiths ai_will_do = { factor = 25 } relative_position_id = ANG_tell_the_world x = -3 @@ -2316,7 +2316,7 @@ focus = { focus = { id = ANG_old_allies - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag search_filters = { FOCUS_FILTER_POLITICAL } ai_will_do = { factor = 25 } relative_position_id = ANG_tell_the_world @@ -2348,7 +2348,7 @@ focus = { focus = { id = ANG_new_allies - icon = GFX_goal_gundabad + icon = GFX_goal_gundabad_flag search_filters = { FOCUS_FILTER_POLITICAL } ai_will_do = { factor = 25 } relative_position_id = ANG_old_allies @@ -2441,7 +2441,7 @@ focus = { focus = { id = ANG_honor_morgoth_sauron - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT } ai_will_do = { factor = 25 } relative_position_id = ANG_tell_the_world diff --git a/common/national_focus/arthedain.txt b/common/national_focus/arthedain.txt index ed48b75d9..d01e7e35f 100644 --- a/common/national_focus/arthedain.txt +++ b/common/national_focus/arthedain.txt @@ -392,7 +392,7 @@ focus = { focus = { id = ART_unite_by_force - icon = GFX_unite_by_force + icon = GFX_goal_arnor_unite_by_force ai_will_do = { factor = 5 } available = { OR = { diff --git a/common/national_focus/easterlings.txt b/common/national_focus/easterlings.txt index c550bcd50..18e383698 100644 --- a/common/national_focus/easterlings.txt +++ b/common/national_focus/easterlings.txt @@ -417,7 +417,7 @@ focus = { focus = { id = power_to_khamul ai_will_do = { factor = 50 } - icon = GFX_goal_khamul + icon = GFX_goal_rhu_nazghul_ringwraith_khamul x = 0 y = 1 relative_position_id = RHU_follow_the_dark_lord @@ -447,7 +447,7 @@ focus = { focus = { id = RHU_join_the_dark_pact - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag x = 4 y = 1 relative_position_id = power_to_khamul @@ -898,7 +898,7 @@ focus = { focus = { id = RHU_ally_dorwinion - icon = GFX_goal_dorwinion + icon = GFX_goal_rhu_dorwinion_flag x = 0 y = 1 relative_position_id = RHU_ally_harad @@ -920,7 +920,7 @@ focus = { focus = { id = RHU_honor_morgoth - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth x = 2 y = 1 relative_position_id = RHU_join_the_dark_pact @@ -937,7 +937,7 @@ focus = { focus = { id = RHU_take_dorwinion - icon = GFX_wargoal_dorwinion + icon = GFX_goal_mor_wargoal_dorwinion x = 2 y = 1 bypass = { @@ -969,7 +969,7 @@ focus = { focus = { id = RHU_build_vineyards - icon = GFX_goal_grapes + icon = GFX_goal_mor_grapes x = 0 y = 1 relative_position_id = RHU_take_dorwinion @@ -1059,7 +1059,7 @@ focus = { focus = { id = RHU_invaded_mordor - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor x = 0 y = 1 relative_position_id = RHU_increase_supply @@ -1131,7 +1131,7 @@ focus = { focus = { id = RHU_lay_claim_on_the_iron - icon = GFX_wargoal_erebor + icon = GFX_goal_mor_wargoal_erebor x = 0 y = 1 relative_position_id = RHU_look_to_our_neighbours @@ -1174,7 +1174,7 @@ focus = { focus = { id = RHU_ask_mordor_for_trolls - icon = GFX_trolls + icon = GFX_mor_troll_warriors x = 0 y = 1 relative_position_id = RHU_join_research_group @@ -1197,7 +1197,7 @@ focus = { # democrate focus = { id = RHU_follow_the_wizards - icon = GFX_goal_the_blue_wizards + icon = GFX_goal_rhu_the_blue_wizards mutually_exclusive = { focus = RHU_follow_the_dark_lord } x = 30 y = 0 @@ -1249,7 +1249,7 @@ focus = { focus = { id = RHU_dale_support - icon = GFX_goal_dale + icon = GFX_goal_rhu_dale_flag x = -2 y = 1 relative_position_id = RHU_spread_the_word @@ -1277,7 +1277,7 @@ focus = { focus = { id = RHU_dorwinion_support - icon = GFX_goal_dorwinion + icon = GFX_goal_rhu_dorwinion_flag x = 2 y = 1 relative_position_id = RHU_spread_the_word @@ -1305,7 +1305,7 @@ focus = { focus = { id = RHU_civil_war - icon = GFX_goal_rhun_civil_war + icon = GFX_goal_rhu_rhun_civil_war x = 0 y = 1 relative_position_id = RHU_spread_the_word @@ -1414,7 +1414,7 @@ focus = { focus = { id = RHU_learn_from_the_wizards - icon = GFX_goal_the_blue_wizards + icon = GFX_goal_rhu_the_blue_wizards x = 0 y = 1 relative_position_id = RHU_see_the_light @@ -1728,7 +1728,7 @@ focus = { focus = { id = RHU_preempty_the_threat - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor x = 0 y = 1 relative_position_id = RHU_invite_to_all @@ -2036,7 +2036,7 @@ focus = { focus = { id = RHU_attack_mordor - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor x = 0 y = 2 bypass = { @@ -2063,7 +2063,7 @@ focus = { focus = { id = RHU_defeat_belligerente - icon = GFX_goal_restore_baraddr + icon = GFX_goal_mor_tower_of_barad_dur x = 0 y = 1 relative_position_id = RHU_attack_mordor diff --git a/common/national_focus/elven_alliance_focus.txt b/common/national_focus/elven_alliance_focus.txt index 6e0b82659..b76bbf71d 100644 --- a/common/national_focus/elven_alliance_focus.txt +++ b/common/national_focus/elven_alliance_focus.txt @@ -1,6 +1,6 @@ shared_focus = { id = ea_theelvenalliance - icon = GFX_goal_lth_theelvenalliance + icon = GFX_goal_lth_elven_alliance text_icon = joint_focus_style x =8 y =0 @@ -77,7 +77,7 @@ shared_focus = { joint_focus = { id = ea_memberexpansion - icon = GFX_goal_lth_memberexpansion + icon = GFX_goal_lth_treaty_invitation text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =-2 @@ -102,7 +102,7 @@ joint_focus = { joint_focus = { id = ea_tradeagreements - icon = GFX_goal_lth_tradeagreements + icon = GFX_goal_lth_trade_agreements text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =2 @@ -156,7 +156,7 @@ joint_focus = { joint_focus = { id = ea_coordinatedsanctions - icon = GFX_goal_lth_coordinatedsanctions + icon = GFX_goal_lth_coordinated_sactions text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =2 @@ -188,7 +188,7 @@ joint_focus = { joint_focus = { id = ea_proposalsandresolutions - icon = GFX_goal_lth_proposalsandresolutions + icon = GFX_goal_lth_proposals_and_resolutions text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =0 @@ -222,7 +222,7 @@ joint_focus = { joint_focus = { id = ea_pathtopeace - icon = GFX_goal_lth_collectivedefenseclause + icon = GFX_goal_lth_defense_deal text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =-1 @@ -253,7 +253,7 @@ joint_focus = { joint_focus = { id = ea_researchcooperation - icon = GFX_goal_lth_researchcooperation + icon = GFX_goal_lth_research_cooperation text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =1 @@ -284,7 +284,7 @@ joint_focus = { joint_focus = { id = ea_pooledknowledge - icon = GFX_goal_lth_researchcooperation + icon = GFX_goal_lth_research_cooperation text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =1 @@ -316,7 +316,7 @@ joint_focus = { joint_focus = { id = ea_elvenharmony - icon = GFX_goal_lth_elvenharmony + icon = GFX_goal_lth_harmony_unity text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =-1 @@ -348,8 +348,8 @@ joint_focus = { joint_focus = { id = ea_thecouncilofquendi - icon = GFX_goal_lth_thecouncilofquendi - text_icon = joint_focus_style + icon = GFX_goal_lth_council_of_quendi + text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =0 y =5 @@ -386,7 +386,7 @@ joint_focus = { joint_focus = { id = ea_hegemony - icon = GFX_goal_lth_hegemony + icon = GFX_goal_lth_hegemony_crown text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =-2 @@ -420,7 +420,7 @@ joint_focus = { joint_focus = { id = ea_executivevigour - icon = GFX_goal_lth_executivevigour + icon = GFX_goal_lth_executive_vigour text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =-2 @@ -454,7 +454,7 @@ joint_focus = { joint_focus = { id = ea_martialalliance - icon = GFX_goal_lth_martialalliance + icon = GFX_goal_lth_defensive_alliance text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =0 @@ -482,7 +482,7 @@ joint_focus = { joint_focus = { id = ea_marchinunison - icon = GFX_goal_lth_marchinunison + icon = GFX_goal_lth_elven_army text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =0 @@ -507,7 +507,7 @@ joint_focus = { joint_focus = { id = ea_internationalorganization - icon = GFX_goal_lth_unionofequals + icon = GFX_goal_lth_equal_union text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =2 @@ -534,7 +534,7 @@ joint_focus = { joint_focus = { id = ea_advanceddiplomacy - icon = GFX_goal_lth_theemissariesguild + icon = GFX_goal_lth_emissaries_guild text_icon = joint_focus_style relative_position_id = ea_theelvenalliance x =2 diff --git a/common/national_focus/entwood.txt b/common/national_focus/entwood.txt index 14e11f64a..79c28414a 100644 --- a/common/national_focus/entwood.txt +++ b/common/national_focus/entwood.txt @@ -17,7 +17,7 @@ default = no #Focus for Teachings of the Ancients focus = { id = teachingsoftheancients - icon = GFX_goal_teachings_of_the_ancients + icon = GFX_goal_entwood_treebeard ai_will_do = { factor = 3 } x =9 y =0 @@ -34,7 +34,7 @@ default = no #Focus for Wisdom of the Saplings focus = { id = wisdomofthesaplings - icon = GFX_goal_one_with_the_forest + icon = GFX_goal_entwood_forest_nature ai_will_do = { factor = 2 } x =13 y =0 @@ -93,7 +93,7 @@ default = no #Focus for Sounds like Orc mischief! focus = { id = soundslikeorcmischief - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 3 modifier = { factor = 0 is_going_unaligned = no } @@ -197,7 +197,7 @@ default = no #Focus for Trust Gandalf focus = { id = trustgandalf - icon = GFX_goal_trust_gandalf + icon = GFX_goal_roh_trust_gandalf ai_will_do = { factor = 2 } available = { ISE = { has_completed_focus = waysofthedark } } x =0 @@ -211,7 +211,7 @@ default = no #Focus for Trust Saruman focus = { id = trustsaruman - icon = GFX_goal_trust_saruman + icon = GFX_goal_roh_trust_saruman ai_will_do = { factor = 2 } available = { ISE = { has_completed_focus = waysofthelight } } x =2 @@ -299,7 +299,7 @@ default = no #Focus for Limited Intervention focus = { id = est_limitedintervention - icon = GFX_goal_fury_of_the_trees + icon = GFX_goal_ent_throwing_rock ai_will_do = { factor = 2 } x =13 y =2 @@ -344,7 +344,7 @@ default = no #Focus for One with the Forest focus = { id = onewiththeforest - icon = GFX_goal_one_with_the_forest + icon = GFX_goal_entwood_forest_nature ai_will_do = { factor = 2 } x =20 y =2 @@ -391,7 +391,7 @@ default = no #Focus for Forest Cooperation focus = { id = forestcooperation - icon = GFX_goal_entwood + icon = GFX_goal_entwood_flag ai_will_do = { factor = 1 } x =17 y =3 @@ -408,7 +408,7 @@ default = no #Focus for More frequent Gatherings focus = { id = morefrequentgatherings - icon = GFX_goal_one_with_the_forest + icon = GFX_goal_entwood_forest_nature ai_will_do = { factor = 2 } x =4 y =3 @@ -503,7 +503,7 @@ default = no #Focus for Community Effort focus = { id = communityeffort - icon = GFX_goal_community_effort + icon = GFX_goal_entwood_ent_council ai_will_do = { factor = 2 } x =17 y =4 @@ -536,7 +536,7 @@ default = no #Focus for Search for the Entwives focus = { id = searchfortheentwives - icon = GFX_goal_one_with_the_forest + icon = GFX_goal_entwood_forest_nature ai_will_do = { factor = 2 } x =9 y =5 @@ -789,7 +789,7 @@ default = no #Focus for Increased Stability focus = { id = increasedstability - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 2 } x =10 y =14 diff --git a/common/national_focus/erebor.txt b/common/national_focus/erebor.txt index c4f5fb828..5559339e7 100644 --- a/common/national_focus/erebor.txt +++ b/common/national_focus/erebor.txt @@ -131,7 +131,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Demand Dale focus = { id = demanddale - icon = GFX_wargoal_dale + icon = GFX_goal_mor_wargoal_dale ai_will_do = { factor = 4 } x =2 y =4 @@ -145,7 +145,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Home of the Dwarves focus = { id = homeofthedwarves - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army ai_will_do = { factor = 10 } x =6 y =1 @@ -1183,7 +1183,7 @@ focus = { #Focus for Stand with dale focus = { id = standwithdale - icon = GFX_goal_dale + icon = GFX_goal_rhu_dale_flag ai_will_do = { factor = 15 } available = { NOT = { has_completed_focus = antagonizedale } } x =1 diff --git a/common/national_focus/gondor.txt b/common/national_focus/gondor.txt index 56cd28632..0cbb15be0 100644 --- a/common/national_focus/gondor.txt +++ b/common/national_focus/gondor.txt @@ -16,7 +16,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_delegitimize_aragorns_claim - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 3 } x = 14 y = 0 @@ -117,7 +117,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_gondor_propaganda - icon = GFX_goal_gon_dam_propaganda + icon = GFX_goal_gondor_dol_amroth_propaganda ai_will_do = { factor = 3 } prerequisite = { focus = GON_enforce_militair_loyalty } relative_position_id = GON_enforce_militair_loyalty @@ -146,7 +146,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_install_loyal_government_DAM - icon = GFX_goal_dol_amroth + icon = GFX_goal_gondor_dol_amroth_flag ai_will_do = { factor = 3 } prerequisite = { focus = GON_gondor_propaganda } relative_position_id = GON_gondor_propaganda @@ -309,7 +309,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_in_memory_of_faramir - icon = GFX_goal_faramir + icon = GFX_goal_gondor_faramir ai_will_do = { factor = 100 } available = { has_global_flag = faramir_dead @@ -330,7 +330,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_invest_in_the_industry - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 100 } available = { OR = { @@ -470,7 +470,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_steward_of_the_people - icon = GFX_goal_denethor + icon = GFX_goal_gondor_denethor ai_will_do = { factor = 100 } available = { unaligned > 0.85 } prerequisite = { focus = GON_restructure_the_army } @@ -617,7 +617,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for Declare Aragorn the rightful heir focus = { id = GON_declare_aragorn_the_rightful_heir - icon = GFX_goal_king_aragorn + icon = GFX_goal_gondor_king_aragorn ai_will_do = { factor = 10 } available = { custom_trigger_tooltip = { @@ -792,7 +792,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for Crown Aragorn King of Gondor focus = { id = GON_crown_aragorn_king - icon = GFX_goal_king_aragorn + icon = GFX_goal_gondor_king_aragorn ai_will_do = { factor = 15 } relative_position_id = GON_invite_aragorn_to_minas_tirith prerequisite = { focus = GON_invite_aragorn_to_minas_tirith} @@ -820,7 +820,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_ban_denethor_loyalists - icon = GFX_goal_denethor + icon = GFX_goal_gondor_denethor ai_will_do = { factor = 3 } relative_position_id = GON_crown_aragorn_king available = { has_idea = GON_denethor_loyalists } @@ -837,7 +837,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_invest_industry_dol_amroth - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 10 } relative_position_id = GON_crown_aragorn_king prerequisite = { focus = GON_crown_aragorn_king } @@ -905,7 +905,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_wed_faramir_to_eowyn - icon = GFX_goal_gon_wed_faramir_to_eowyn + icon = GFX_goal_gon_faramir_eowyn_wedding ai_will_do = { factor = 3 modifier = { @@ -1087,7 +1087,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_historical_claims - icon = GFX_goal_gon_historical_claims + icon = GFX_goal_gon_isildur_crown_with_map ai_will_do = { factor = 30 } relative_position_id = GON_restore_the_kingdom_of_gondor prerequisite = { focus = GON_restore_the_kingdom_of_gondor focus = GON_restructure_the_army } @@ -1110,7 +1110,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_attack_before_being_attack - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor ai_will_do = { factor = 0 modifier = { @@ -1245,7 +1245,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_send_boromir_with_the_fellowship - icon = GFX_goal_boromir + icon = GFX_goal_gondor_boromir ai_will_do = { factor = 100 } available = { has_global_flag = fs_gondor_boromir } relative_position_id = GON_honor_isildurs_legacy @@ -1279,7 +1279,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_betray_elronds_council - icon = GFX_goal_council_of_elrond + icon = GFX_goal_riv_council_of_elrond ai_will_do = { factor = 25 } available = { has_global_flag = gondor_has_ring } prerequisite = { focus = GON_have_boromir_steal_the_ring} @@ -1344,7 +1344,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_send_faramir_with_the_fellowship - icon = GFX_goal_faramir + icon = GFX_goal_gondor_faramir ai_will_do = { factor = 100 } available = { has_global_flag = fs_gondor_faramir } mutually_exclusive = { focus = GON_send_boromir_with_the_fellowship } @@ -1360,7 +1360,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_strengthen_ties_with_angmar - icon = GFX_goal_gon_strengthen_ties_with_angmar + icon = GFX_goal_gon_gondor_angmar_deal ai_will_do = { factor = 10 } available = { ring_faramir_in_fellowship = yes @@ -1397,7 +1397,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_rally_support_in_enedwaith - icon = GFX_goal_gon_rally_support_in_enedwaith + icon = GFX_goal_gon_gondor_enedwaith_deal ai_will_do = { factor = 10 } available = { ring_faramir_in_fellowship = yes @@ -1434,7 +1434,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_gain_favour_with_the_elves - icon = GFX_goal_gon_gain_favour_with_the_elves + icon = GFX_goal_gon_gondor_lothlorien_deal ai_will_do = { factor = 10 } available = { ring_faramir_in_fellowship = yes @@ -1791,7 +1791,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_prepare_for_the_growing_theat_north - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 5 modifier = { @@ -1950,7 +1950,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_where_is_the_string - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 5 } relative_position_id = GON_expand_the_military_production prerequisite = { focus = GON_expand_the_military_production } @@ -1973,7 +1973,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_library_of_wisdom - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 3 } relative_position_id = GON_where_is_the_string prerequisite = { focus = GON_where_is_the_string } @@ -2098,7 +2098,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_focus_on_civilian_south - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 3 } relative_position_id = GON_develop_the_south prerequisite = { focus = GON_develop_the_south } @@ -2167,7 +2167,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_focus_on_civilian_west - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 3 } relative_position_id = GON_develop_the_west prerequisite = { focus = GON_develop_the_west } @@ -2370,7 +2370,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_defense_specialist - icon = GFX_goal_lth_guardiansofthesilverwood + icon = GFX_goal_lth_defense_guardians ai_will_do = { factor = 3 } relative_position_id = GON_prepare_for_the_worse prerequisite = { focus = GON_prepare_for_the_worse } @@ -2494,7 +2494,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_improve_relations_with_rohan - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 5 } relative_position_id = GON_external_policy_department prerequisite = { focus = GON_external_policy_department } @@ -2512,7 +2512,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_help_deal_with_isengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 3 modifier = { @@ -2686,7 +2686,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for ithilien crisis focus = { id = GON_ithilien_crisis - icon = GFX_goal_gon_ithilien_crisis + icon = GFX_goal_gon_ithilien_crisis_white_tree_on_fire relative_position_id = GON_reinforce_osgilliath ai_will_do = { factor = 10 } x = 0 @@ -2710,7 +2710,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for ithilien crisis - Emergency Measures focus = { id = GON_ithc_emergency_measures - icon = GFX_goal_gon_ithc_emergency_measures + icon = GFX_goal_gon_orc_contained_ithilien_measures ai_will_do = { factor = 10 } relative_position_id = GON_ithilien_crisis x = 0 @@ -2753,7 +2753,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for ithilien crisis - Hold Firm focus = { id = GON_ithc_hold_firm - icon = GFX_goal_gon_ithc_hold_firm + icon = GFX_goal_gon_ithilien_soldier_of_gondor_shield ai_will_do = { factor = 10 } relative_position_id = GON_ithilien_crisis x = -1 @@ -2776,7 +2776,7 @@ continuous_focus_position = { x = 50 y = 1700 } #Focus for ithilien crisis - Evacuate the population focus = { id = GON_ithc_evacuate - icon = GFX_goal_gon_ithc_evacuate + icon = GFX_goal_gon_ithilien_defensive_planning ai_will_do = { factor = 0 } relative_position_id = GON_ithilien_crisis x = 1 @@ -2798,7 +2798,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_ensure_popular_support - icon = GFX_goal_gon_ensure_popular_support + icon = GFX_goal_gon_ensure_popular_support_peasant_farmer ai_will_do = { factor = 0 } prerequisite = { focus = GON_purge_the_crown_loyalists } relative_position_id = GON_purge_the_crown_loyalists @@ -2819,7 +2819,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_defame_isildurs_lineage - icon = GFX_goal_gon_defame_isildurs_lineage + icon = GFX_goal_gon_isildur_crown_defamed ai_will_do = { factor = 0 } prerequisite = { focus = GON_ensure_popular_support } relative_position_id = GON_ensure_popular_support @@ -2847,7 +2847,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_gondor_needs_no_king - icon = GFX_goal_gon_gondor_needs_no_king + icon = GFX_goal_gon_gondor_needs_no_king_crown_broken ai_will_do = { factor = 0 } prerequisite = { focus = GON_defame_isildurs_lineage } mutually_exclusive = { focus = GON_the_steward_of_gondor } @@ -2887,7 +2887,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_purge_the_aristocracy - icon = GFX_goal_gon_purge_the_aristocracy + icon = GFX_goal_gon_pitchfork_and_torch_revolt ai_will_do = { factor = 3 } prerequisite = { focus = GON_gondor_needs_no_king } relative_position_id = GON_gondor_needs_no_king @@ -2911,7 +2911,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_reconquering_arnor - icon = GFX_unite_by_force + icon = GFX_goal_arnor_unite_by_force ai_will_do = { factor = 100 } available = { the_other_gondor_does_not_exist = yes @@ -3018,7 +3018,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_spark_revolution_dol_amroth - icon = GFX_goal_gon_dam_propaganda + icon = GFX_goal_gondor_dol_amroth_propaganda ai_will_do = { factor = 3 } available = { DAM = { @@ -3098,7 +3098,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_the_peoples_fleet - icon = GFX_goal_gon_the_peoples_fleet + icon = GFX_goal_gon_the_peoples_fleet_ship ai_will_do = { factor = 3 } prerequisite = { focus = GON_prepare_an_invasion_force } #prerequisite = { focus = GON_dockyard_effort } @@ -3168,7 +3168,7 @@ continuous_focus_position = { x = 50 y = 1700 } focus = { id = GON_liberate_the_capital_from_the_usurpers - icon = GFX_goal_gon_liberate_the_capital_from_the_usurpers + icon = GFX_goal_gon_gondor_flag_with_denethor_portrait ai_will_do = { factor = 3 } prerequisite = { focus = GON_evacuate_the_treasury } relative_position_id = GON_gondor_needs_no_king diff --git a/common/national_focus/harad.txt b/common/national_focus/harad.txt index 912df2a9b..58928c6c7 100644 --- a/common/national_focus/harad.txt +++ b/common/national_focus/harad.txt @@ -121,7 +121,7 @@ focus = { #Focus for Civilian Construction Effort focus = { id = civilianconstructioneffort - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 4 } x = 2 y = 1 @@ -312,7 +312,7 @@ focus = { focus = { id = HAR_build_industry - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { base = 20 } @@ -676,7 +676,7 @@ focus = { focus = { id = join_the_dark_pact - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag x = 4 y = 1 relative_position_id = power_to_the_mouth_of_sauron @@ -769,7 +769,7 @@ focus = { focus = { id = honor_morgoth_hai - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth x = 3 y = 1 relative_position_id = go_solo @@ -845,7 +845,7 @@ focus = { focus = { id = finish_gondor - icon = GFX_wargoal_gondor + icon = GFX_goal_mor_wargoal_gondor prerequisite = { focus = demand_south_ithilien } x = 0 y = 1 @@ -895,7 +895,7 @@ focus = { focus = { id = HAR_demand_submission_east - icon = GFX_wargoal_rhun + icon = GFX_goal_mor_wargoal_rhun relative_position_id = HAR_look_to_the_east prerequisite = { focus = HAR_look_to_the_east } x = 0 @@ -967,7 +967,7 @@ focus = { focus = { id = mordor_has_become_weak - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor x = 0 y = 1 relative_position_id = HAR_ready_the_army diff --git a/common/national_focus/isengard.txt b/common/national_focus/isengard.txt index 8a2f9a8a5..a740ef8c4 100644 --- a/common/national_focus/isengard.txt +++ b/common/national_focus/isengard.txt @@ -32,7 +32,7 @@ default = no #Focus for Ways of the Light focus = { id = waysofthelight - icon = GFX_goal_ways_of_the_light + icon = GFX_goal_ise_palantir_covered_up ai_will_do = { factor = 20 } x =3 y =1 @@ -46,7 +46,7 @@ default = no #Focus for Ways of the Dark focus = { id = waysofthedark - icon = GFX_goal_sauron_is_looking + icon = GFX_goal_saruman_with_palantir ai_will_do = { factor = 40 } x =5 y =1 @@ -321,7 +321,7 @@ default = no #Focus for Rebrand Isengard focus = { id = rebrandisengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 100 } available = { belligerent > 0.35 @@ -726,7 +726,7 @@ default = no #Focus for Protect the Fangorn Forest focus = { id = protectthefangornforest - icon = GFX_goal_one_with_the_forest + icon = GFX_goal_entwood_forest_nature ai_will_do = { factor = 3 } x =1 y =2 @@ -866,7 +866,7 @@ default = no #Focus for Rally the Tribes of East Dunland focus = { id = rallythetribesofeastdunland - icon = GFX_goal_rally_the_tribes + icon = GFX_goal_saruman_enedwaith_tribes ai_will_do = { factor = 30 } available = { controls_state = 77 @@ -890,7 +890,7 @@ default = no #Focus for Quarrel with Rohan focus = { id = quarrelwithrohan - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 15 } x =12 y =4 @@ -908,7 +908,7 @@ default = no #Focus for Pillage the towns of Rohan focus = { id = pillagethetownsofrohan - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 10 } bypass = { has_war_with = ROH } x =12 @@ -927,7 +927,7 @@ default = no #Focus for Take the Fords of Isen focus = { id = takethefordsofisen - icon = GFX_goal_edoras + icon = GFX_goal_roh_edoras ai_will_do = { factor = 35 } bypass = { has_war_with = ROH } x =12 @@ -976,7 +976,7 @@ default = no #Focus for War with Gondor focus = { id = isr_warwithgondor - icon = GFX_wargoal_gondor + icon = GFX_goal_mor_wargoal_gondor available = { NOT = { is_in_faction_with = GON } } ai_will_do = { factor = 0 @@ -1079,7 +1079,7 @@ default = no #Focus for Helms Deep Has but one Weakness focus = { id = helmsdeephasbutoneweakness - icon = GFX_goal_helms_deep_weakness + icon = GFX_goal_roh_helms_deep_weakness ai_will_do = { factor = 20 } available = { has_government = belligerent @@ -1115,7 +1115,7 @@ default = no #Focus for Unite with Sauron focus = { id = unitewithsauron - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag ai_will_do = { factor = 6 } available = { has_government = belligerent NOT = { ISE = { has_completed_focus = ourownway } } } bypass = { any_country = { original_tag = MOR has_government = belligerent is_faction_leader = yes is_in_faction_with = ROOT } } @@ -1213,7 +1213,7 @@ default = no #Focus for Our Own Way focus = { id = ourownway - icon = GFX_goal_sauron_is_looking + icon = GFX_goal_saruman_with_palantir ai_will_do = { factor = 15 } available = { has_government = belligerent has_country_leader = { ruling_only = yes name = "Saruman" } if = { limit = { ISE = { has_completed_focus = unitewithsauron } } has_completed_focus = betraysauron } } x =5 diff --git a/common/national_focus/lothlorien.txt b/common/national_focus/lothlorien.txt index d08518289..6c74bdfaf 100644 --- a/common/national_focus/lothlorien.txt +++ b/common/national_focus/lothlorien.txt @@ -19,7 +19,7 @@ focus_tree = { focus = { id = lth_acknowledgethemordorthreat - icon = GFX_goal_lth_acknowledgethemordorthreat + icon = GFX_goal_lth_sauron_eye_contained_war #relative_position_id = lth_thefateoflothlorien @@ -51,7 +51,7 @@ focus_tree = { focus = { id = lth_thegreatschism - icon = GFX_goal_lth_thegreatschism + icon = GFX_goal_lth_schism_separated relative_position_id = lth_acknowledgethemordorthreat x =0 @@ -93,7 +93,7 @@ focus_tree = { focus = { id = lth_preemtptivedepartures - icon = GFX_goal_lth_preemtptivedepartures + icon = GFX_goal_lth_depart_to_valinor_preemptive relative_position_id = lth_thegreatschism x =0 @@ -119,7 +119,7 @@ focus_tree = { focus = { id = lth_appointedrepresentatives - icon = GFX_goal_lth_appointedrepresentatives + icon = GFX_goal_lth_treaty_executive_power relative_position_id = lth_thegreatschism x =-1 @@ -176,7 +176,7 @@ focus_tree = { focus = { id = lth_electedrepresentatives - icon = GFX_goal_lth_electedrepresentatives + icon = GFX_goal_lth_election_ballot relative_position_id = lth_thegreatschism x =1 @@ -207,7 +207,7 @@ focus_tree = { focus = { id = lth_publiccelebrations - icon = GFX_goal_lth_publiccelebrations + icon = GFX_goal_lth_elven_party_celebrations relative_position_id = lth_thegreatschism x =0 @@ -255,7 +255,7 @@ focus_tree = { focus = { id = lth_consulttheelves - icon = GFX_goal_lth_consulttheelves + icon = GFX_goal_lth_elven_lords_consult relative_position_id = lth_thegreatschism x =0 @@ -291,7 +291,7 @@ focus_tree = { focus = { id = lth_ringbearersedicts - icon = GFX_goal_lth_galadrielsvision + icon = GFX_goal_lth_galadriel_edicts relative_position_id = lth_thegreatschism x =-1 @@ -346,7 +346,7 @@ focus_tree = { focus = { id = lth_alordsprerogative - icon = GFX_goal_lth_celeborncounsel + icon = GFX_goal_lth_celeborn_edicts relative_position_id = lth_thegreatschism x =1 @@ -401,7 +401,7 @@ focus_tree = { focus = { id = lth_immortalendurance - icon = GFX_goal_lth_immortalendurance + icon = GFX_goal_lth_galadriel_hourglass_immortality relative_position_id = lth_acknowledgethemordorthreat x =-18 @@ -435,7 +435,7 @@ focus_tree = { focus = { id = lth_totalisoltation - icon = GFX_goal_lth_totalisoltation + icon = GFX_goal_lth_total_isolation_tower relative_position_id = lth_immortalendurance x =-2 @@ -485,7 +485,7 @@ focus_tree = { focus = { id = lth_sealtheborders - icon = GFX_goal_lth_sealtheborders + icon = GFX_goal_lth_locked_up_borders_sealed relative_position_id = lth_totalisoltation x =-1 @@ -507,7 +507,7 @@ focus_tree = { focus = { id = lth_thehiddenrealm - icon = GFX_goal_lth_thehiddenrealm + icon = GFX_goal_lth_hidden_elven_realm relative_position_id = lth_totalisoltation x =-1 @@ -529,7 +529,7 @@ focus_tree = { focus = { id = lth_guardiansofthesilverwood - icon = GFX_goal_lth_guardiansofthesilverwood + icon = GFX_goal_lth_defense_guardians relative_position_id = lth_totalisoltation x =-2 @@ -550,7 +550,7 @@ focus_tree = { focus = { id = lth_endurethedarkness - icon = GFX_goal_lth_endurethedarkness + icon = GFX_goal_lth_endure_the_darkness relative_position_id = lth_totalisoltation x =0 @@ -569,7 +569,7 @@ focus_tree = { focus = { id = lth_thelaststand - icon = GFX_goal_lth_thelaststand + icon = GFX_goal_lth_desperate_last_stand relative_position_id = lth_totalisoltation x =0 @@ -607,7 +607,7 @@ focus_tree = { focus = { id = lth_limitedintervention - icon = GFX_goal_lth_limitedintervention + icon = GFX_goal_lth_limited_intervention relative_position_id = lth_immortalendurance x =2 @@ -626,7 +626,7 @@ focus_tree = { focus = { id = lth_aegisoflight - icon = GFX_goal_lth_aegisoflight + icon = GFX_goal_lth_shield_aegis_of_light relative_position_id = lth_limitedintervention x =0 @@ -653,7 +653,7 @@ focus_tree = { focus = { id = lth_deterrence - icon = GFX_goal_lth_deterrence + icon = GFX_goal_lth_deterrence_castle relative_position_id = lth_limitedintervention x =0 @@ -677,7 +677,7 @@ focus_tree = { focus = { id = lth_ensurefoodsecurity - icon = GFX_goal_lth_ensurefoodsecurity + icon = GFX_goal_lth_safeguard_food_bread relative_position_id = lth_limitedintervention x =1 @@ -707,7 +707,7 @@ focus_tree = { focus = { id = lth_bideourtime - icon = GFX_goal_lth_bideourtime + icon = GFX_goal_lth_play_for_time_hourglass relative_position_id = lth_limitedintervention x =1 @@ -726,7 +726,7 @@ focus_tree = { focus = { id = lth_maintainstabilityinthewest - icon = GFX_goal_lth_maintainalliances + icon = GFX_goal_lth_cooperation_and_stability relative_position_id = lth_limitedintervention x =2 @@ -749,7 +749,7 @@ focus_tree = { focus = { id = lth_sendaidtohelmsdeep - icon = GFX_goal_lth_sendaidtohelmsdeep + icon = GFX_goal_lth_lothlorien_rohan_deal relative_position_id = lth_maintainstabilityinthewest x =-1 @@ -790,7 +790,7 @@ focus_tree = { focus = { id = lth_sendaidtominastirith - icon = GFX_goal_lth_sendaidtominastirith + icon = GFX_goal_lth_lothlorien_gondor_deal_2 relative_position_id = lth_maintainstabilityinthewest x =1 @@ -835,7 +835,7 @@ focus_tree = { focus = { id = lth_supportmordorsenemies - icon = GFX_goal_lth_supportmordorsenemies + icon = GFX_goal_lth_contain_mordor relative_position_id = lth_maintainstabilityinthewest x =0 @@ -865,7 +865,7 @@ focus_tree = { focus = { id = lth_galadrielspowers - icon = GFX_goal_lth_galadrielspowers + icon = GFX_goal_lth_galadriel_powers relative_position_id = lth_immortalendurance x =0 @@ -891,7 +891,7 @@ focus_tree = { focus = { id = lth_yavannasblessings - icon = GFX_goal_lth_yavannasblessings + icon = GFX_goal_lth_yavanna relative_position_id = lth_galadrielspowers x =-1 @@ -912,7 +912,7 @@ focus_tree = { focus = { id = lth_aulescraftmanship - icon = GFX_goal_lth_aulescraftmanship + icon = GFX_goal_lth_aule_the_blacksmith relative_position_id = lth_galadrielspowers x =1 @@ -933,7 +933,7 @@ focus_tree = { focus = { id = lth_legacyofthenoldor - icon = GFX_goal_lth_legacyofthenoldor + icon = GFX_goal_lth_noldor_emblem x =25 @@ -965,7 +965,7 @@ focus_tree = { focus = { id = lth_princessofthenoldor - icon = GFX_goal_lth_princessofthenoldor + icon = GFX_goal_lth_noldor_galadriel relative_position_id = lth_legacyofthenoldor x =2 @@ -988,7 +988,7 @@ focus_tree = { focus = { id = lth_deepknowledge - icon = GFX_goal_lth_deepknowledge + icon = GFX_goal_lth_noldor_golden_book_open_knowledge relative_position_id = lth_legacyofthenoldor x =-1 @@ -1024,7 +1024,7 @@ focus_tree = { focus = { id = lth_theoathoffeanor - icon = GFX_goal_lth_theoathoffeanor + icon = GFX_goal_lth_oath_of_feanor relative_position_id = lth_legacyofthenoldor x =0 @@ -1063,7 +1063,7 @@ focus_tree = { focus = { id = lth_greatestofwarriors - icon = GFX_goal_lth_greatestofwarriors + icon = GFX_goal_lth_noldor_elven_warrior relative_position_id = lth_legacyofthenoldor x =1 @@ -1101,7 +1101,7 @@ focus_tree = { focus = { id = lth_metalworkandjewellery - icon = GFX_goal_lth_metalworkandjewellery + icon = GFX_goal_lth_noldor_metalwork relative_position_id = lth_legacyofthenoldor x =1 @@ -1140,7 +1140,7 @@ focus_tree = { focus = { id = lth_skysoilandwater - icon = GFX_goal_lth_skysoilandwater + icon = GFX_goal_lth_noldor_silmarils relative_position_id = lth_legacyofthenoldor x =0 @@ -1172,7 +1172,7 @@ focus_tree = { focus = { id = lth_commemorategondolin - icon = GFX_goal_lth_commemorategondolin + icon = GFX_goal_lth_noldor_commemorate_gondolin relative_position_id = lth_legacyofthenoldor x =-1 @@ -1202,7 +1202,7 @@ focus_tree = { focus = { id = lth_thecallofvalinor - icon = GFX_goal_lth_thecallofvalinor + icon = GFX_goal_lth_leave_to_valinor relative_position_id = lth_immortalendurance x =1 @@ -1226,14 +1226,14 @@ focus_tree = { # start a mission that periodically looses manpower in core states country_event = { id = lothlorien.45 } # After a year, Gal and Celeborn leave - country_event = { id = lothlorien.19 days = 356 } + country_event = { id = lothlorien.19 days = 370 } } } } focus = { id = lth_thelasteldar - icon = GFX_goal_lth_thelasteldar + icon = GFX_goal_lth_last_eldar relative_position_id = lth_thecallofvalinor x =0 @@ -1261,7 +1261,7 @@ focus_tree = { focus = { id = lth_thetwilightgarden - icon = GFX_goal_lth_thetwilightgarden + icon = GFX_goal_lth_twilight_garden relative_position_id = lth_thecallofvalinor x =0 @@ -1289,7 +1289,7 @@ focus_tree = { focus = { id = lth_offerpassagetothehalflings - icon = GFX_goal_lth_offerpassagetothehalflings + icon = GFX_goal_lth_frodo_valinor relative_position_id = lth_thecallofvalinor x =2 @@ -1313,7 +1313,7 @@ focus_tree = { focus = { id = lth_wanderersofnandor - icon = GFX_goal_lth_wanderersofnandor + icon = GFX_goal_lth_nandor_emblem x =20 @@ -1344,7 +1344,7 @@ focus_tree = { focus = { id = lth_thesongofnimrodel - icon = GFX_goal_lth_thesongofnimrodel + icon = GFX_goal_lth_nandor_nimrodel_song relative_position_id = lth_wanderersofnandor x =0 @@ -1383,7 +1383,7 @@ focus_tree = { focus = { id = lth_guardiansofthewild - icon = GFX_goal_lth_guardiansofthewild + icon = GFX_goal_lth_nandor_mallorn_trees relative_position_id = lth_wanderersofnandor x =1 @@ -1429,7 +1429,7 @@ focus_tree = { focus = { id = lth_discovernewrealms - icon = GFX_goal_lth_discovernewrealms + icon = GFX_goal_lth_nandor_map relative_position_id = lth_wanderersofnandor x =1 @@ -1476,7 +1476,7 @@ focus_tree = { focus = { id = lth_empowerhaldir - icon = GFX_goal_lth_empowerhaldir + icon = GFX_goal_lth_nandor_haldir relative_position_id = lth_wanderersofnandor x =-1 @@ -1519,7 +1519,7 @@ focus_tree = { focus = { id = lth_thenandorheritage - icon = GFX_goal_lth_thenandorheritage + icon = GFX_goal_lth_nandor_hands relative_position_id = lth_wanderersofnandor x =-1 @@ -1552,7 +1552,7 @@ focus_tree = { focus = { id = lth_territorialadministration - icon = GFX_goal_lth_provincialcouncils + icon = GFX_goal_lth_provincial_councils x =1 @@ -1575,7 +1575,7 @@ focus_tree = { focus = { id = lth_territorialdefense - icon = GFX_goal_lth_territorialdefense + icon = GFX_goal_lth_territorial_defense relative_position_id = lth_territorialadministration x =0 @@ -1601,7 +1601,7 @@ focus_tree = { focus = { id = lth_sacredtreesofthenhail - icon = GFX_goal_lth_sacredtreesofthenhail + icon = GFX_goal_lth_sacred_mallorn_trees relative_position_id = lth_territorialadministration x =4 @@ -1645,7 +1645,7 @@ focus_tree = { focus = { id = lth_conscecratecarasgaladhon - icon = GFX_goal_lth_conscecratecarasgaladhon + icon = GFX_goal_lth_caras_galadhon relative_position_id = lth_sacredtreesofthenhail x =-1 @@ -1687,7 +1687,7 @@ focus_tree = { focus = { id = lth_conscecratecerinamroth - icon = GFX_goal_lth_conscecratecerinamroth + icon = GFX_goal_lth_cerin_amroth relative_position_id = lth_sacredtreesofthenhail x =1 @@ -1729,7 +1729,7 @@ focus_tree = { focus = { id = lth_mallorntreearchiotecture - icon = GFX_goal_lth_mallorntreearchiotecture + icon = GFX_goal_lth_mallorn_tree_planning relative_position_id = lth_sacredtreesofthenhail x =0 @@ -1777,7 +1777,7 @@ focus_tree = { focus = { id = lth_thetwinheartsoflothlorien - icon = GFX_goal_lth_thetwinheartsoflothlorien + icon = GFX_goal_lth_twin_hearts relative_position_id = lth_sacredtreesofthenhail x =0 @@ -1839,7 +1839,7 @@ focus_tree = { focus = { id = lth_guardiansoftheriveranduin - icon = GFX_goal_lth_guardiansoftheriveranduin + icon = GFX_goal_lth_river_anduin relative_position_id = lth_territorialdefense x =2 @@ -1879,7 +1879,7 @@ focus_tree = { focus = { id = lth_patrolsandriverwardens - icon = GFX_goal_lth_patrolsandriverwardens + icon = GFX_goal_lth_river_ships relative_position_id = lth_guardiansoftheriveranduin x =0 @@ -1903,7 +1903,7 @@ focus_tree = { focus = { id = lth_strengthenfortifications - icon = GFX_goal_lth_strengthenfortifications + icon = GFX_goal_lth_fortifications_castle relative_position_id = lth_guardiansoftheriveranduin x =1 @@ -1939,7 +1939,7 @@ focus_tree = { focus = { id = lth_commercialnavigation - icon = GFX_goal_lth_commercialnavigation + icon = GFX_goal_lth_river_ships_navigation relative_position_id = lth_guardiansoftheriveranduin x =-1 @@ -1968,7 +1968,7 @@ focus_tree = { focus = { id = lth_preservationofknowledge - icon = GFX_goal_lth_preservationofknowledge + icon = GFX_goal_lth_scribe_knowledge relative_position_id = lth_immortalendurance x =0 @@ -1988,7 +1988,7 @@ focus_tree = { focus = { id = lth_thelibraryofcarasgaladhon - icon = GFX_goal_lth_thelibraryofcarasgaladhon + icon = GFX_goal_lth_library_caras_galadhon relative_position_id = lth_immortalendurance x =0 @@ -2006,7 +2006,7 @@ focus_tree = { focus = { id = lth_impregnablefortresses - icon = GFX_goal_lth_strengthenfortifications + icon = GFX_goal_lth_fortifications_castle relative_position_id = lth_immortalendurance x =-1 @@ -2045,7 +2045,7 @@ focus_tree = { focus = { id = lth_resourcestorage - icon = GFX_goal_lth_resourcestorage + icon = GFX_goal_lth_food_resource_storage relative_position_id = lth_immortalendurance x =-2 @@ -2080,7 +2080,7 @@ focus_tree = { focus = { id = lth_defensiveperimeter - icon = GFX_goal_lth_defensiveperimeter + icon = GFX_goal_lth_defensive_perimeter_castle relative_position_id = lth_immortalendurance x =-1 @@ -2148,7 +2148,7 @@ focus_tree = { focus = { id = lth_elvenknowledge - icon = GFX_goal_lth_echoesoftheeldendays + icon = GFX_goal_lth_elden_days_tree x =12 @@ -2166,6 +2166,7 @@ focus_tree = { search_filters = { FOCUS_FILTER_RESEARCH } completion_reward = { add_tech_bonus = { + name = special_bonus bonus = 0.5 uses = 1 category = lotr_elven_secrets @@ -2175,7 +2176,7 @@ focus_tree = { focus = { id = lth_elvenweaponry - icon = GFX_goal_lth_elvenweaponry + icon = GFX_goal_lth_elven_sword_and_bow relative_position_id = lth_elvenknowledge x =3 @@ -2209,7 +2210,7 @@ focus_tree = { focus = { id = lth_elvenforges - icon = GFX_goal_lth_elvenforges + icon = GFX_goal_lth_weapon_sword_forging relative_position_id = lth_elvenweaponry x =-2 @@ -2238,7 +2239,7 @@ focus_tree = { focus = { id = lth_bladesoftheeldar - icon = GFX_goal_lth_bladesoftheeldar + icon = GFX_goal_lth_glowing_elven_sword_blade relative_position_id = lth_elvenweaponry x =-2 @@ -2262,7 +2263,7 @@ focus_tree = { focus = { id = lth_silvanelitewarriors - icon = GFX_goal_lth_silvanelitewarriors + icon = GFX_goal_lth_elite_special_forces relative_position_id = lth_elvenweaponry x =0 @@ -2292,7 +2293,7 @@ focus_tree = { focus = { id = lth_elvencavalry - icon = GFX_goal_lth_elvencavalry + icon = GFX_goal_lth_elven_cavalry relative_position_id = lth_silvanelitewarriors x =-2 @@ -2321,7 +2322,7 @@ focus_tree = { focus = { id = lth_lothlorienarchers - icon = GFX_goal_lth_lothlorienarchers + icon = GFX_goal_lth_generic_archers relative_position_id = lth_elvenweaponry x =2 @@ -2369,7 +2370,7 @@ focus_tree = { focus = { id = lth_silverthornarrows - icon = GFX_goal_lth_silverthornarrows + icon = GFX_goal_lth_silverthorn_arrows relative_position_id = lth_elvenweaponry x =2 @@ -2394,7 +2395,7 @@ focus_tree = { focus = { id = lth_sindarpathstalkers - icon = GFX_goal_lth_sindarpathstalkers + icon = GFX_goal_lth_sindar_pathstalkers relative_position_id = lth_silvanelitewarriors x =0 @@ -2418,7 +2419,7 @@ focus_tree = { focus = { id = lth_ridersofthenaith - icon = GFX_goal_lth_ridersofthenaith + icon = GFX_goal_lth_elven_riders_naith relative_position_id = lth_silvanelitewarriors x =-2 @@ -2438,7 +2439,7 @@ focus_tree = { focus = { id = lth_marchwardensoflothlorien - icon = GFX_goal_lth_marchwardensoflothlorien + icon = GFX_goal_lth_nandor_elven_warrior relative_position_id = lth_silvanelitewarriors x =4 @@ -2471,7 +2472,7 @@ focus_tree = { focus = { id = lth_sentinelsofcerinamroth - icon = GFX_goal_lth_sentinelsofcerinamroth + icon = GFX_goal_lth_elven_warrior_spear relative_position_id = lth_silvanelitewarriors x =2 @@ -2496,7 +2497,7 @@ focus_tree = { focus = { id = lth_celebornsexile - icon = GFX_goal_lth_celebornsexile + icon = GFX_goal_lth_schism_celeborn_exiled x =21 y =9 @@ -2517,7 +2518,7 @@ focus_tree = { set_temp_variable = { days_left = days_mission_timeout@great_schism_civil_war } check_variable = { var = days_left - val = 180 + val = 160 compare = less_than tooltip = lth_less_than_X_days_until_cw_tt } @@ -2546,7 +2547,7 @@ focus_tree = { focus = { id = lth_elvensupremacy - icon = GFX_goal_lth_elvensupremacy + icon = GFX_goal_lth_elven_supremacy relative_position_id = lth_celebornsexile x =1 @@ -2565,7 +2566,7 @@ focus_tree = { focus = { id = lth_thereawakening - icon = GFX_goal_lth_thereawakening + icon = GFX_goal_lth_noldor_reawakening relative_position_id = lth_elvensupremacy x =3 @@ -2593,7 +2594,7 @@ focus_tree = { focus = { id = lth_queenofthedawn - icon = GFX_goal_lth_queenofthedawn + icon = GFX_goal_lth_galadriel_queen relative_position_id = lth_celebornsexile x =-1 @@ -2620,7 +2621,7 @@ focus_tree = { focus = { id = lth_thequeensguard - icon = GFX_goal_lth_thequeensguard + icon = GFX_goal_lth_noldor_queens_guard relative_position_id = lth_celebornsexile x =-1 @@ -2649,7 +2650,7 @@ focus_tree = { focus = { id = lth_fairasthesunterribleasthestorm - icon = GFX_goal_lth_fairasthesunterribleasthestorm + icon = GFX_goal_lth_evil_galadriel relative_position_id = lth_celebornsexile x =-1 @@ -2678,7 +2679,7 @@ focus_tree = { focus = { id = lth_purityandbrilliance - icon = GFX_goal_lth_purityandbrilliance + icon = GFX_goal_lth_noldor_purity relative_position_id = lth_celebornsexile x =1 @@ -2699,7 +2700,7 @@ focus_tree = { focus = { id = lth_thenoldorelite - icon = GFX_goal_lth_thenoldorelite + icon = GFX_goal_lth_elven_aristocrats relative_position_id = lth_elvensupremacy x =3 @@ -2723,7 +2724,7 @@ focus_tree = { focus = { id = lth_mendtheschism - icon = GFX_goal_lth_mendtheschism + icon = GFX_goal_lth_schism_mended x =30 y =9 @@ -2746,7 +2747,7 @@ focus_tree = { set_temp_variable = { days_left = days_mission_timeout@great_schism_civil_war } check_variable = { var = days_left - val = 180 + val = 160 compare = less_than tooltip = lth_less_than_X_days_until_cw_tt } @@ -2768,7 +2769,7 @@ focus_tree = { focus = { id = lth_harmonicascendancy - icon = GFX_goal_lth_harmonicascendancy + icon = GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy relative_position_id = lth_mendtheschism x =0 @@ -2798,7 +2799,7 @@ focus_tree = { focus = { id = lth_ancestralechoesintandem - icon = GFX_goal_lth_ancestralechoesintandem + icon = GFX_goal_lth_sindar_noldor_deal relative_position_id = lth_mendtheschism x =0 @@ -2817,7 +2818,7 @@ focus_tree = { focus = { id = lth_celeborngaladrielaccord - icon = GFX_goal_lth_celeborngaladrielaccord + icon = GFX_goal_lth_galadriel_celeborn_accord relative_position_id = lth_mendtheschism x =0 @@ -2842,7 +2843,7 @@ focus_tree = { focus = { id = lth_harmonyofthesindar - icon = GFX_goal_lth_harmonyofthesindar + icon = GFX_goal_lth_sindar_emblem x =34 @@ -2874,7 +2875,7 @@ focus_tree = { focus = { id = lth_wisdomofeluthingol - icon = GFX_goal_lth_wisdomofeluthingol + icon = GFX_goal_lth_sindar_thingol relative_position_id = lth_harmonyofthesindar x =0 @@ -2912,7 +2913,7 @@ focus_tree = { focus = { id = lth_thegirdleofmelian - icon = GFX_goal_lth_thegirdleofmelian + icon = GFX_goal_lth_sindar_melian relative_position_id = lth_harmonyofthesindar x =2 @@ -2950,7 +2951,7 @@ focus_tree = { focus = { id = lth_refugeofdoriath - icon = GFX_goal_lth_refugeofdoriath + icon = GFX_goal_lth_sindar_crown_of_doriath relative_position_id = lth_harmonyofthesindar x =1 @@ -2984,7 +2985,7 @@ focus_tree = { focus = { id = lth_affiliatewithlindon - icon = GFX_goal_lth_affiliatewithlindon + icon = GFX_goal_lth_sindar_lothlorien_lindon_treaty relative_position_id = lth_harmonyofthesindar x =1 @@ -3017,7 +3018,7 @@ focus_tree = { focus = { id = lth_theprinceofdoriath - icon = GFX_goal_lth_reassertcelebornslodrship + icon = GFX_goal_lth_sindar_celeborn relative_position_id = lth_harmonyofthesindar x =-1 @@ -3047,7 +3048,7 @@ focus_tree = { focus = { id = lth_nurturingthehalfelven - icon = GFX_goal_lth_nurturingthehalfelven + icon = GFX_goal_lth_halfelves_emblem x =39 @@ -3084,7 +3085,7 @@ focus_tree = { focus = { id = lth_celebrateperendhillegends - icon = GFX_goal_lth_celebrateperendhillegends + icon = GFX_goal_lth_halfelves_peredhil_legends_trumpets relative_position_id = lth_nurturingthehalfelven x =0 @@ -3122,7 +3123,7 @@ focus_tree = { focus = { id = lth_thechildrenofluthien - icon = GFX_goal_lth_thechildrenofluthien + icon = GFX_goal_lth_halfelves_beren_luthien relative_position_id = lth_celebrateperendhillegends x =-1 @@ -3166,7 +3167,7 @@ focus_tree = { focus = { id = lth_diorthefair - icon = GFX_goal_lth_diorthefair + icon = GFX_goal_lth_halfelves_dior relative_position_id = lth_thechildrenofluthien x =0 @@ -3203,7 +3204,7 @@ focus_tree = { focus = { id = lth_earendilthemariner - icon = GFX_goal_lth_earendilthemariner + icon = GFX_goal_lth_halfelves_earendil relative_position_id = lth_nurturingthehalfelven x =1 @@ -3244,7 +3245,7 @@ focus_tree = { focus = { id = lth_elrosofnumenor - icon = GFX_goal_lth_elrosofnumenor + icon = GFX_goal_lth_halfelves_elros relative_position_id = lth_earendilthemariner x =-1 @@ -3279,7 +3280,7 @@ focus_tree = { focus = { id = lth_elrondtheperedhil - icon = GFX_goal_lth_elrondtheperedhil + icon = GFX_goal_lth_halfelves_elrond relative_position_id = lth_earendilthemariner x =1 @@ -3316,7 +3317,7 @@ focus_tree = { focus = { id = lth_echoesofrivendell - icon = GFX_goal_lth_echoesofrivendell + icon = GFX_goal_lth_halfelves_cooperation relative_position_id = lth_elrondtheperedhil x =3 @@ -3347,7 +3348,7 @@ focus_tree = { focus = { id = lth_beaconofhope - icon = GFX_goal_lth_beaconofhope + icon = GFX_goal_lth_elves_gala_cele_beacon_of_hope relative_position_id = lth_acknowledgethemordorthreat x =16 @@ -3373,7 +3374,7 @@ focus_tree = { focus = { id = lth_unitethefactions - icon = GFX_goal_lth_unitethefactions + icon = GFX_goal_lth_elven_factions_united relative_position_id = lth_beaconofhope x =-2 @@ -3394,7 +3395,7 @@ focus_tree = { focus = { id = lth_alignthenobility - icon = GFX_goal_lth_alignthenobility + icon = GFX_goal_lth_elves_shaking_hands relative_position_id = lth_beaconofhope x =-1 @@ -3415,7 +3416,7 @@ focus_tree = { focus = { id = lth_alignthearmy - icon = GFX_goal_lth_alignthenobility + icon = GFX_goal_lth_elves_shaking_hands relative_position_id = lth_beaconofhope x =-3 @@ -3433,7 +3434,7 @@ focus_tree = { focus = { id = lth_breakthechainsofisolation - icon = GFX_goal_lth_breakthechainsofisolation + icon = GFX_goal_lth_dove_breaking_free relative_position_id = lth_beaconofhope x =0 @@ -3460,7 +3461,7 @@ focus_tree = { focus = { id = lth_forgealliances - icon = GFX_goal_lth_forgealliances + icon = GFX_goal_lth_handshake_cooperation relative_position_id = lth_beaconofhope x =0 @@ -3480,7 +3481,7 @@ focus_tree = { focus = { id = lth_bondsofnature - icon = GFX_goal_lth_bondsofnature + icon = GFX_goal_lth_hand_with_flower_nature relative_position_id = lth_forgealliances x =-4 @@ -3536,7 +3537,7 @@ focus_tree = { focus = { id = lth_watersofhealing - icon = GFX_goal_lth_watersofhealing + icon = GFX_goal_lth_waters_of_healing relative_position_id = lth_bondsofnature x =-2 @@ -3558,7 +3559,7 @@ focus_tree = { focus = { id = lth_theentsoffangorn - icon = GFX_goal_lth_theonodrimoffangorn + icon = GFX_goal_lth_nature_treebeard relative_position_id = lth_bondsofnature x =2 @@ -3598,7 +3599,7 @@ focus_tree = { focus = { id = lth_thegreatbeasts - icon = GFX_goal_lth_thegreatbeasts + icon = GFX_goal_lth_nature_great_beasts relative_position_id = lth_bondsofnature x =0 @@ -3616,7 +3617,7 @@ focus_tree = { focus = { id = lth_eaglesofmanwe - icon = GFX_goal_lth_eaglesofmanwe + icon = GFX_goal_lth_nature_eagles relative_position_id = lth_bondsofnature x =-1 @@ -3644,7 +3645,7 @@ focus_tree = { focus = { id = lth_fellbeastsofmordor - icon = GFX_goal_lth_fellbeastsofmordor + icon = GFX_goal_lth_nature_fellbeast relative_position_id = lth_bondsofnature x =1 @@ -3672,7 +3673,7 @@ focus_tree = { focus = { id = lth_spidersofungoliant - icon = GFX_goal_lth_spidersofungoliant + icon = GFX_goal_lth_nature_spiders_of_ungoliant relative_position_id = lth_bondsofnature x =0 @@ -3732,7 +3733,7 @@ focus_tree = { focus = { id = lth_theforestbetween - icon = GFX_goal_lth_theforestbetween + icon = GFX_goal_lth_nature_forest_between relative_position_id = lth_bondsofnature x =2 @@ -3765,7 +3766,7 @@ focus_tree = { focus = { id = lth_supportspiderindependence - icon = GFX_goal_lth_wrathoftheforests + icon = GFX_goal_lth_nature_spiders relative_position_id = lth_spidersofungoliant x =-2 @@ -3788,7 +3789,7 @@ focus_tree = { focus = { id = lth_tamingthewild - icon = GFX_goal_lth_tamingthewild + icon = GFX_goal_lth_taming_the_wild relative_position_id = lth_bondsofnature x =-3 @@ -3814,7 +3815,7 @@ focus_tree = { focus = { id = lth_unlikelyallies - icon = GFX_goal_lth_unlikelyallies + icon = GFX_goal_lth_elven_dwarf_relations relative_position_id = lth_forgealliances x =-2 @@ -3857,7 +3858,7 @@ focus_tree = { focus = { id = lth_sendadelegationtoerebor - icon = GFX_goal_lth_sendadelegationtoerebor + icon = GFX_goal_lth_lothlorien_erebor_deal relative_position_id = lth_unlikelyallies x =-1 @@ -3885,7 +3886,7 @@ focus_tree = { focus = { id = lth_senddelegationtomoria - icon = GFX_goal_lth_senddelegationtomoria + icon = GFX_goal_lth_lothlorien_moria_deal relative_position_id = lth_unlikelyallies x =1 @@ -3914,7 +3915,7 @@ focus_tree = { focus = { id = lth_pressurethranduil - icon = GFX_goal_lth_pressurethranduil + icon = GFX_goal_lth_thranduil_diplomatic_pressure relative_position_id = lth_unlikelyallies x =0 @@ -3947,7 +3948,7 @@ focus_tree = { focus = { id = lth_unitewitherebor - icon = GFX_goal_erebor + icon = GFX_goal_mor_erebor_flag relative_position_id = lth_unlikelyallies x =0 @@ -3976,7 +3977,7 @@ focus_tree = { focus = { id = lth_allywithmen - icon = GFX_goal_lth_allywithmen + icon = GFX_goal_lth_elves_men_handshake relative_position_id = lth_forgealliances x =2 @@ -4020,7 +4021,7 @@ focus_tree = { focus = { id = lth_tieswiththerohirrim - icon = GFX_goal_lth_tieswiththerohirrim + icon = GFX_goal_lth_lothlorien_rohan_ties relative_position_id = lth_allywithmen x =-1 @@ -4048,7 +4049,7 @@ focus_tree = { focus = { id = lth_commemoratethecelebrantbattle - icon = GFX_goal_lth_commemoratethecelebrantbattle + icon = GFX_goal_lth_celebrate_trumpets_message relative_position_id = lth_allywithmen x =-1 @@ -4085,7 +4086,7 @@ focus_tree = { focus = { id = lth_invokethetaleofgaladrielandeorl - icon = GFX_goal_lth_invokethetaleofgaladrielandeorl + icon = GFX_goal_lth_galadriel_and_eorl_rohan relative_position_id = lth_allywithmen x =-1 @@ -4118,7 +4119,7 @@ focus_tree = { focus = { id = lth_sendadelegationtogondor - icon = GFX_goal_lth_sendadelegationtogondor + icon = GFX_goal_lth_lothlorien_gondor_deal relative_position_id = lth_allywithmen x =1 @@ -4150,7 +4151,7 @@ focus_tree = { focus = { id = lth_supportthegreycompany - icon = GFX_goal_lth_supportthegreycompany + icon = GFX_goal_lth_grey_company_warriors relative_position_id = lth_allywithmen x =1 @@ -4219,7 +4220,7 @@ focus_tree = { focus = { id = lth_ourowninitiative - icon = GFX_goal_lth_ourowninitiative + icon = GFX_goal_lth_lothlorien_flag relative_position_id = lth_forgealliances x =5 @@ -4249,7 +4250,7 @@ focus_tree = { focus = { id = lth_aidtotheweary - icon = GFX_goal_lth_aidtotheweary + icon = GFX_goal_lth_hands_asking_for_help_aid_weary relative_position_id = lth_ourowninitiative x =-1 @@ -4294,7 +4295,7 @@ focus_tree = { focus = { id = lth_safehaven - icon = GFX_goal_lth_safehaven + icon = GFX_goal_lth_safe_haven_defense relative_position_id = lth_ourowninitiative x =-1 @@ -4318,7 +4319,7 @@ focus_tree = { focus = { id = lth_allianceoflight - icon = GFX_goal_lth_allianceoflight + icon = GFX_goal_lth_raised_fist_blue relative_position_id = lth_ourowninitiative x =1 @@ -4434,7 +4435,7 @@ focus_tree = { focus = { id = lth_learnfromthestrongest - icon = GFX_goal_lth_learnfromthestrongest + icon = GFX_goal_lth_shared_research_knowledge relative_position_id = lth_ourowninitiative x =1 @@ -4459,7 +4460,7 @@ focus_tree = { focus = { id = lth_galadrielsfarewell - icon = GFX_goal_lth_galadrielsfarewell + icon = GFX_goal_lth_schism_galadriels_farewell x =37 y =9 @@ -4480,7 +4481,7 @@ focus_tree = { set_temp_variable = { days_left = days_mission_timeout@great_schism_civil_war } check_variable = { var = days_left - val = 180 + val = 160 compare = less_than tooltip = lth_less_than_X_days_until_cw_tt } @@ -4507,7 +4508,7 @@ focus_tree = { focus = { id = lth_celebornsascendancy - icon = GFX_goal_lth_celebornsreforms + icon = GFX_goal_lth_celeborn_reforms relative_position_id = lth_galadrielsfarewell x =0 @@ -4533,7 +4534,7 @@ focus_tree = { focus = { id = lth_unityindivision - icon = GFX_goal_lth_unityindivision + icon = GFX_goal_lth_elven_factions_divided relative_position_id = lth_galadrielsfarewell x =0 @@ -4558,7 +4559,7 @@ focus_tree = { focus = { id = lth_theorcrightsdebate - icon = GFX_goal_lth_theorcrightsdebate + icon = GFX_goal_lth_elves_orcs_debate relative_position_id = lth_galadrielsfarewell x =0 @@ -4589,7 +4590,7 @@ focus_tree = { focus = { id = lth_theuntreadedpath - icon = GFX_goal_lth_theuntreadedpath + icon = GFX_goal_lth_untreaded_path relative_position_id = lth_galadrielsfarewell x =0 @@ -4606,7 +4607,7 @@ focus_tree = { focus = { id = lth_asharedcause - icon = GFX_goal_lth_asharedcause + icon = GFX_goal_lth_shared_cause_hands relative_position_id = lth_theuntreadedpath x =1 @@ -4630,7 +4631,7 @@ focus_tree = { focus = { id = lth_thesupremeleader - icon = GFX_goal_lth_thesupremeleader + icon = GFX_goal_lth_celeborn_supreme_leader relative_position_id = lth_theuntreadedpath x =0 @@ -4651,7 +4652,7 @@ focus_tree = { focus = { id = lth_elvenhighereducation - icon = GFX_goal_lth_culturalexchangeinitiatives + icon = GFX_goal_lth_open_books_culture relative_position_id = lth_unityindivision x =-1 @@ -4669,7 +4670,7 @@ focus_tree = { focus = { id = lth_atasteofempire - icon = GFX_goal_lth_atasteofempire + icon = GFX_goal_lth_hand_grabbing_crown relative_position_id = lth_thereawakening x =2 @@ -4692,7 +4693,7 @@ focus_tree = { focus = { id = lth_reformmilitaryleadership - icon = GFX_goal_lth_reformmilitaryleadership + icon = GFX_goal_lth_elven_army_dark relative_position_id = lth_atasteofempire x =0 @@ -4729,7 +4730,7 @@ focus_tree = { focus = { id = lth_thefateofmortals - icon = GFX_goal_lth_thefateofmortals + icon = GFX_goal_lth_fate_of_mortals_death relative_position_id = lth_atasteofempire x =-2 @@ -4765,7 +4766,7 @@ focus_tree = { focus = { id = lth_tacklethedwarves - icon = GFX_goal_lth_tacklethedwarves + icon = GFX_goal_lth_erebor_skull relative_position_id = lth_thefateofmortals x =-1 @@ -4809,7 +4810,7 @@ focus_tree = { focus = { id = lth_burrythemintheirholes - icon = GFX_goal_lth_burrythemintheirholes + icon = GFX_goal_lth_skulls_with_helmets relative_position_id = lth_thefateofmortals x =-1 @@ -4856,7 +4857,7 @@ focus_tree = { focus = { id = lth_tackletherealmsofmen - icon = GFX_goal_lth_tackletherealmsofmen + icon = GFX_goal_lth_gondor_skull relative_position_id = lth_thefateofmortals x =1 @@ -4902,7 +4903,7 @@ focus_tree = { focus = { id = lth_acceleratetheinevitable - icon = GFX_goal_lth_acceleratetheinevitable + icon = GFX_goal_lth_mortal_skeleton_pleading relative_position_id = lth_thefateofmortals x =1 @@ -4948,7 +4949,7 @@ focus_tree = { focus = { id = lth_safeguardtheelves - icon = GFX_goal_lth_safeguardtheelves + icon = GFX_goal_lth_keep_elves_safe relative_position_id = lth_atasteofempire x =2 @@ -5009,7 +5010,7 @@ focus_tree = { focus = { id = lth_turnrivendell - icon = GFX_goal_lth_turnrivendell + icon = GFX_goal_lth_target_rivendell_elrond relative_position_id = lth_safeguardtheelves x =0 @@ -5047,7 +5048,7 @@ focus_tree = { focus = { id = lth_turnmirkwood - icon = GFX_goal_lth_turnmirkwood + icon = GFX_goal_lth_target_mirkwood_thranduil relative_position_id = lth_safeguardtheelves x =-1 @@ -5085,7 +5086,7 @@ focus_tree = { focus = { id = lth_turnlindon - icon = GFX_goal_lth_turnlindon + icon = GFX_goal_lth_target_lindon_cirdan relative_position_id = lth_safeguardtheelves x =1 @@ -5123,7 +5124,7 @@ focus_tree = { focus = { id = lth_atanycost - icon = GFX_goal_lth_atanycost + icon = GFX_goal_lth_protect_at_any_cost relative_position_id = lth_safeguardtheelves x =0 @@ -5172,7 +5173,7 @@ focus_tree = { focus = { id = lth_celebornsreforms - icon = GFX_goal_lth_celebornsreforms + icon = GFX_goal_lth_celeborn_reforms relative_position_id = lth_galadrielsfarewell x =-3 @@ -5194,7 +5195,7 @@ focus_tree = { focus = { id = lth_thedissolutionoftheelvennobility - icon = GFX_goal_lth_thedissolutionoftheelvennobility + icon = GFX_goal_lth_dissolve_elven_nobility relative_position_id = lth_celebornsreforms x =0 @@ -5216,7 +5217,7 @@ focus_tree = { focus = { id = lth_thepeasantassembly - icon = GFX_goal_lth_thepeasantassembly + icon = GFX_goal_lth_peasantry relative_position_id = lth_celebornsreforms x =-1 @@ -5243,7 +5244,7 @@ focus_tree = { focus = { id = lth_establishagraindole - icon = GFX_goal_lth_establishagraindole + icon = GFX_goal_lth_grain_dole relative_position_id = lth_celebornsreforms x =1 @@ -5278,7 +5279,7 @@ focus_tree = { focus = { id = lth_meritbasedadvancement - icon = GFX_goal_lth_meritbasedadvancement + icon = GFX_goal_lth_meritocracy_advancement relative_position_id = lth_celebornsreforms x =0 @@ -5299,7 +5300,7 @@ focus_tree = { focus = { id = lth_leadbyexample - icon = GFX_goal_lth_leadbyexample + icon = GFX_goal_lth_revolutionary_flag_lothlorien relative_position_id = lth_celebornsreforms x =0 @@ -5320,7 +5321,7 @@ focus_tree = { focus = { id = lth_preemptivemeasures - icon = GFX_goal_lth_preemptivemeasures + icon = GFX_goal_lth_map_measures relative_position_id = lth_territorialdefense x =-1 @@ -5341,7 +5342,7 @@ focus_tree = { focus = { id = lth_valesofanduin - icon = GFX_goal_lth_valesofanduin + icon = GFX_goal_lth_anduin_flag relative_position_id = lth_preemptivemeasures x =-3 @@ -5376,7 +5377,7 @@ focus_tree = { focus = { id = lth_amostgenerousoffer - icon = GFX_goal_lth_amostgenerousoffer + icon = GFX_goal_lth_vales_of_anduin_offer_chain relative_position_id = lth_valesofanduin x =-1 @@ -5424,7 +5425,7 @@ focus_tree = { focus = { id = lth_northboundinvasion - icon = GFX_goal_lth_northboundinvasion + icon = GFX_goal_lth_invasion_northbound relative_position_id = lth_valesofanduin x =-1 @@ -5453,7 +5454,7 @@ focus_tree = { focus = { id = lth_agestureofgoodwill - icon = GFX_goal_lth_agestureofgoodwill + icon = GFX_goal_lth_lothlorien_anduin_deal relative_position_id = lth_valesofanduin x =1 @@ -5486,7 +5487,7 @@ focus_tree = { focus = { id = lth_cooperationefforts - icon = GFX_goal_lth_cooperationefforts + icon = GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale relative_position_id = lth_valesofanduin x =1 @@ -5513,7 +5514,7 @@ focus_tree = { focus = { id = lth_theminesofmoria - icon = GFX_goal_lth_theminesofmoria + icon = GFX_goal_lth_moria_flag relative_position_id = lth_preemptivemeasures x =0 @@ -5559,7 +5560,7 @@ focus_tree = { focus = { id = lth_cleansethetunnels - icon = GFX_goal_lth_cleansethetunnels + icon = GFX_goal_lth_cleanse_orcs_from_moria relative_position_id = lth_preemptivemeasures x =0 @@ -5605,7 +5606,7 @@ focus_tree = { focus = { id = lth_liftthelawofisolation - icon = GFX_goal_lth_liftthelawofisolation + icon = GFX_goal_lth_dwarf_elf_handshake relative_position_id = lth_preemptivemeasures x =1 @@ -5641,7 +5642,7 @@ focus_tree = { focus = { id = lth_trackdowndurinsbane - icon = GFX_goal_lth_trackdowndurinsbane + icon = GFX_goal_lth_balrog_durins_bane relative_position_id = lth_preemptivemeasures x =0 @@ -5680,7 +5681,7 @@ focus_tree = { focus = { id = lth_thefortressofdolguldur - icon = GFX_goal_lth_thefortressofdolguldur + icon = GFX_goal_lth_dol_guldur_flag relative_position_id = lth_preemptivemeasures x =3 @@ -5712,7 +5713,7 @@ focus_tree = { focus = { id = lth_helpmirkwoodwithcontainment - icon = GFX_goal_lth_cooperatewithmirkwood + icon = GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf relative_position_id = lth_thefortressofdolguldur x =0 @@ -5753,7 +5754,7 @@ focus_tree = { focus = { id = lth_forcetheissue - icon = GFX_goal_lth_forcetheissue + icon = GFX_goal_lth_attack_dol_guldur relative_position_id = lth_thefortressofdolguldur x =0 @@ -5818,7 +5819,7 @@ focus_tree = { focus = { id = lth_requestaseatonelrondscouncil - icon = GFX_goal_lth_requestaseatonelrondscouncil + icon = GFX_goal_lth_council_of_elrond relative_position_id = lth_theonering x =0 @@ -5851,7 +5852,7 @@ focus_tree = { focus = { id = lth_seizetheonering - icon = GFX_goal_lth_seizetheonering + icon = GFX_goal_lth_hand_taking_ring relative_position_id = lth_theonering x =-2 @@ -5879,7 +5880,7 @@ focus_tree = { focus = { id = lth_anelvenfellowship - icon = GFX_goal_lth_anelvenfellowship + icon = GFX_goal_lth_haldir_elves_ring_fellowship relative_position_id = lth_seizetheonering x =1 @@ -5926,7 +5927,7 @@ focus_tree = { focus = { id = lth_supportthefellowship - icon = GFX_goal_lth_supportthefellowship + icon = GFX_goal_lth_fellowship_of_ring relative_position_id = lth_theonering x =2 @@ -5947,7 +5948,7 @@ focus_tree = { focus = { id = lth_echoesoftheeldendays - icon = GFX_goal_lth_echoesoftheeldendays + icon = GFX_goal_lth_elden_days_tree relative_position_id = lth_elvenknowledge x =-3 @@ -5984,7 +5985,7 @@ focus_tree = { focus = { id = lth_galadrielsmirror - icon = GFX_goal_lth_gal_mirror + icon = GFX_goal_lth_galadriel_mirror relative_position_id = lth_echoesoftheeldendays x =-2 @@ -6003,7 +6004,7 @@ focus_tree = { focus = { id = lth_mirrorupgrade - icon = GFX_goal_lth_mirrorupgrade + icon = GFX_goal_lth_mirror_upgrade relative_position_id = lth_echoesoftheeldendays x =-2 @@ -6021,7 +6022,7 @@ focus_tree = { focus = { id = lth_thearchivesofagespast - icon = GFX_goal_lth_thearchivesofagespast + icon = GFX_goal_lth_ancient_archives relative_position_id = lth_echoesoftheeldendays x =0 @@ -6048,7 +6049,7 @@ focus_tree = { focus = { id = lth_lorekeepersguild - icon = GFX_goal_lth_lorekeepersguild + icon = GFX_goal_lth_knowledge_books_guild relative_position_id = lth_thearchivesofagespast x =-1 @@ -6077,7 +6078,7 @@ focus_tree = { focus = { id = lth_cryptsofmemory - icon = GFX_goal_lth_lorekeepersguild + icon = GFX_goal_lth_knowledge_books_guild relative_position_id = lth_thearchivesofagespast x =1 @@ -6099,7 +6100,7 @@ focus_tree = { focus = { id = lth_resilienceofnenya - icon = GFX_goal_lth_nenyasprotection + icon = GFX_goal_lth_ring_nenya relative_position_id = lth_elvenknowledge x =0 @@ -6137,7 +6138,7 @@ focus_tree = { focus = { id = lth_ringenchantments - icon = GFX_goal_lth_ringenchantments + icon = GFX_goal_lth_ring_nenya_archive relative_position_id = lth_resilienceofnenya x =0 @@ -6168,7 +6169,7 @@ focus_tree = { focus = { id = lth_theeternaldominion - icon = GFX_goal_lth_theeternaldominion + icon = GFX_goal_lth_eternal_dominion relative_position_id = lth_celebornsexile x =1 @@ -6198,7 +6199,7 @@ focus_tree = { focus = { id = lth_eternalwisdom - icon = GFX_goal_lth_eternalwisdom + icon = GFX_goal_lth_eternal_wisdom relative_position_id = lth_celebornsexile x =1 @@ -6218,7 +6219,7 @@ focus_tree = { focus = { id = lth_tworingsbecomethone - icon = GFX_goal_lth_tworingsbecomethone + icon = GFX_goal_lth_nenya_one_ring_merge x =22 y =23 @@ -6242,7 +6243,7 @@ focus_tree = { focus = { id = lth_dismantlethenazgul - icon = GFX_goal_lth_dismantlethenazgul + icon = GFX_goal_lth_nazghul_ringwraith_on_fire relative_position_id = lth_tworingsbecomethone x =0 @@ -6265,7 +6266,7 @@ focus_tree = { focus = { id = lth_prisonervivisections - icon = GFX_goal_lth_prisonervivisections + icon = GFX_goal_lth_orc_prisoner_vivisection relative_position_id = lth_tworingsbecomethone x =-2 @@ -6315,7 +6316,7 @@ focus_tree = { focus = { id = lth_thegiftofservitude - icon = GFX_goal_lth_thegiftofservitude + icon = GFX_goal_lth_orc_servitude relative_position_id = lth_tworingsbecomethone x =-2 @@ -6345,7 +6346,7 @@ focus_tree = { focus = { id = lth_theshadowswhisper - icon = GFX_goal_lth_theshadowswhisper + icon = GFX_goal_lth_one_ring_shadow relative_position_id = lth_tworingsbecomethone x =2 @@ -6385,7 +6386,7 @@ focus_tree = { focus = { id = lth_resistthedarkness - icon = GFX_goal_lth_resistthedarkness + icon = GFX_goal_lth_galadriel_resisting_darkness relative_position_id = lth_tworingsbecomethone x =2 @@ -6426,7 +6427,7 @@ focus_tree = { focus = { id = lth_givesauronthering - icon = GFX_goal_lth_givesauronthering + icon = GFX_goal_lth_sauron_unleashed_with_ring relative_position_id = lth_seizetheonering x =4 @@ -6446,7 +6447,7 @@ focus_tree = { focus = { id = lth_theunholyalliance - icon = GFX_goal_lth_theunholyalliance + icon = GFX_goal_lth_galadriel_and_sauron_alliance relative_position_id = lth_givesauronthering x =0 @@ -6473,7 +6474,7 @@ focus_tree = { focus = { id = lth_foeturnedfriend - icon = GFX_goal_lth_foeturnedfriend + icon = GFX_goal_lth_elf_shaking_hands_with_orc x =37 y =25 @@ -6496,7 +6497,7 @@ focus_tree = { focus = { id = lth_anecessaryevil - icon = GFX_goal_lth_anecessaryevil + icon = GFX_goal_lth_orc_bound_by_chains relative_position_id = lth_foeturnedfriend x =-1 @@ -6528,7 +6529,7 @@ focus_tree = { focus = { id = lth_integrateorcsintothegaladhrim - icon = GFX_goal_lth_integrateorcsintothegaladhrim + icon = GFX_goal_lth_orc_warrior relative_position_id = lth_foeturnedfriend x =-1 @@ -6548,7 +6549,7 @@ focus_tree = { focus = { id = lth_forsaketheelves - icon = GFX_goal_lth_forsaketheelves + icon = GFX_goal_lth_forsake_elves_kneeling relative_position_id = lth_foeturnedfriend x =1 @@ -6578,7 +6579,7 @@ focus_tree = { focus = { id = lth_anewbreed - icon = GFX_goal_lth_anewbreed + icon = GFX_goal_lth_uruk_hai_orc relative_position_id = lth_foeturnedfriend x =1 @@ -6598,7 +6599,7 @@ focus_tree = { focus = { id = lth_theneworder - icon = GFX_goal_lth_theneworder + icon = GFX_goal_lth_elf_kneeling_to_orc relative_position_id = lth_foeturnedfriend x =1 @@ -6617,7 +6618,7 @@ focus_tree = { focus = { id = lth_provincialcouncils - icon = GFX_goal_lth_territorialadministration + icon = GFX_goal_lth_adminstration relative_position_id = lth_territorialadministration x =-4 @@ -6648,7 +6649,7 @@ focus_tree = { focus = { id = lth_organizetributaries - icon = GFX_goal_lth_organizetributaries + icon = GFX_goal_lth_demand_tribute relative_position_id = lth_theeternaldominion x =1 @@ -6668,7 +6669,7 @@ focus_tree = { focus = { id = lth_labourtaxfornonelves - icon = GFX_goal_lth_labourtaxfornonelves + icon = GFX_goal_lth_labour_blacksmith relative_position_id = lth_theeternaldominion x =-1 @@ -6701,7 +6702,7 @@ focus_tree = { focus = { id = lth_localautonomy - icon = GFX_goal_lth_localautonomy + icon = GFX_goal_lth_local_autonomy relative_position_id = lth_provincialcouncils x =-1 @@ -6767,7 +6768,7 @@ focus_tree = { focus = { id = lth_territorialintegration - icon = GFX_goal_lth_territorialintegration + icon = GFX_goal_lth_territorial_integration relative_position_id = lth_localautonomy x =1 @@ -6831,7 +6832,7 @@ focus_tree = { focus = { id = lth_investintaurhith - icon = GFX_goal_lth_investfocus + icon = GFX_goal_lth_investment relative_position_id = lth_provincialcouncils x =-2 @@ -6863,7 +6864,7 @@ focus_tree = { focus = { id = lth_investinparthcelebrant - icon = GFX_goal_lth_investfocus + icon = GFX_goal_lth_investment relative_position_id = lth_provincialcouncils x =0 @@ -6895,7 +6896,7 @@ focus_tree = { focus = { id = lth_investinnanduhirion - icon = GFX_goal_lth_investfocus + icon = GFX_goal_lth_investment relative_position_id = lth_provincialcouncils x =2 @@ -6927,7 +6928,7 @@ focus_tree = { focus = { id = lth_reformtaxcollection - icon = GFX_goal_lth_reformtaxcollection + icon = GFX_goal_lth_tax_collection_reformed relative_position_id = lth_localautonomy x =2 @@ -6983,7 +6984,7 @@ focus_tree = { focus = { id = lth_minglewiththemortals - icon = GFX_goal_lth_minglewiththemortals + icon = GFX_goal_lth_friendly_skeleton relative_position_id = lth_forgealliances x =0 @@ -7014,7 +7015,7 @@ focus_tree = { focus = { id = lth_nonelvencitizenship - icon = GFX_goal_lth_nonelvencitizenship + icon = GFX_goal_lth_extend_citizenship relative_position_id = lth_forgealliances x =0 @@ -7046,7 +7047,7 @@ focus_tree = { focus = { id = lth_migrationtreaties - icon = GFX_goal_lth_migrationtreaties + icon = GFX_goal_lth_borders_migration_treaty relative_position_id = lth_nonelvencitizenship x =0 diff --git a/common/national_focus/lotr_shared_political.txt b/common/national_focus/lotr_shared_political.txt index 3866fd084..3f1fe0245 100644 --- a/common/national_focus/lotr_shared_political.txt +++ b/common/national_focus/lotr_shared_political.txt @@ -304,7 +304,7 @@ shared_focus = { id = generic_unaligned_focus - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned prerequisite = { focus = generic_pick_a_path } mutually_exclusive = { focus = generic_draw_closer_to_gondor focus = generic_draw_closer_to_erebor focus = generic_draw_closer_to_mordor focus = interventionism_focus } relative_position_id = liberty_ethos @@ -623,7 +623,7 @@ #Focus for Draw closer to Erebor shared_focus = { id = generic_draw_closer_to_erebor - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army available = { is_in_faction = no ERE = { is_faction_leader = yes } } ai_will_do = { factor = 1 @@ -648,7 +648,7 @@ #Focus for Unite with Erebor shared_focus = { id = generic_unite_with_erebor - icon = GFX_goal_erebor + icon = GFX_goal_mor_erebor_flag ai_will_do = { factor = 3 } available = { is_in_faction = no ERE = { is_faction_leader = yes } is_subject = no } relative_position_id = generic_draw_closer_to_erebor @@ -764,7 +764,7 @@ shared_focus = { #Focus for Draw closer to Mordor shared_focus = { id = generic_draw_closer_to_mordor - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag relative_position_id = generic_pick_a_path x = 3 y = 1 @@ -795,7 +795,7 @@ shared_focus = { shared_focus = { id = generic_honor_morgoth - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth x = 0 y = 1 relative_position_id = generic_draw_closer_to_mordor diff --git a/common/national_focus/mirkwood.txt b/common/national_focus/mirkwood.txt index a1225de1b..9eb286e30 100644 --- a/common/national_focus/mirkwood.txt +++ b/common/national_focus/mirkwood.txt @@ -139,7 +139,7 @@ shared_focus = ea_theelvenalliance #Focus for Draw closer to Erebor focus = { id = drawclosertoerebor - icon = GFX_goal_erebor + icon = GFX_goal_mor_erebor_flag ai_will_do = { factor = 5 } x =3 y =3 @@ -156,7 +156,7 @@ shared_focus = ea_theelvenalliance #Focus for Unite with Erebor focus = { id = unitewitherebor - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army ai_will_do = { factor = 7 } available = { ERE = { has_opinion = { target = MIR value > 19 } } is_in_faction = no ERE = { is_faction_leader = yes } } x =2 @@ -338,7 +338,7 @@ shared_focus = ea_theelvenalliance #Focus for Self-centered Rule focus = { id = selfcenteredrule - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 10 modifier = { factor = 0 is_going_unaligned = no } @@ -678,7 +678,7 @@ shared_focus = ea_theelvenalliance #Focus for Guidance of the Wisest focus = { id = guidanceofthewisest - icon = GFX_goal_radagast + icon = GFX_goal_mir_radagast_the_brown ai_will_do = { factor = 10 } x =9 y =3 @@ -700,7 +700,7 @@ shared_focus = ea_theelvenalliance #Focus for Elven Supremacy focus = { id = men_elvensupremacy - icon = GFX_goal_thranduil + icon = GFX_goal_mir_thranduil ai_will_do = { factor = 7 } x =11 y =3 @@ -914,7 +914,7 @@ shared_focus = ea_theelvenalliance #Focus for Wipe out the Dwarves focus = { id = wipeoutthedwarves - icon = GFX_wargoal_erebor + icon = GFX_goal_mor_wargoal_erebor ai_will_do = { factor = 2 modifier = { @@ -1008,7 +1008,7 @@ shared_focus = ea_theelvenalliance #Focus for Confederate the Ents focus = { id = confederatetheents - icon = GFX_goal_teachings_of_the_ancients + icon = GFX_goal_entwood_treebeard ai_will_do = { factor = 10 } x =9 y =6 @@ -1116,7 +1116,7 @@ shared_focus = ea_theelvenalliance #Focus for Deal with Dol Guldur focus = { id = dealwithdolguldur - icon = GFX_goal_dark_dol_guldur + icon = GFX_goal_mor_dark_dol_guldur_fortress ai_will_do = { factor = 10 } available = { NOT = { has_global_flag = mirkwood_dolguldur_attack } } x =12 @@ -1133,7 +1133,7 @@ shared_focus = ea_theelvenalliance #Focus for Deal with the Spiders focus = { id = dealwiththespiders - icon = GFX_goal_spider_anarchy + icon = GFX_goal_mir_spider_anarchy ai_will_do = { factor = 12 } available = { NOT = { has_global_flag = mirkwood_spider_attack } } x =8 @@ -1172,7 +1172,7 @@ shared_focus = ea_theelvenalliance #Focus for Strike a deal with Sauron focus = { id = men_strikeadealwithsauron - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag ai_will_do = { factor = 8 } available = { NOT = { has_global_flag = mirkwood_dolguldur_attack } any_country = { original_tag = MOR has_government = belligerent is_faction_leader = yes } @@ -1195,7 +1195,7 @@ focus = { #Focus for Let the spiders roam free focus = { id = letthespidersroamfree - icon = GFX_goal_deal_with_the_spiders + icon = GFX_goal_mir_deal_with_the_spiders ai_will_do = { factor = 15 } available = { NOT = { has_global_flag = mirkwood_spider_attack } } x =7 @@ -1252,7 +1252,7 @@ focus = { #Focus for Arachnid Anarchy focus = { id = arachnidanarchy - icon = GFX_goal_spider_anarchy + icon = GFX_goal_mir_spider_anarchy ai_will_do = { factor = 8 } available = { revolutionary > 0.6 } available = { NOT = { has_global_flag = mirkwood_spider_attack } } @@ -1278,7 +1278,7 @@ focus = { #Focus for Children of Ungoliant focus = { id = childrenofungoliant - icon = GFX_goal_deal_with_the_spiders + icon = GFX_goal_mir_deal_with_the_spiders ai_will_do = { factor = 5 } available = { NOT = { has_global_flag = mirkwood_spider_attack } } x =6 @@ -1295,7 +1295,7 @@ focus = { #Focus for Giant Spiderwebs focus = { id = giantspiderwebs - icon = GFX_goal_deal_with_the_spiders + icon = GFX_goal_mir_deal_with_the_spiders ai_will_do = { factor = 4 } available = { NOT = { has_global_flag = mirkwood_spider_attack } } x =8 diff --git a/common/national_focus/mordor.txt b/common/national_focus/mordor.txt index 0ca1088c8..22a7844c8 100644 --- a/common/national_focus/mordor.txt +++ b/common/national_focus/mordor.txt @@ -24,7 +24,7 @@ default = no #Focus for Restore Barad-dûr focus = { id = restorebaraddr - icon = GFX_goal_restore_baraddr + icon = GFX_goal_mor_tower_of_barad_dur ai_will_do = { factor = 100 } available = { 12 = { is_controlled_by = ROOT } } bypass = { has_global_flag = mordor_civil_war } @@ -74,7 +74,7 @@ default = no #Focus for Resist Sauron focus = { id = resistsauron - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 25 } @@ -163,7 +163,7 @@ focus = { focus = { id = request_assistance_moria - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army ai_will_do = { factor = 50 } prerequisite = { focus = marchonbaraddr } available = { @@ -209,7 +209,7 @@ focus = { #Focus for Put Meat back on the Menu! focus = { id = putmeatbackonthemenu - icon = GFX_goal_meats_back_on_the_menu + icon = GFX_goal_mor_meat_back_skulls_knife ai_will_do = { factor = 25 } available = { has_government = revolutionary } relative_position_id = marchonbaraddr @@ -265,7 +265,7 @@ focus = { focus = { id = rise_orcs_of_dol_guldur - icon = GFX_goal_dol_guldur + icon = GFX_goal_mor_dol_guldur_flag relative_position_id = union_of_working_class x = 2 y = 1 @@ -543,7 +543,7 @@ focus = { focus = { id = spread_revolution_with_force - icon = GFX_wargoal_gondor + icon = GFX_goal_mor_wargoal_gondor relative_position_id = prepare_for_violence_revolution x = 0 y = 1 @@ -572,7 +572,7 @@ focus = { focus = { id = spread_revolution_with_force_to_rohan - icon = GFX_wargoal_rohan + icon = GFX_goal_mor_wargoal_rohan relative_position_id = spread_revolution_with_force x = 0 y = 1 @@ -1078,7 +1078,7 @@ focus = { #Focus for Minimized Death Toll focus = { id = minimizeddeathtoll - icon = GFX_goal_meats_back_on_the_menu + icon = GFX_goal_mor_meat_back_skulls_knife ai_will_do = { factor = 2 } x = -3 y = 1 @@ -1096,7 +1096,7 @@ focus = { #Focus for Taking care of the wounded focus = { id = MOR_take_care_of_the_wounded - icon = GFX_goal_meats_back_on_the_menu + icon = GFX_goal_mor_meat_back_skulls_knife ai_will_do = { factor = 2 } x = 0 y = 1 @@ -1124,7 +1124,7 @@ focus = { #Focus for Specialized Units focus = { id = specializedunits - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 1 } x = 1 y = 1 @@ -1152,7 +1152,7 @@ focus = { focus = { id = breed_the_trolls - icon = GFX_trolls + icon = GFX_mor_troll_warriors ai_will_do = { factor = 1 } x = 0 y = 1 @@ -1199,7 +1199,7 @@ focus = { #Focus for Armored Units focus = { id = calvary_units - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 1 } x = 3 y = 1 @@ -1298,7 +1298,7 @@ focus = { #Focus for Establish new orc breeding grounds focus = { id = establishneworcbreedinggrounds - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 2 } x = 0 y = 1 @@ -1435,7 +1435,7 @@ focus = { #Focus for Build animal farms focus = { id = MOR_build_animal_farms - icon = GFX_goal_generic_windmile + icon = GFX_goal_generic_windmill ai_will_do = { factor = 1 } available = { 187 = { is_controlled_by = ROOT } 9 = { is_controlled_by = ROOT } } x = 4 @@ -1937,7 +1937,7 @@ focus = { #Focus for Reach out to Isengard focus = { id = reach_out_to_isengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 3 } x = 1 y = 1 @@ -2011,7 +2011,7 @@ focus = { focus = { id = MOR_core_isengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { base = 25 } @@ -2173,7 +2173,7 @@ focus = { #Focus to invite Angmar focus = { id = invite_angmar_to_faction - icon = GFX_goal_angmar_unalligned + icon = GFX_goal_angmar_unaligned ai_will_do = { factor = 3 } x = 0 y = 1 @@ -2203,7 +2203,7 @@ focus = { #Anti-elves pact focus = { id = MOR_anti_elves_pact_invite - icon = GFX_goal_take_his_ring + icon = GFX_goal_riv_elrond_ring_vilya ai_will_do = { factor = 3 } x = 0 y = 1 @@ -2232,7 +2232,7 @@ focus = { #Suggesting declaring war on Mirkwood focus = { id = MOR_together_we_attack_mirkwood - icon = GFX_goal_thranduil + icon = GFX_goal_mir_thranduil ai_will_do = { factor = 3 } x = -2 y = 1 @@ -2288,7 +2288,7 @@ focus = { #Suggesting declaring war on Lothlorien focus = { id = MOR_together_we_attack_lothlorien - icon = GFX_goal_galadriel + icon = GFX_goal_lth_galadriel ai_will_do = { factor = 3 } x = 0 y = 1 @@ -2338,7 +2338,7 @@ focus = { #Suggesting declaring war on Rivendell focus = { id = MOR_together_we_attack_rivendell - icon = GFX_goal_elrond + icon = GFX_goal_riv_elrond ai_will_do = { factor = 3 } x = 1 y = 1 @@ -2530,7 +2530,7 @@ focus = { focus = { id = annex_dol_guldur - icon = GFX_goal_dark_dol_guldur + icon = GFX_goal_mor_dark_dol_guldur_fortress ai_will_do = { factor = 15 } relative_position_id = set_up_fortress x = 0 @@ -2553,7 +2553,7 @@ focus = { focus = { id = reaforce_dol_guldur - icon = GFX_goal_dol_guldur + icon = GFX_goal_mor_dol_guldur_flag ai_will_do = { factor = 15 } relative_position_id = set_up_fortress x = -2 @@ -2666,7 +2666,7 @@ focus ={ focus = { id = MOR_core_dol_guldur - icon = GFX_goal_dol_guldur + icon = GFX_goal_mor_dol_guldur_flag ai_will_do = { factor = 15 } relative_position_id = annex_dol_guldur x = 0 @@ -2684,7 +2684,7 @@ focus = { focus = { id = demand_restore_dol_guldur - icon = GFX_goal_dark_dol_guldur + icon = GFX_goal_mor_dark_dol_guldur_fortress ai_will_do = { factor = 15 modifier = { @@ -2732,7 +2732,7 @@ focus = { #Focus for Enslave the East focus = { id = enslavetheeast - icon = GFX_wargoal_rhun + icon = GFX_goal_mor_wargoal_rhun ai_will_do = { factor = 10 modifier = { @@ -2847,7 +2847,7 @@ focus = { focus = { id = war_with_dorwinion - icon = GFX_wargoal_dorwinion + icon = GFX_goal_mor_wargoal_dorwinion ai_will_do = { factor = 10 } x = 0 y = 1 @@ -2882,7 +2882,7 @@ focus = { #Focus for Enslave the South focus = { id = enslavethesouth - icon = GFX_wargoal_harad + icon = GFX_goal_mor_wargoal_harad ai_will_do = { factor = 10 modifier = { @@ -2982,7 +2982,7 @@ focus = { focus = { id = honor_morgoth - icon = GFX_servant_of_melkor + icon = GFX_goal_mor_servant_of_melkor_morgoth x = 2 y = 1 relative_position_id = submittosauron @@ -2998,7 +2998,7 @@ focus = { #Focus for Gather the Nazgûl focus = { id = gatherthenazgl - icon = GFX_goal_gather_the_nazgl + icon = GFX_goal_mor_nazgul_ringwraiths ai_will_do = { factor = 100 } x = 0 y = 1 @@ -3077,7 +3077,7 @@ focus = { #Focus for Torture Gollum focus = { id = torturegollum - icon = GFX_goal_golum + icon = GFX_goal_mor_golum ai_will_do = { factor = 100 } x = 0 y = 1 @@ -3239,7 +3239,7 @@ focus = { focus = { id = MOR_claim_black_gate_outskirts - icon = GFX_goal_mordor_landscape + icon = GFX_goal_mor_mordor_landscape ai_will_do = { factor = 25 } @@ -3285,7 +3285,7 @@ focus = { #Focus for War with Erebor! focus = { id = war_with_erebor - icon = GFX_wargoal_erebor + icon = GFX_goal_mor_wargoal_erebor bypass = { OR = { has_war_with = ERE @@ -3333,7 +3333,7 @@ focus = { focus = { id = MOR_invite_erebor - icon = GFX_goal_erebor + icon = GFX_goal_mor_erebor_flag x = 4 y = 1 relative_position_id = MOR_claim_black_gate_outskirts @@ -3415,7 +3415,7 @@ focus = { focus = { id = MOR_learn_from_the_dwarves - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army x = 0 y = 2 relative_position_id = MOR_invite_erebor @@ -3444,7 +3444,7 @@ focus = { #Focus for War with Dale! focus = { id = war_with_dale - icon = GFX_wargoal_dale + icon = GFX_goal_mor_wargoal_dale bypass = { has_war_with = DAL } ai_will_do = { factor = 5 @@ -3475,7 +3475,7 @@ focus = { focus = { id = MOR_prepare_war_with_gondor - icon = GFX_goal_meats_back_on_the_menu + icon = GFX_goal_mor_meat_back_skulls_knife ai_will_do = { factor = 100 } @@ -3512,7 +3512,7 @@ focus = { #Focus for War with Gondor! focus = { id = war_with_gondor - icon = GFX_wargoal_gondor + icon = GFX_goal_mor_wargoal_gondor bypass = { GON = { OR = { @@ -3593,7 +3593,7 @@ focus = { #Focus for War with Rohan! focus = { id = war_with_rohan - icon = GFX_wargoal_rohan + icon = GFX_goal_mor_wargoal_rohan ai_will_do = { factor = 10 modifier = { @@ -3653,7 +3653,7 @@ focus = { focus = { id = expand_horses - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 25 } x = 0 y = 1 diff --git a/common/national_focus/moria.txt b/common/national_focus/moria.txt index 785f12955..2bdbfdbbe 100644 --- a/common/national_focus/moria.txt +++ b/common/national_focus/moria.txt @@ -226,7 +226,7 @@ default = no #Focus for Assume Control over Moria focus = { id = assumecontrolovermoria - icon = GFX_goal_azog + icon = GFX_goal_mor_azog_orc_revolt ai_will_do = { factor = 100 } available = { OR = { has_civil_war = no MOA = { is_government_in_exile = yes } MOC = { is_government_in_exile = yes } } NOT = { has_civil_war = yes } has_global_flag = moria_civil_war has_government = revolutionary } x =8 @@ -241,7 +241,7 @@ default = no #Focus for Restore Stability focus = { id = restorestability - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 100 } x =5 y =2 @@ -297,7 +297,7 @@ default = no #Focus for Submit to the Balrog focus = { id = submittothebalrog - icon = GFX_goal_balrog + icon = GFX_goal_moa_balrog ai_will_do = { factor = 10 modifier = { add = 5 @@ -382,7 +382,7 @@ default = no #Focus for Deal with the Balrog focus = { id = dealwiththebalrog - icon = GFX_goal_balrog + icon = GFX_goal_moa_balrog ai_will_do = { factor = 15 } x =4 y =3 @@ -525,7 +525,7 @@ default = no #Focus for MOA_Unite with Sauron focus = { id = nor_unitewithsauron - icon = GFX_goal_mordor + icon = GFX_goal_mordor_flag ai_will_do = { factor = 5 } x =5 y =5 diff --git a/common/national_focus/rivendell.txt b/common/national_focus/rivendell.txt index 1cddd0422..63de7a378 100644 --- a/common/national_focus/rivendell.txt +++ b/common/national_focus/rivendell.txt @@ -558,7 +558,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Hold the Council of Elrond focus = { id = holdthecouncilofelrond - icon = GFX_goal_council_of_elrond + icon = GFX_goal_riv_council_of_elrond ai_will_do = { factor = 100 } available = { has_global_flag = fs_fellowship_departed } bypass = { has_global_flag = fs_ring_seized } @@ -605,7 +605,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Stability Focus focus = { id = stabilityfocus - icon = GFX_goal_support_unalligned + icon = GFX_goal_support_unaligned ai_will_do = { factor = 30 modifier = { factor = 0 is_going_unaligned = no } @@ -644,7 +644,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Assasinate Elrond! focus = { id = assasinateelrond - icon = GFX_goal_elrond + icon = GFX_goal_riv_elrond ai_will_do = { factor = 100 } available = { has_country_leader = { ruling_only = yes name = "Elrond" } } available = { OR = { belligerent > 0.2 revolutionary > 0.2 } } @@ -809,7 +809,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Reforge the Blade of Narsil focus = { id = reforgethebladeofnarsil - icon = GFX_goal_reforge_narsil + icon = GFX_goal_riv_reforge_blade_of_narsil available = { NOT = { has_global_flag = aragorn_dead } } ai_will_do = { factor = 3 @@ -879,7 +879,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Sabotage Rohan focus = { id = sabotagerohan - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 2 } available = { NOT = { ROH = { has_government = belligerent } } } bypass = { ROH = { has_government = belligerent } } @@ -959,7 +959,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Take his Ring! focus = { id = takehisring - icon = GFX_goal_take_his_ring + icon = GFX_goal_riv_elrond_ring_vilya ai_will_do = { factor = 15 } available = { OR = { has_government = belligerent has_government = revolutionary } } x =6 @@ -977,7 +977,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Erase Elven Traditions focus = { id = eraseelventraditions - icon = GFX_goal_take_his_ring + icon = GFX_goal_riv_elrond_ring_vilya ai_will_do = { factor = 8 } available = { has_government = revolutionary } x =8 @@ -1011,7 +1011,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Temper Fascist Influence in Rohan focus = { id = temperfascistinfluenceinrohan - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 3 modifier = { @@ -1163,7 +1163,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Blame the Dwarves focus = { id = blamethedwarves - icon = GFX_goal_army_dwarves + icon = GFX_goal_dwarves_soldiers_army ai_will_do = { factor = 80 } x =6 y =6 @@ -1398,7 +1398,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for The Mordor Threat focus = { id = themordorthreat - icon = GFX_wargoal_mordor + icon = GFX_goal_rhu_wargoal_mordor available = { OR = { MOR = { has_government = belligerent } MOR = { has_government = revolutionary } } } ai_will_do = { factor = 2 diff --git a/common/national_focus/rohan.txt b/common/national_focus/rohan.txt index 26d6ea866..622b4ddef 100644 --- a/common/national_focus/rohan.txt +++ b/common/national_focus/rohan.txt @@ -31,7 +31,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Accept Grima Wormtongue into the King's service focus = { id = acceptgrimawormtongueintothekingsservice - icon = GFX_goal_grima + icon = GFX_goal_roh_grima_wormtongue ai_will_do = { factor = 100 } available = { has_global_flag = grima_hired } x =5 @@ -63,7 +63,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Allow Gandalf into the King's Halls focus = { id = allowgandalfintothekingshalls - icon = GFX_goal_allow_gandalf_in + icon = GFX_goal_roh_allow_gandalf_into_rohan ai_will_do = { factor = 100 } available = { has_global_flag = gandalf_allowed_into_rohan } x =7 @@ -81,7 +81,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Exile Grima focus = { id = exilegrima - icon = GFX_goal_grima + icon = GFX_goal_roh_grima_wormtongue ai_will_do = { factor = 50 } x =6 y =3 @@ -99,7 +99,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Execute Grima focus = { id = executegrima - icon = GFX_goal_grima + icon = GFX_goal_roh_grima_wormtongue ai_will_do = { factor = 50 } x =8 y =3 @@ -117,7 +117,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Restore the Realm focus = { id = restoretherealm - icon = GFX_goal_sick_theoden + icon = GFX_goal_roh_sick_theoden ai_will_do = { factor = 100 } x =7 y =4 @@ -144,7 +144,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Encourage the Ents to seek vengance focus = { id = encouragetheentstoseekvengance - icon = GFX_goal_fury_of_the_trees + icon = GFX_goal_ent_throwing_rock ai_will_do = { factor = 0 modifier = { @@ -165,7 +165,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Wed Grima to Eowyn focus = { id = wedgrimatoeowyn - icon = GFX_goal_eowyn + icon = GFX_goal_roh_eowyn_sorrow ai_will_do = { factor = 30 } x =1 y =4 @@ -182,7 +182,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Get rid of Theodred focus = { id = getridoftheodred - icon = GFX_goal_theodred + icon = GFX_goal_roh_theodred ai_will_do = { factor = 30 } bypass = { has_global_flag = theodred_dead } available = { belligerent > 0.2 } @@ -206,7 +206,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Assasinate Eomer focus = { id = assasinateeomer - icon = GFX_goal_assasinate_eomer + icon = GFX_goal_roh_eomer ai_will_do = { factor = 30 } available = { belligerent > 0.3 } x =3 @@ -225,7 +225,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Get Rid of Theoden focus = { id = getridoftheoden - icon = GFX_goal_sick_theoden + icon = GFX_goal_roh_sick_theoden ai_will_do = { factor = 30 } available = { belligerent > 0.45 } x =2 @@ -260,7 +260,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Welcome back Eomer focus = { id = welcomebackeomer - icon = GFX_goal_assasinate_eomer + icon = GFX_goal_roh_eomer ai_will_do = { factor = 15 } available = { 183 = { is_controlled_by = ROH } } x =7 @@ -296,7 +296,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Rule in Eowyn's Name focus = { id = ruleineowynsname - icon = GFX_goal_grima + icon = GFX_goal_roh_grima_wormtongue ai_will_do = { factor = 15 } available = { has_government = belligerent } x =1 @@ -326,7 +326,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Unite with Isengard focus = { id = unitewithisengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 5 } available = { ROH = { has_government = belligerent } ISE = { is_in_faction = yes } NOT = { is_puppet = yes } ISE = { has_country_leader = { ruling_only = yes name = "Saruman" } } ISE = { has_government = belligerent } } x =2 @@ -380,7 +380,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Bunker down in Helm's Deep focus = { id = bunkerdowninhelmsdeep - icon = GFX_goal_helms_deep + icon = GFX_goal_roh_helms_deep available = { 26 = { is_controlled_by = ROH } } ai_will_do = { factor = 10 } x =4 @@ -442,7 +442,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Remain in Edoras focus = { id = remaininedoras - icon = GFX_goal_edoras + icon = GFX_goal_roh_edoras available = { 25 = { is_controlled_by = ROH } } ai_will_do = { factor = 10 } x =6 @@ -497,7 +497,7 @@ continuous_focus_position = { x = 50 y = 2000 } #Focus for Cleanse the Orc Invasion focus = { id = cleansetheorcinvasion - icon = GFX_goal_rohan + icon = GFX_goal_roh_rohan_flag ai_will_do = { factor = 30 } available = { has_idea = ISE_orc_pillage } x =5 diff --git a/common/national_focus/shire.txt b/common/national_focus/shire.txt index 7f71898d5..84a243a9e 100644 --- a/common/national_focus/shire.txt +++ b/common/national_focus/shire.txt @@ -245,7 +245,7 @@ shared_focus = industrial_effort #Focus for Conspire with Saruman focus = { id = conspirewithsaruman - icon = GFX_goal_trust_saruman + icon = GFX_goal_roh_trust_saruman ai_will_do = { factor = 5 } available = { NOT = { has_completed_focus = seekourowndestiny } ISE = { is_in_faction = yes } NOT = { is_puppet = yes } ISE = { has_country_leader = { ruling_only = yes name = "Saruman" } } ISE = { has_government = belligerent } } @@ -439,7 +439,7 @@ shared_focus = industrial_effort #Focus for Unite with Isengard focus = { id = SHI_unitewithisengard - icon = GFX_goal_the_white_hand + icon = GFX_goal_ise_the_white_hand_flag ai_will_do = { factor = 3 } relative_position_id = conspirewithsaruman x =0 @@ -469,7 +469,7 @@ shared_focus = industrial_effort #Focus for Stay true to Saruman focus = { id = SHI_staytruetosaruman - icon = GFX_goal_sauron_is_looking + icon = GFX_goal_saruman_with_palantir ai_will_do = { factor = 0 } relative_position_id = SHI_encourageisengardsovereignity x =-1 diff --git a/common/national_focus/white_council_focus.txt b/common/national_focus/white_council_focus.txt index 638066ec0..6c59f9bfd 100644 --- a/common/national_focus/white_council_focus.txt +++ b/common/national_focus/white_council_focus.txt @@ -1,6 +1,6 @@ shared_focus = { id = whc_rekindlewhitecouncil - icon = GFX_goal_lth_revivethewhitecouncil + icon = GFX_goal_lth_white_council_meeting text_icon = joint_focus_style prerequisite = { } @@ -80,7 +80,7 @@ shared_focus = { joint_focus = { id = whc_sarumanthewise - icon = GFX_goal_lth_invitesaruman + icon = GFX_goal_lth_white_council_saruman text_icon = joint_focus_style prerequisite = { focus = whc_rekindlewhitecouncil } @@ -138,7 +138,7 @@ joint_focus = { joint_focus = { id = whc_thewizardswisdom - icon = GFX_goal_lth_thewizardswisdom + icon = GFX_goal_lth_white_council_saruman_with_palantir text_icon = joint_focus_style prerequisite = { focus = whc_sarumanthewise } @@ -186,7 +186,7 @@ joint_focus = { joint_focus = { id = whc_elrondofrivendell - icon = GFX_goal_lth_inviteelrond + icon = GFX_goal_lth_white_council_elrond text_icon = joint_focus_style prerequisite = { focus = whc_rekindlewhitecouncil } @@ -252,7 +252,7 @@ joint_focus = { joint_focus = { id = whc_theinfluenceofrivendell - icon = GFX_goal_lth_theinfluenceofrivendell + icon = GFX_goal_lth_elven_diplomacy_and_influence text_icon = joint_focus_style prerequisite = { focus = whc_elrondofrivendell } @@ -302,7 +302,7 @@ joint_focus = { joint_focus = { id = whc_gandalfthegrey - icon = GFX_goal_lth_invitegandalf + icon = GFX_goal_lth_white_council_gandalf text_icon = joint_focus_style prerequisite = { focus = whc_rekindlewhitecouncil } @@ -369,7 +369,7 @@ joint_focus = { joint_focus = { id = whc_supportofthegreateagles - icon = GFX_goal_lth_supportofthegreateagles + icon = GFX_goal_lth_white_council_eagles text_icon = joint_focus_style prerequisite = { focus = whc_gandalfthegrey } @@ -468,7 +468,7 @@ joint_focus = { joint_focus = { id = whc_galadrieloflorien - icon = GFX_goal_lth_invitegaladriel + icon = GFX_goal_lth_white_council_galadriel text_icon = joint_focus_style prerequisite = { focus = whc_rekindlewhitecouncil } @@ -577,7 +577,7 @@ joint_focus = { joint_focus = { id = whc_oathtothefellowship - icon = GFX_goal_lth_revivethewhitecouncil + icon = GFX_goal_lth_white_council_meeting text_icon = joint_focus_style prerequisite = { focus = whc_elrondofrivendell focus = whc_gandalfthegrey } @@ -630,7 +630,7 @@ joint_focus = { joint_focus = { id = whc_coordinatedresistance - icon = GFX_goal_lth_coordinatedresistance + icon = GFX_goal_lth_orc_contained_resistance text_icon = joint_focus_style prerequisite = { focus = whc_oathtothefellowship } @@ -704,7 +704,7 @@ joint_focus = { joint_focus = { id = whc_unitethecause - icon = GFX_goal_lth_unitethecause + icon = GFX_goal_lth_lothlorien_rivendell_isengard_union text_icon = joint_focus_style prerequisite = { focus = whc_thewizardswisdom } prerequisite = { focus = whc_theinfluenceofrivendell } diff --git a/events/Arthedain.txt b/events/Arthedain.txt index 513128646..f66faa389 100644 --- a/events/Arthedain.txt +++ b/events/Arthedain.txt @@ -98,7 +98,7 @@ country_event = { id = arthedain.3 title = arthedain.3.t desc = arthedain.3.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Dorwinion.txt b/events/Dorwinion.txt index ca0989005..3b33346ae 100644 --- a/events/Dorwinion.txt +++ b/events/Dorwinion.txt @@ -9,7 +9,7 @@ country_event = { id = dorwinion.1 title = dorwinion.1.t desc = dorwinion.1.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/ElvenAllianceEvents.txt b/events/ElvenAllianceEvents.txt index 0ba89f3b0..c9960d6b0 100644 --- a/events/ElvenAllianceEvents.txt +++ b/events/ElvenAllianceEvents.txt @@ -26,7 +26,7 @@ country_event = { id = elven_alliance.2 title = elven_alliance.2.t desc = elven_alliance.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -53,7 +53,7 @@ country_event = { id = elven_alliance.3 title = elven_alliance.3.t desc = elven_alliance.3.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance timeout_days = 20 diff --git a/events/Enedwaith.txt b/events/Enedwaith.txt index 22beac6cc..1c5e6bc85 100644 --- a/events/Enedwaith.txt +++ b/events/Enedwaith.txt @@ -9,7 +9,7 @@ country_event = { id = enedwaith.1 title = enedwaith.1.t desc = enedwaith.1.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Erebor.txt b/events/Erebor.txt index e3d0ccd21..6367b25e6 100644 --- a/events/Erebor.txt +++ b/events/Erebor.txt @@ -50,7 +50,7 @@ country_event = { id = erebor.2 title = erebor.2.t desc = erebor.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -98,7 +98,7 @@ country_event = { id = erebor.3 title = erebor.3.t desc = erebor.3.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -159,7 +159,7 @@ country_event = { id = erebor.4 title = erebor.4.t desc = erebor.4.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Lothlorien.txt b/events/Lothlorien.txt index 3b83c775f..999d6aa63 100644 --- a/events/Lothlorien.txt +++ b/events/Lothlorien.txt @@ -1061,6 +1061,7 @@ country_event = { } name = lothlorien.19.a + remove_ideas = LTH_celeborn_and_galadriel LTH_celeborn = { retire = yes } diff --git a/events/Lotr_Generic.txt b/events/Lotr_Generic.txt index 15532cde2..d8534e426 100644 --- a/events/Lotr_Generic.txt +++ b/events/Lotr_Generic.txt @@ -11,7 +11,7 @@ country_event = { id = lotr_generic.1 title = lotr_generic.1.t desc = lotr_generic.1.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -94,7 +94,7 @@ country_event = { id = lotr_generic.2 title = lotr_generic.2.t desc = lotr_generic.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -160,7 +160,7 @@ country_event = { id = lotr_generic.3 title = lotr_generic.3.t desc = lotr_generic.3.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -186,7 +186,7 @@ country_event = { id = lotr_generic.4 title = lotr_generic.4.t desc = lotr_generic.4.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -204,7 +204,7 @@ country_event = { id = lotr_generic.5 title = lotr_generic.5.t desc = lotr_generic.5.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -226,7 +226,7 @@ country_event = { id = lotr_gambler.1 title = lotr_gambler.1.t desc = lotr_gambler.1.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -254,7 +254,7 @@ country_event = { id = lotr_gambler.2 title = lotr_gambler.2.t desc = lotr_gambler.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -298,7 +298,7 @@ country_event = { id = lotr_generic.6 title = lotr_generic.6.t desc = lotr_generic.6.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -401,7 +401,7 @@ country_event = { id = lotr_generic.7 title = lotr_generic.7.t desc = lotr_generic.7.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/NewsEvents.txt b/events/NewsEvents.txt index 8e98e60f0..f9c1be3d0 100644 --- a/events/NewsEvents.txt +++ b/events/NewsEvents.txt @@ -9,7 +9,7 @@ news_event = { id = news.402 title = news.402.t desc = news.402.d - picture = GFX_news_event_carn_dum + picture = GFX_news_event_angmar_carn_dum major = yes @@ -73,7 +73,7 @@ news_event = { id = news.398 title = news.398.t desc = news.398.d - picture = GFX_news_event_coronation + picture = GFX_news_event_gondor_coronation major = yes @@ -213,7 +213,7 @@ news_event = { id = news.388 title = news.388.t desc = news.388.d - picture = GFX_news_event_helmsdeep_breached + picture = GFX_news_event_roh_helmsdeep_breached major = yes @@ -245,7 +245,7 @@ news_event = { id = news.386 title = news.386.t desc = news.386.d - picture = GFX_news_event_dagorlad + picture = GFX_news_event_dagorlad_nazgul major = yes @@ -261,7 +261,7 @@ news_event = { id = news.385 title = news.385.t desc = news.385.d - picture = GFX_news_event_rhun + picture = GFX_news_event_rhun_army major = yes @@ -277,7 +277,7 @@ news_event = { id = news.384 title = news.384.t desc = news.384.d - picture = GFX_news_event_rhun + picture = GFX_news_event_rhun_army major = yes @@ -326,7 +326,7 @@ news_event = { id = news.381 title = news.381.t desc = news.381.d - picture = GFX_news_event_denethor_suicide + picture = GFX_news_event_gon_denethor_suicide major = yes @@ -429,7 +429,7 @@ news_event = { id = news.375 title = news.375.t desc = news.375.d - picture = GFX_news_event_dagorlad + picture = GFX_news_event_dagorlad_nazgul major = yes @@ -541,7 +541,7 @@ news_event = { id = news.368 title = news.368.t desc = news.368.d - picture = GFX_news_event_coronation + picture = GFX_news_event_gondor_coronation major = yes @@ -573,7 +573,7 @@ news_event = { id = news.366 title = news.366.t desc = news.366.d - picture = GFX_news_event_coronation + picture = GFX_news_event_gondor_coronation major = yes @@ -589,7 +589,7 @@ news_event = { id = news.365 title = news.365.t desc = news.365.d - picture = GFX_news_event_dead_army + picture = GFX_news_event_gon_dead_army major = yes @@ -733,7 +733,7 @@ news_event = { id = news.356 title = news.356.t desc = news.356.d - picture = GFX_news_event_3rd_breakfast + picture = GFX_news_event_hobbit_party major = yes @@ -765,7 +765,7 @@ news_event = { id = news.354 title = news.354.t desc = news.354.d - picture = GFX_news_event_3rd_breakfast + picture = GFX_news_event_hobbit_party major = yes @@ -797,7 +797,7 @@ news_event = { id = news.352 title = news.352.t desc = news.352.d - picture = GFX_news_event_witch + picture = GFX_news_event_witch_king_angmar major = yes @@ -829,7 +829,7 @@ news_event = { id = news.350 title = news.350.t desc = news.350.d - picture = GFX_news_event_mirkwood + picture = GFX_news_event_mirkwood_army major = yes @@ -893,7 +893,7 @@ news_event = { id = news.346 title = news.346.t desc = news.346.d - picture = GFX_news_event_rhun + picture = GFX_news_event_rhun_army major = yes @@ -909,7 +909,7 @@ news_event = { id = news.345 title = news.345.t desc = news.345.d - picture = GFX_news_event_dagorlad + picture = GFX_news_event_dagorlad_nazgul major = yes @@ -957,7 +957,7 @@ news_event = { id = news.342 title = news.342.t desc = news.342.d - picture = GFX_news_event_grima_exiled + picture = GFX_news_event_roh_grima_exiled major = yes @@ -973,7 +973,7 @@ news_event = { id = news.341 title = news.341.t desc = news.341.d - picture = GFX_news_event_grima_exiled + picture = GFX_news_event_roh_grima_exiled major = yes @@ -989,7 +989,7 @@ news_event = { id = news.340 title = news.340.t desc = news.340.d - picture = GFX_news_event_theodred + picture = GFX_news_event_roh_theodred_dead major = yes @@ -1005,7 +1005,7 @@ news_event = { id = news.339 title = news.339.t desc = news.339.d - picture = GFX_news_event_theoden_dead + picture = GFX_news_event_roh_theoden_dead major = yes @@ -1021,7 +1021,7 @@ news_event = { id = news.338 title = news.338.t desc = news.338.d - picture = GFX_news_event_grima_eowyn_marriage + picture = GFX_news_event_roh_grima_eowyn_marriage major = yes @@ -1037,7 +1037,7 @@ news_event = { id = news.337 title = news.337.t desc = news.337.d - picture = GFX_news_event_theoden_ill + picture = GFX_news_event_roh_theoden_ill major = yes @@ -1053,7 +1053,7 @@ news_event = { id = news.336 title = news.336.t desc = news.336.d - picture = GFX_news_event_theodred + picture = GFX_news_event_roh_theodred_dead major = yes @@ -1117,7 +1117,7 @@ news_event = { id = news.332 title = news.332.t desc = news.332.d - picture = GFX_news_event_council + picture = GFX_news_event_council_of_elrond major = yes diff --git a/events/Rhudaur.txt b/events/Rhudaur.txt index 29d73df0c..4dec44456 100644 --- a/events/Rhudaur.txt +++ b/events/Rhudaur.txt @@ -23,7 +23,7 @@ country_event = { id = rhudaur.2 title = rhudaur.2.t desc = rhudaur.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Rhun.txt b/events/Rhun.txt index 8ef6ac9d1..b38ece1d3 100644 --- a/events/Rhun.txt +++ b/events/Rhun.txt @@ -23,7 +23,7 @@ country_event = { id = rhun.2 title = rhun.2.t desc = rhun.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -37,7 +37,7 @@ country_event = { id = rhun.3 title = rhun.3.t desc = rhun.3.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Rivendell.txt b/events/Rivendell.txt index f05ec34e2..712d74032 100644 --- a/events/Rivendell.txt +++ b/events/Rivendell.txt @@ -227,7 +227,7 @@ country_event = { id = rivendell.5 title = rivendell.5.t desc = rivendell.5.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -266,7 +266,7 @@ country_event = { id = rivendell.6 title = rivendell.6.t desc = rivendell.6.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -308,7 +308,7 @@ country_event = { id = rivendell.7 title = rivendell.7.t desc = rivendell.7.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -346,7 +346,7 @@ country_event = { id = rivendell.8 title = rivendell.8.t desc = rivendell.8.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -383,7 +383,7 @@ country_event = { id = rivendell.9 title = rivendell.9.t desc = rivendell.9.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -420,7 +420,7 @@ country_event = { id = rivendell.10 title = rivendell.10.t desc = rivendell.10.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance fire_only_once = yes @@ -457,7 +457,7 @@ country_event = { id = rivendell.11 title = rivendell.11.t desc = rivendell.11.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -498,7 +498,7 @@ country_event = { id = rivendell.12 title = rivendell.12.t desc = rivendell.12.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -530,7 +530,7 @@ country_event = { id = rivendell.13 title = rivendell.13.t desc = rivendell.13.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/events/Shire.txt b/events/Shire.txt index 4b4ac95e2..54c3eefa8 100644 --- a/events/Shire.txt +++ b/events/Shire.txt @@ -9,7 +9,7 @@ country_event = { id = shire.1 title = shire.1.t desc = shire.1.d - picture = GFX_report_event_party + picture = GFX_report_event_hobbit_party fire_only_once = yes @@ -40,7 +40,7 @@ country_event = { id = shire.2 title = shire.2.t desc = shire.2.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes @@ -115,7 +115,7 @@ country_event = { id = shire.4 title = shire.4.t desc = shire.4.d - picture = GFX_report_event_alliance + picture = GFX_report_event_elven_alliance is_triggered_only = yes diff --git a/gfx/event_pictures/news_events/news_event_carn_dum.dds b/gfx/event_pictures/news_events/news_event_angmar_carn_dum.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_carn_dum.dds rename to gfx/event_pictures/news_events/news_event_angmar_carn_dum.dds diff --git a/gfx/event_pictures/news_events/news_event_council.dds b/gfx/event_pictures/news_events/news_event_council_of_elrond.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_council.dds rename to gfx/event_pictures/news_events/news_event_council_of_elrond.dds diff --git a/gfx/event_pictures/news_events/news_event_dagorlad.dds b/gfx/event_pictures/news_events/news_event_dagorlad_nazgul.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_dagorlad.dds rename to gfx/event_pictures/news_events/news_event_dagorlad_nazgul.dds diff --git a/gfx/event_pictures/news_events/news_event_dead_army.dds b/gfx/event_pictures/news_events/news_event_gon_dead_army.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_dead_army.dds rename to gfx/event_pictures/news_events/news_event_gon_dead_army.dds diff --git a/gfx/event_pictures/news_events/news_event_denethor_suicide.dds b/gfx/event_pictures/news_events/news_event_gon_denethor_suicide.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_denethor_suicide.dds rename to gfx/event_pictures/news_events/news_event_gon_denethor_suicide.dds diff --git a/gfx/event_pictures/news_events/news_event_coronation.dds b/gfx/event_pictures/news_events/news_event_gondor_coronation.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_coronation.dds rename to gfx/event_pictures/news_events/news_event_gondor_coronation.dds diff --git a/gfx/event_pictures/news_events/news_event_3rd_breakfast.dds b/gfx/event_pictures/news_events/news_event_hobbit_party.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_3rd_breakfast.dds rename to gfx/event_pictures/news_events/news_event_hobbit_party.dds diff --git a/gfx/event_pictures/news_events/news_event_mirkwood.dds b/gfx/event_pictures/news_events/news_event_mirkwood_army.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_mirkwood.dds rename to gfx/event_pictures/news_events/news_event_mirkwood_army.dds diff --git a/gfx/event_pictures/news_events/news_event_rhun.dds b/gfx/event_pictures/news_events/news_event_rhun_army.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_rhun.dds rename to gfx/event_pictures/news_events/news_event_rhun_army.dds diff --git a/gfx/event_pictures/news_events/news_event_grima_eowyn_marriage.dds b/gfx/event_pictures/news_events/news_event_roh_grima_eowyn_marriage.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_grima_eowyn_marriage.dds rename to gfx/event_pictures/news_events/news_event_roh_grima_eowyn_marriage.dds diff --git a/gfx/event_pictures/news_events/news_event_grima_exiled.dds b/gfx/event_pictures/news_events/news_event_roh_grima_exiled.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_grima_exiled.dds rename to gfx/event_pictures/news_events/news_event_roh_grima_exiled.dds diff --git a/gfx/event_pictures/news_events/news_event_helmsdeep_breached.dds b/gfx/event_pictures/news_events/news_event_roh_helmsdeep_breached.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_helmsdeep_breached.dds rename to gfx/event_pictures/news_events/news_event_roh_helmsdeep_breached.dds diff --git a/gfx/event_pictures/news_events/news_event_theoden_dead.dds b/gfx/event_pictures/news_events/news_event_roh_theoden_dead.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_theoden_dead.dds rename to gfx/event_pictures/news_events/news_event_roh_theoden_dead.dds diff --git a/gfx/event_pictures/news_events/news_event_theoden_ill.dds b/gfx/event_pictures/news_events/news_event_roh_theoden_ill.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_theoden_ill.dds rename to gfx/event_pictures/news_events/news_event_roh_theoden_ill.dds diff --git a/gfx/event_pictures/news_events/news_event_theodred.dds b/gfx/event_pictures/news_events/news_event_roh_theodred_dead.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_theodred.dds rename to gfx/event_pictures/news_events/news_event_roh_theodred_dead.dds diff --git a/gfx/event_pictures/news_events/news_event_eye.dds b/gfx/event_pictures/news_events/news_event_sauron_eye.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_eye.dds rename to gfx/event_pictures/news_events/news_event_sauron_eye.dds diff --git a/gfx/event_pictures/news_events/news_event_witch.dds b/gfx/event_pictures/news_events/news_event_witch_king_angmar.dds similarity index 100% rename from gfx/event_pictures/news_events/news_event_witch.dds rename to gfx/event_pictures/news_events/news_event_witch_king_angmar.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_carn_dum.dds b/gfx/event_pictures/news_events/unmasked/news_event_angmar_carn_dum.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_carn_dum.dds rename to gfx/event_pictures/news_events/unmasked/news_event_angmar_carn_dum.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_council.dds b/gfx/event_pictures/news_events/unmasked/news_event_council_of_elrond.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_council.dds rename to gfx/event_pictures/news_events/unmasked/news_event_council_of_elrond.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_dagorlad.dds b/gfx/event_pictures/news_events/unmasked/news_event_dagorlad_nazgul.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_dagorlad.dds rename to gfx/event_pictures/news_events/unmasked/news_event_dagorlad_nazgul.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_dead_army.dds b/gfx/event_pictures/news_events/unmasked/news_event_gon_dead_army.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_dead_army.dds rename to gfx/event_pictures/news_events/unmasked/news_event_gon_dead_army.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_denethor_suicide.dds b/gfx/event_pictures/news_events/unmasked/news_event_gon_denethor_suicide.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_denethor_suicide.dds rename to gfx/event_pictures/news_events/unmasked/news_event_gon_denethor_suicide.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_coronation.dds b/gfx/event_pictures/news_events/unmasked/news_event_gondor_coronation.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_coronation.dds rename to gfx/event_pictures/news_events/unmasked/news_event_gondor_coronation.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_3rd_breakfast.dds b/gfx/event_pictures/news_events/unmasked/news_event_hobbit_party.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_3rd_breakfast.dds rename to gfx/event_pictures/news_events/unmasked/news_event_hobbit_party.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_mirkwood.dds b/gfx/event_pictures/news_events/unmasked/news_event_mirkwood_army.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_mirkwood.dds rename to gfx/event_pictures/news_events/unmasked/news_event_mirkwood_army.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_rhun.dds b/gfx/event_pictures/news_events/unmasked/news_event_rhun_army.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_rhun.dds rename to gfx/event_pictures/news_events/unmasked/news_event_rhun_army.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_grima_eowyn_marriage.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_grima_eowyn_marriage.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_grima_eowyn_marriage.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_grima_eowyn_marriage.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_grima_exiled.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_grima_exiled.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_grima_exiled.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_grima_exiled.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_helmsdeep_breached.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_helmsdeep_breached.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_helmsdeep_breached.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_helmsdeep_breached.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_theoden_dead.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_theoden_dead.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_theoden_dead.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_theoden_dead.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_theoden_ill.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_theoden_ill.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_theoden_ill.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_theoden_ill.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_theodred.dds b/gfx/event_pictures/news_events/unmasked/news_event_roh_theodred_dead.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_theodred.dds rename to gfx/event_pictures/news_events/unmasked/news_event_roh_theodred_dead.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_eye.dds b/gfx/event_pictures/news_events/unmasked/news_event_sauron_eye.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_eye.dds rename to gfx/event_pictures/news_events/unmasked/news_event_sauron_eye.dds diff --git a/gfx/event_pictures/news_events/unmasked/news_event_witch.dds b/gfx/event_pictures/news_events/unmasked/news_event_witch_king_angmar.dds similarity index 100% rename from gfx/event_pictures/news_events/unmasked/news_event_witch.dds rename to gfx/event_pictures/news_events/unmasked/news_event_witch_king_angmar.dds diff --git a/gfx/event_pictures/report_events/report_event_abandoned.dds b/gfx/event_pictures/report_events/report_event_abandoned.dds new file mode 100644 index 000000000..e61f78037 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_abandoned.dds differ diff --git a/gfx/event_pictures/report_events/report_event_alliance.dds b/gfx/event_pictures/report_events/report_event_elven_alliance.dds similarity index 100% rename from gfx/event_pictures/report_events/report_event_alliance.dds rename to gfx/event_pictures/report_events/report_event_elven_alliance.dds diff --git a/gfx/event_pictures/report_events/report_event_generic_king.dds b/gfx/event_pictures/report_events/report_event_generic_king.dds new file mode 100644 index 000000000..c5c9cf2bf Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_generic_king.dds differ diff --git a/gfx/event_pictures/report_events/report_event_generic_reading.dds b/gfx/event_pictures/report_events/report_event_generic_reading.dds new file mode 100644 index 000000000..155c1c464 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_generic_reading.dds differ diff --git a/gfx/event_pictures/report_events/report_event_party.dds b/gfx/event_pictures/report_events/report_event_hobbit_party.dds similarity index 100% rename from gfx/event_pictures/report_events/report_event_party.dds rename to gfx/event_pictures/report_events/report_event_hobbit_party.dds diff --git a/gfx/event_pictures/report_events/report_event_horseman_wanderer.dds b/gfx/event_pictures/report_events/report_event_horseman_wanderer.dds new file mode 100644 index 000000000..6ca73d0c6 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_horseman_wanderer.dds differ diff --git a/gfx/event_pictures/report_events/report_event_marriage_wedding.dds b/gfx/event_pictures/report_events/report_event_marriage_wedding.dds new file mode 100644 index 000000000..58e803b45 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_marriage_wedding.dds differ diff --git a/gfx/event_pictures/report_events/report_event_marriage_wedding2.dds b/gfx/event_pictures/report_events/report_event_marriage_wedding2.dds new file mode 100644 index 000000000..199c0972c Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_marriage_wedding2.dds differ diff --git a/gfx/event_pictures/report_events/report_event_peasant_revolt.dds b/gfx/event_pictures/report_events/report_event_peasant_revolt.dds new file mode 100644 index 000000000..bda83be54 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_peasant_revolt.dds differ diff --git a/gfx/event_pictures/report_events/report_event_peasant_revolt2.dds b/gfx/event_pictures/report_events/report_event_peasant_revolt2.dds new file mode 100644 index 000000000..bb787066e Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_peasant_revolt2.dds differ diff --git a/gfx/event_pictures/report_events/report_event_peasant_revolt3.dds b/gfx/event_pictures/report_events/report_event_peasant_revolt3.dds new file mode 100644 index 000000000..fa3d6646c Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_peasant_revolt3.dds differ diff --git a/gfx/event_pictures/report_events/report_event_ship_valinor.dds b/gfx/event_pictures/report_events/report_event_ship_valinor.dds new file mode 100644 index 000000000..1d07a9692 Binary files /dev/null and b/gfx/event_pictures/report_events/report_event_ship_valinor.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_abandoned.dds b/gfx/event_pictures/report_events/unmasked/report_event_abandoned.dds new file mode 100644 index 000000000..623737f73 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_abandoned.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_alliance.dds b/gfx/event_pictures/report_events/unmasked/report_event_elven_alliance.dds similarity index 100% rename from gfx/event_pictures/report_events/unmasked/report_event_alliance.dds rename to gfx/event_pictures/report_events/unmasked/report_event_elven_alliance.dds diff --git a/gfx/event_pictures/report_events/unmasked/report_event_generic_king.dds b/gfx/event_pictures/report_events/unmasked/report_event_generic_king.dds new file mode 100644 index 000000000..093b8c320 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_generic_king.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_generic_reading.dds b/gfx/event_pictures/report_events/unmasked/report_event_generic_reading.dds new file mode 100644 index 000000000..b87a0517a Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_generic_reading.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_party.dds b/gfx/event_pictures/report_events/unmasked/report_event_hobbit_party.dds similarity index 100% rename from gfx/event_pictures/report_events/unmasked/report_event_party.dds rename to gfx/event_pictures/report_events/unmasked/report_event_hobbit_party.dds diff --git a/gfx/event_pictures/report_events/unmasked/report_event_horseman_wanderer.dds b/gfx/event_pictures/report_events/unmasked/report_event_horseman_wanderer.dds new file mode 100644 index 000000000..8cd080157 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_horseman_wanderer.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding.dds b/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding.dds new file mode 100644 index 000000000..6ee45660a Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding2.dds b/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding2.dds new file mode 100644 index 000000000..239cdaa61 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_marriage_wedding2.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt.dds b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt.dds new file mode 100644 index 000000000..59acc2db5 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt2.dds b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt2.dds new file mode 100644 index 000000000..6b02e6302 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt2.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt3.dds b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt3.dds new file mode 100644 index 000000000..6c9df7999 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_peasant_revolt3.dds differ diff --git a/gfx/event_pictures/report_events/unmasked/report_event_ship_valinor.dds b/gfx/event_pictures/report_events/unmasked/report_event_ship_valinor.dds new file mode 100644 index 000000000..13ed2f800 Binary files /dev/null and b/gfx/event_pictures/report_events/unmasked/report_event_ship_valinor.dds differ diff --git a/gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga b/gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga deleted file mode 100644 index 3b3bdb4c0..000000000 Binary files a/gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga and /dev/null differ diff --git a/gfx/interface/goals/ANG/GFX_goal_mordor.tga b/gfx/interface/goals/ANG/GFX_goal_mordor.tga deleted file mode 100644 index 3e2e38372..000000000 Binary files a/gfx/interface/goals/ANG/GFX_goal_mordor.tga and /dev/null differ diff --git a/gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga b/gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga deleted file mode 100644 index 5a934716a..000000000 Binary files a/gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga and /dev/null differ diff --git a/gfx/interface/goals/ANG/GFX_goal_witch_king.tga b/gfx/interface/goals/ANG/GFX_goal_witch_king.tga deleted file mode 100644 index 7d3531425..000000000 Binary files a/gfx/interface/goals/ANG/GFX_goal_witch_king.tga and /dev/null differ diff --git a/gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds b/gfx/interface/goals/ANG/angmar_unaligned.dds similarity index 100% rename from gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds rename to gfx/interface/goals/ANG/angmar_unaligned.dds diff --git a/gfx/interface/goals/ANG/mordor_deal.dds b/gfx/interface/goals/ANG/mordor_deal.dds new file mode 100644 index 000000000..aed245c35 Binary files /dev/null and b/gfx/interface/goals/ANG/mordor_deal.dds differ diff --git a/gfx/interface/goals/ANG/mordor_flag.dds b/gfx/interface/goals/ANG/mordor_flag.dds new file mode 100644 index 000000000..71332a64c Binary files /dev/null and b/gfx/interface/goals/ANG/mordor_flag.dds differ diff --git a/gfx/interface/goals/ANG/witch_king.dds b/gfx/interface/goals/ANG/witch_king.dds new file mode 100644 index 000000000..6423ce88b Binary files /dev/null and b/gfx/interface/goals/ANG/witch_king.dds differ diff --git a/gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga b/gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga deleted file mode 100644 index 2b94a0bdc..000000000 Binary files a/gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga and /dev/null differ diff --git a/gfx/interface/goals/ART/GFX_unite_by_force.tga b/gfx/interface/goals/ART/GFX_unite_by_force.tga deleted file mode 100644 index 0d19d7c69..000000000 Binary files a/gfx/interface/goals/ART/GFX_unite_by_force.tga and /dev/null differ diff --git a/gfx/interface/goals/ART/arnor_unite_by_force.dds b/gfx/interface/goals/ART/arnor_unite_by_force.dds new file mode 100644 index 000000000..94d783202 Binary files /dev/null and b/gfx/interface/goals/ART/arnor_unite_by_force.dds differ diff --git a/gfx/interface/goals/ART/rangers_of_the_north.dds b/gfx/interface/goals/ART/rangers_of_the_north.dds new file mode 100644 index 000000000..809fed982 Binary files /dev/null and b/gfx/interface/goals/ART/rangers_of_the_north.dds differ diff --git a/gfx/interface/goals/ENT/GFX_goal_community_effort.tga b/gfx/interface/goals/ENT/GFX_goal_community_effort.tga deleted file mode 100644 index 7d6c9aa0c..000000000 Binary files a/gfx/interface/goals/ENT/GFX_goal_community_effort.tga and /dev/null differ diff --git a/gfx/interface/goals/ENT/GFX_goal_entwood.tga b/gfx/interface/goals/ENT/GFX_goal_entwood.tga deleted file mode 100644 index 2a463d4d9..000000000 Binary files a/gfx/interface/goals/ENT/GFX_goal_entwood.tga and /dev/null differ diff --git a/gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga b/gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga deleted file mode 100644 index f6578e141..000000000 Binary files a/gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga and /dev/null differ diff --git a/gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga b/gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga deleted file mode 100644 index 78b3bd661..000000000 Binary files a/gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga and /dev/null differ diff --git a/gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga b/gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga deleted file mode 100644 index 0cd87a001..000000000 Binary files a/gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga and /dev/null differ diff --git a/gfx/interface/goals/ENT/ent_throwing_rock.dds b/gfx/interface/goals/ENT/ent_throwing_rock.dds new file mode 100644 index 000000000..583770303 Binary files /dev/null and b/gfx/interface/goals/ENT/ent_throwing_rock.dds differ diff --git a/gfx/interface/goals/ENT/entwood_ent_council.dds b/gfx/interface/goals/ENT/entwood_ent_council.dds new file mode 100644 index 000000000..770d2c874 Binary files /dev/null and b/gfx/interface/goals/ENT/entwood_ent_council.dds differ diff --git a/gfx/interface/goals/ENT/entwood_flag.dds b/gfx/interface/goals/ENT/entwood_flag.dds new file mode 100644 index 000000000..5b946ca44 Binary files /dev/null and b/gfx/interface/goals/ENT/entwood_flag.dds differ diff --git a/gfx/interface/goals/ENT/entwood_forest_nature.dds b/gfx/interface/goals/ENT/entwood_forest_nature.dds new file mode 100644 index 000000000..793231774 Binary files /dev/null and b/gfx/interface/goals/ENT/entwood_forest_nature.dds differ diff --git a/gfx/interface/goals/ENT/entwood_treebeard.dds b/gfx/interface/goals/ENT/entwood_treebeard.dds new file mode 100644 index 000000000..c0a67df68 Binary files /dev/null and b/gfx/interface/goals/ENT/entwood_treebeard.dds differ diff --git a/gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga b/gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga deleted file mode 100644 index 86360cce4..000000000 Binary files a/gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga and /dev/null differ diff --git a/gfx/interface/goals/ERE/dwarves_soldiers_army.dds b/gfx/interface/goals/ERE/dwarves_soldiers_army.dds new file mode 100644 index 000000000..04dff9123 Binary files /dev/null and b/gfx/interface/goals/ERE/dwarves_soldiers_army.dds differ diff --git a/gfx/interface/goals/GON/GFX_goal_boromir.tga b/gfx/interface/goals/GON/GFX_goal_boromir.tga deleted file mode 100644 index 373914586..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_boromir.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_denethor.tga b/gfx/interface/goals/GON/GFX_goal_denethor.tga deleted file mode 100644 index bf39dd33d..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_denethor.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_faramir.tga b/gfx/interface/goals/GON/GFX_goal_faramir.tga deleted file mode 100644 index fe9f63c5b..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_faramir.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_ghost_army.tga b/gfx/interface/goals/GON/GFX_goal_ghost_army.tga deleted file mode 100644 index fcc2d944f..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_ghost_army.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_gondor.tga b/gfx/interface/goals/GON/GFX_goal_gondor.tga deleted file mode 100644 index a221a986e..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_gondor.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_king_aragorn.tga b/gfx/interface/goals/GON/GFX_goal_king_aragorn.tga deleted file mode 100644 index 344bd46d0..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_king_aragorn.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga b/gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga deleted file mode 100644 index 299bba01e..000000000 Binary files a/gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga and /dev/null differ diff --git a/gfx/interface/goals/GON/GFX_goal_arnor.dds b/gfx/interface/goals/GON/arnor.dds similarity index 100% rename from gfx/interface/goals/GON/GFX_goal_arnor.dds rename to gfx/interface/goals/GON/arnor.dds diff --git a/gfx/interface/goals/GON/gon_ensure_popular_support.dds b/gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds similarity index 100% rename from gfx/interface/goals/GON/gon_ensure_popular_support.dds rename to gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds diff --git a/gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds b/gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds similarity index 100% rename from gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds rename to gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds diff --git a/gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds b/gfx/interface/goals/GON/gon_gondor_angmar_deal.dds similarity index 100% rename from gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds rename to gfx/interface/goals/GON/gon_gondor_angmar_deal.dds diff --git a/gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds b/gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds similarity index 100% rename from gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds rename to gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds diff --git a/gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds b/gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds similarity index 100% rename from gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds rename to gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds diff --git a/gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds b/gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds similarity index 100% rename from gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds rename to gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds diff --git a/gfx/interface/goals/GON/gon_gondor_needs_no_king.dds b/gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds similarity index 100% rename from gfx/interface/goals/GON/gon_gondor_needs_no_king.dds rename to gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds diff --git a/gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds b/gfx/interface/goals/GON/gon_isildur_crown_defamed.dds similarity index 100% rename from gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds rename to gfx/interface/goals/GON/gon_isildur_crown_defamed.dds diff --git a/gfx/interface/goals/GON/gon_historical_claims.dds b/gfx/interface/goals/GON/gon_isildur_crown_with_map.dds similarity index 100% rename from gfx/interface/goals/GON/gon_historical_claims.dds rename to gfx/interface/goals/GON/gon_isildur_crown_with_map.dds diff --git a/gfx/interface/goals/GON/gon_ithilien_crisis.dds b/gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds similarity index 100% rename from gfx/interface/goals/GON/gon_ithilien_crisis.dds rename to gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds diff --git a/gfx/interface/goals/GON/gon_ithc_evacuate.dds b/gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds similarity index 100% rename from gfx/interface/goals/GON/gon_ithc_evacuate.dds rename to gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds diff --git a/gfx/interface/goals/GON/gon_ithc_hold_firm.dds b/gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds similarity index 100% rename from gfx/interface/goals/GON/gon_ithc_hold_firm.dds rename to gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds diff --git a/gfx/interface/goals/GON/gon_ithc_emergency_measures.dds b/gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds similarity index 100% rename from gfx/interface/goals/GON/gon_ithc_emergency_measures.dds rename to gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds diff --git a/gfx/interface/goals/GON/gon_purge_the_aristocracy.dds b/gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds similarity index 100% rename from gfx/interface/goals/GON/gon_purge_the_aristocracy.dds rename to gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds diff --git a/gfx/interface/goals/GON/gon_the_peoples_fleet.dds b/gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds similarity index 100% rename from gfx/interface/goals/GON/gon_the_peoples_fleet.dds rename to gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds diff --git a/gfx/interface/goals/GON/gondor.dds b/gfx/interface/goals/GON/gondor.dds new file mode 100644 index 000000000..b14f1424b Binary files /dev/null and b/gfx/interface/goals/GON/gondor.dds differ diff --git a/gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds b/gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds new file mode 100644 index 000000000..e241ebc17 Binary files /dev/null and b/gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds differ diff --git a/gfx/interface/goals/GON/gondor_boromir.dds b/gfx/interface/goals/GON/gondor_boromir.dds new file mode 100644 index 000000000..d0c5be404 Binary files /dev/null and b/gfx/interface/goals/GON/gondor_boromir.dds differ diff --git a/gfx/interface/goals/GON/gondor_denethor.dds b/gfx/interface/goals/GON/gondor_denethor.dds new file mode 100644 index 000000000..bfb135ed5 Binary files /dev/null and b/gfx/interface/goals/GON/gondor_denethor.dds differ diff --git a/gfx/interface/goals/GON/GFX_goal_dol_amroth.dds b/gfx/interface/goals/GON/gondor_dol_amroth_flag.dds similarity index 100% rename from gfx/interface/goals/GON/GFX_goal_dol_amroth.dds rename to gfx/interface/goals/GON/gondor_dol_amroth_flag.dds diff --git a/gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds b/gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds similarity index 100% rename from gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds rename to gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds diff --git a/gfx/interface/goals/GON/gondor_faramir.dds b/gfx/interface/goals/GON/gondor_faramir.dds new file mode 100644 index 000000000..7efa7b6cf Binary files /dev/null and b/gfx/interface/goals/GON/gondor_faramir.dds differ diff --git a/gfx/interface/goals/GON/gondor_king_aragorn.dds b/gfx/interface/goals/GON/gondor_king_aragorn.dds new file mode 100644 index 000000000..681676650 Binary files /dev/null and b/gfx/interface/goals/GON/gondor_king_aragorn.dds differ diff --git a/gfx/interface/goals/GON/gondor_light_the_beacons.dds b/gfx/interface/goals/GON/gondor_light_the_beacons.dds new file mode 100644 index 000000000..f8dad906d Binary files /dev/null and b/gfx/interface/goals/GON/gondor_light_the_beacons.dds differ diff --git a/gfx/interface/goals/GUN/GFX_goal_gundabad.tga b/gfx/interface/goals/GUN/GFX_goal_gundabad.tga deleted file mode 100644 index 5eef9c730..000000000 Binary files a/gfx/interface/goals/GUN/GFX_goal_gundabad.tga and /dev/null differ diff --git a/gfx/interface/goals/GUN/gundabad_flag.dds b/gfx/interface/goals/GUN/gundabad_flag.dds new file mode 100644 index 000000000..6cdba9c89 Binary files /dev/null and b/gfx/interface/goals/GUN/gundabad_flag.dds differ diff --git a/gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga b/gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga deleted file mode 100644 index 17836f74b..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga b/gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga deleted file mode 100644 index 25673d46d..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga b/gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga deleted file mode 100644 index b5fc25c77..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga b/gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga deleted file mode 100644 index cbe4982ec..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_resource_wood.tga b/gfx/interface/goals/Generic/GFX_goal_resource_wood.tga deleted file mode 100644 index 5b5193e18..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_resource_wood.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga b/gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga deleted file mode 100644 index bd18dcfa6..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga b/gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga deleted file mode 100644 index 5e1022b53..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga b/gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga deleted file mode 100644 index a27a4b65c..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga b/gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga deleted file mode 100644 index 22ea56c35..000000000 Binary files a/gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga and /dev/null differ diff --git a/gfx/interface/goals/Generic/generic_anvil.dds b/gfx/interface/goals/Generic/generic_anvil.dds new file mode 100644 index 000000000..ec2ed0820 Binary files /dev/null and b/gfx/interface/goals/Generic/generic_anvil.dds differ diff --git a/gfx/interface/goals/Generic/generic_gondor_research.dds b/gfx/interface/goals/Generic/generic_gondor_research.dds new file mode 100644 index 000000000..f95a1a6ad Binary files /dev/null and b/gfx/interface/goals/Generic/generic_gondor_research.dds differ diff --git a/gfx/interface/goals/Generic/generic_industry_I.dds b/gfx/interface/goals/Generic/generic_industry_I.dds new file mode 100644 index 000000000..d7cdee54b Binary files /dev/null and b/gfx/interface/goals/Generic/generic_industry_I.dds differ diff --git a/gfx/interface/goals/Generic/generic_windmill.dds b/gfx/interface/goals/Generic/generic_windmill.dds new file mode 100644 index 000000000..79b968205 Binary files /dev/null and b/gfx/interface/goals/Generic/generic_windmill.dds differ diff --git a/gfx/interface/goals/Generic/resource_wood.dds b/gfx/interface/goals/Generic/resource_wood.dds new file mode 100644 index 000000000..3b3d3188e Binary files /dev/null and b/gfx/interface/goals/Generic/resource_wood.dds differ diff --git a/gfx/interface/goals/Generic/support_belligerent.dds b/gfx/interface/goals/Generic/support_belligerent.dds new file mode 100644 index 000000000..d6939b8e0 Binary files /dev/null and b/gfx/interface/goals/Generic/support_belligerent.dds differ diff --git a/gfx/interface/goals/Generic/support_cooperative.dds b/gfx/interface/goals/Generic/support_cooperative.dds new file mode 100644 index 000000000..0530e20d0 Binary files /dev/null and b/gfx/interface/goals/Generic/support_cooperative.dds differ diff --git a/gfx/interface/goals/Generic/support_revolutionary.dds b/gfx/interface/goals/Generic/support_revolutionary.dds new file mode 100644 index 000000000..69dea7f53 Binary files /dev/null and b/gfx/interface/goals/Generic/support_revolutionary.dds differ diff --git a/gfx/interface/goals/Generic/support_unaligned.dds b/gfx/interface/goals/Generic/support_unaligned.dds new file mode 100644 index 000000000..9bba7371b Binary files /dev/null and b/gfx/interface/goals/Generic/support_unaligned.dds differ diff --git a/gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga b/gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga deleted file mode 100644 index 1e826dc32..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga b/gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga deleted file mode 100644 index 6984e2151..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga b/gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga deleted file mode 100644 index 97f2091ef..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga b/gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga deleted file mode 100644 index 0bbe47f9e..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga b/gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga deleted file mode 100644 index 426491829..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga b/gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga deleted file mode 100644 index e6f917430..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga b/gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga deleted file mode 100644 index a58f07f85..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga b/gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga deleted file mode 100644 index 7d6f71261..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga b/gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga deleted file mode 100644 index ffee239af..000000000 Binary files a/gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga and /dev/null differ diff --git a/gfx/interface/goals/ISE/army_uruk_hai.dds b/gfx/interface/goals/ISE/army_uruk_hai.dds new file mode 100644 index 000000000..9607379fc Binary files /dev/null and b/gfx/interface/goals/ISE/army_uruk_hai.dds differ diff --git a/gfx/interface/goals/ISE/burn_fangorn_forest.dds b/gfx/interface/goals/ISE/burn_fangorn_forest.dds new file mode 100644 index 000000000..ca3532456 Binary files /dev/null and b/gfx/interface/goals/ISE/burn_fangorn_forest.dds differ diff --git a/gfx/interface/goals/ISE/imprisend_gandalf.dds b/gfx/interface/goals/ISE/imprisend_gandalf.dds new file mode 100644 index 000000000..f14bdaf99 Binary files /dev/null and b/gfx/interface/goals/ISE/imprisend_gandalf.dds differ diff --git a/gfx/interface/goals/ISE/ise_palantir_covered_up.dds b/gfx/interface/goals/ISE/ise_palantir_covered_up.dds new file mode 100644 index 000000000..2138014a4 Binary files /dev/null and b/gfx/interface/goals/ISE/ise_palantir_covered_up.dds differ diff --git a/gfx/interface/goals/ISE/ise_the_white_hand_flag.dds b/gfx/interface/goals/ISE/ise_the_white_hand_flag.dds new file mode 100644 index 000000000..876b8e6f4 Binary files /dev/null and b/gfx/interface/goals/ISE/ise_the_white_hand_flag.dds differ diff --git a/gfx/interface/goals/ISE/meet_with_gandalf.dds b/gfx/interface/goals/ISE/meet_with_gandalf.dds new file mode 100644 index 000000000..5414504ee Binary files /dev/null and b/gfx/interface/goals/ISE/meet_with_gandalf.dds differ diff --git a/gfx/interface/goals/ISE/orthanc_destroyed.dds b/gfx/interface/goals/ISE/orthanc_destroyed.dds new file mode 100644 index 000000000..ded12e22d Binary files /dev/null and b/gfx/interface/goals/ISE/orthanc_destroyed.dds differ diff --git a/gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds b/gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds new file mode 100644 index 000000000..8397ea415 Binary files /dev/null and b/gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds differ diff --git a/gfx/interface/goals/ISE/saruman_with_palantir.dds b/gfx/interface/goals/ISE/saruman_with_palantir.dds new file mode 100644 index 000000000..4f0b42c54 Binary files /dev/null and b/gfx/interface/goals/ISE/saruman_with_palantir.dds differ diff --git a/gfx/interface/goals/LTH/GFX_goal_celeborn.tga b/gfx/interface/goals/LTH/GFX_goal_celeborn.tga deleted file mode 100644 index 2385ce2e0..000000000 Binary files a/gfx/interface/goals/LTH/GFX_goal_celeborn.tga and /dev/null differ diff --git a/gfx/interface/goals/LTH/GFX_goal_galadriel.tga b/gfx/interface/goals/LTH/GFX_goal_galadriel.tga deleted file mode 100644 index a13a9977a..000000000 Binary files a/gfx/interface/goals/LTH/GFX_goal_galadriel.tga and /dev/null differ diff --git a/gfx/interface/goals/LTH/lth_territorialadministration.dds b/gfx/interface/goals/LTH/lth_adminstration.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_territorialadministration.dds rename to gfx/interface/goals/LTH/lth_adminstration.dds diff --git a/gfx/interface/goals/LTH/lth_thearchivesofagespast.dds b/gfx/interface/goals/LTH/lth_ancient_archives.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thearchivesofagespast.dds rename to gfx/interface/goals/LTH/lth_ancient_archives.dds diff --git a/gfx/interface/goals/LTH/lth_valesofanduin.dds b/gfx/interface/goals/LTH/lth_anduin_flag.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_valesofanduin.dds rename to gfx/interface/goals/LTH/lth_anduin_flag.dds diff --git a/gfx/interface/goals/LTH/lth_forcetheissue.dds b/gfx/interface/goals/LTH/lth_attack_dol_guldur.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_forcetheissue.dds rename to gfx/interface/goals/LTH/lth_attack_dol_guldur.dds diff --git a/gfx/interface/goals/LTH/lth_aulescraftmanship.dds b/gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_aulescraftmanship.dds rename to gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds diff --git a/gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds b/gfx/interface/goals/LTH/lth_balrog_durins_bane.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds rename to gfx/interface/goals/LTH/lth_balrog_durins_bane.dds diff --git a/gfx/interface/goals/LTH/lth_migrationtreaties.dds b/gfx/interface/goals/LTH/lth_borders_migration_treaty.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_migrationtreaties.dds rename to gfx/interface/goals/LTH/lth_borders_migration_treaty.dds diff --git a/gfx/interface/goals/LTH/lth_theburdensofleadership.dds b/gfx/interface/goals/LTH/lth_burdens_of_leadership.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theburdensofleadership.dds rename to gfx/interface/goals/LTH/lth_burdens_of_leadership.dds diff --git a/gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds b/gfx/interface/goals/LTH/lth_caras_galadhon.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds rename to gfx/interface/goals/LTH/lth_caras_galadhon.dds diff --git a/gfx/interface/goals/LTH/lth_celeborn.dds b/gfx/interface/goals/LTH/lth_celeborn.dds new file mode 100644 index 000000000..0cd7bf29a Binary files /dev/null and b/gfx/interface/goals/LTH/lth_celeborn.dds differ diff --git a/gfx/interface/goals/LTH/lth_celeborncounsel.dds b/gfx/interface/goals/LTH/lth_celeborn_edicts.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_celeborncounsel.dds rename to gfx/interface/goals/LTH/lth_celeborn_edicts.dds diff --git a/gfx/interface/goals/LTH/lth_celebornsreforms.dds b/gfx/interface/goals/LTH/lth_celeborn_reforms.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_celebornsreforms.dds rename to gfx/interface/goals/LTH/lth_celeborn_reforms.dds diff --git a/gfx/interface/goals/LTH/lth_thesupremeleader.dds b/gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thesupremeleader.dds rename to gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds diff --git a/gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds b/gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds rename to gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds diff --git a/gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds b/gfx/interface/goals/LTH/lth_cerin_amroth.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds rename to gfx/interface/goals/LTH/lth_cerin_amroth.dds diff --git a/gfx/interface/goals/LTH/lth_cleansethetunnels.dds b/gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_cleansethetunnels.dds rename to gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds diff --git a/gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds b/gfx/interface/goals/LTH/lth_collect_taxes.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds rename to gfx/interface/goals/LTH/lth_collect_taxes.dds diff --git a/gfx/interface/goals/LTH/lth_supportmordorsenemies.dds b/gfx/interface/goals/LTH/lth_contain_mordor.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_supportmordorsenemies.dds rename to gfx/interface/goals/LTH/lth_contain_mordor.dds diff --git a/gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds b/gfx/interface/goals/LTH/lth_cooperation_and_stability.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds rename to gfx/interface/goals/LTH/lth_cooperation_and_stability.dds diff --git a/gfx/interface/goals/LTH/lth_thesentinelnetwork.dds b/gfx/interface/goals/LTH/lth_coordinated_defense.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thesentinelnetwork.dds rename to gfx/interface/goals/LTH/lth_coordinated_defense.dds diff --git a/gfx/interface/goals/LTH/lth_coordinatedsanctions.dds b/gfx/interface/goals/LTH/lth_coordinated_sactions.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_coordinatedsanctions.dds rename to gfx/interface/goals/LTH/lth_coordinated_sactions.dds diff --git a/gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds b/gfx/interface/goals/LTH/lth_council_of_elrond.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds rename to gfx/interface/goals/LTH/lth_council_of_elrond.dds diff --git a/gfx/interface/goals/LTH/lth_thecouncilofquendi.dds b/gfx/interface/goals/LTH/lth_council_of_quendi.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thecouncilofquendi.dds rename to gfx/interface/goals/LTH/lth_council_of_quendi.dds diff --git a/gfx/interface/goals/LTH/lth_collectivedefenseclause.dds b/gfx/interface/goals/LTH/lth_defense_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_collectivedefenseclause.dds rename to gfx/interface/goals/LTH/lth_defense_deal.dds diff --git a/gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds b/gfx/interface/goals/LTH/lth_defense_guardians.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds rename to gfx/interface/goals/LTH/lth_defense_guardians.dds diff --git a/gfx/interface/goals/LTH/lth_martialalliance.dds b/gfx/interface/goals/LTH/lth_defensive_alliance.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_martialalliance.dds rename to gfx/interface/goals/LTH/lth_defensive_alliance.dds diff --git a/gfx/interface/goals/LTH/lth_defensiveperimeter.dds b/gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_defensiveperimeter.dds rename to gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds diff --git a/gfx/interface/goals/LTH/lth_organizetributaries.dds b/gfx/interface/goals/LTH/lth_demand_tribute.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_organizetributaries.dds rename to gfx/interface/goals/LTH/lth_demand_tribute.dds diff --git a/gfx/interface/goals/LTH/lth_preemtptivedepartures.dds b/gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_preemtptivedepartures.dds rename to gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds diff --git a/gfx/interface/goals/LTH/lth_thelaststand.dds b/gfx/interface/goals/LTH/lth_desperate_last_stand.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thelaststand.dds rename to gfx/interface/goals/LTH/lth_desperate_last_stand.dds diff --git a/gfx/interface/goals/LTH/lth_deterrence.dds b/gfx/interface/goals/LTH/lth_deterrence_castle.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_deterrence.dds rename to gfx/interface/goals/LTH/lth_deterrence_castle.dds diff --git a/gfx/interface/goals/LTH/lth_maintainalliances.dds b/gfx/interface/goals/LTH/lth_diplomacy_focus.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_maintainalliances.dds rename to gfx/interface/goals/LTH/lth_diplomacy_focus.dds diff --git a/gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds b/gfx/interface/goals/LTH/lth_discord_lecture.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds rename to gfx/interface/goals/LTH/lth_discord_lecture.dds diff --git a/gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds b/gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds rename to gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds diff --git a/gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds b/gfx/interface/goals/LTH/lth_dol_guldur_flag.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds rename to gfx/interface/goals/LTH/lth_dol_guldur_flag.dds diff --git a/gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds b/gfx/interface/goals/LTH/lth_dove_breaking_free.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds rename to gfx/interface/goals/LTH/lth_dove_breaking_free.dds diff --git a/gfx/interface/goals/LTH/lth_liftthelawofisolation.dds b/gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_liftthelawofisolation.dds rename to gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds diff --git a/gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds b/gfx/interface/goals/LTH/lth_elden_days_tree.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds rename to gfx/interface/goals/LTH/lth_elden_days_tree.dds diff --git a/gfx/interface/goals/LTH/lth_electedrepresentatives.dds b/gfx/interface/goals/LTH/lth_election_ballot.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_electedrepresentatives.dds rename to gfx/interface/goals/LTH/lth_election_ballot.dds diff --git a/gfx/interface/goals/LTH/lth_theneworder.dds b/gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theneworder.dds rename to gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds diff --git a/gfx/interface/goals/LTH/lth_foeturnedfriend.dds b/gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_foeturnedfriend.dds rename to gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds diff --git a/gfx/interface/goals/LTH/lth_silvanelitewarriors.dds b/gfx/interface/goals/LTH/lth_elite_special_forces.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_silvanelitewarriors.dds rename to gfx/interface/goals/LTH/lth_elite_special_forces.dds diff --git a/gfx/interface/goals/LTH/lth_theelvenalliance.dds b/gfx/interface/goals/LTH/lth_elven_alliance.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theelvenalliance.dds rename to gfx/interface/goals/LTH/lth_elven_alliance.dds diff --git a/gfx/interface/goals/LTH/lth_thenoldorelite.dds b/gfx/interface/goals/LTH/lth_elven_aristocrats.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thenoldorelite.dds rename to gfx/interface/goals/LTH/lth_elven_aristocrats.dds diff --git a/gfx/interface/goals/LTH/lth_marchinunison.dds b/gfx/interface/goals/LTH/lth_elven_army.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_marchinunison.dds rename to gfx/interface/goals/LTH/lth_elven_army.dds diff --git a/gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds b/gfx/interface/goals/LTH/lth_elven_army_dark.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds rename to gfx/interface/goals/LTH/lth_elven_army_dark.dds diff --git a/gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds b/gfx/interface/goals/LTH/lth_elven_army_training.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds rename to gfx/interface/goals/LTH/lth_elven_army_training.dds diff --git a/gfx/interface/goals/LTH/lth_elvencavalry.dds b/gfx/interface/goals/LTH/lth_elven_cavalry.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elvencavalry.dds rename to gfx/interface/goals/LTH/lth_elven_cavalry.dds diff --git a/gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds b/gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds rename to gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds diff --git a/gfx/interface/goals/LTH/lth_unlikelyallies.dds b/gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_unlikelyallies.dds rename to gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds diff --git a/gfx/interface/goals/LTH/lth_unityindivision.dds b/gfx/interface/goals/LTH/lth_elven_factions_divided.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_unityindivision.dds rename to gfx/interface/goals/LTH/lth_elven_factions_divided.dds diff --git a/gfx/interface/goals/LTH/lth_unitethefactions.dds b/gfx/interface/goals/LTH/lth_elven_factions_united.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_unitethefactions.dds rename to gfx/interface/goals/LTH/lth_elven_factions_united.dds diff --git a/gfx/interface/goals/LTH/lth_consulttheelves.dds b/gfx/interface/goals/LTH/lth_elven_lords_consult.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_consulttheelves.dds rename to gfx/interface/goals/LTH/lth_elven_lords_consult.dds diff --git a/gfx/interface/goals/LTH/lth_publiccelebrations.dds b/gfx/interface/goals/LTH/lth_elven_party_celebrations.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_publiccelebrations.dds rename to gfx/interface/goals/LTH/lth_elven_party_celebrations.dds diff --git a/gfx/interface/goals/LTH/lth_ridersofthenaith.dds b/gfx/interface/goals/LTH/lth_elven_riders_naith.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_ridersofthenaith.dds rename to gfx/interface/goals/LTH/lth_elven_riders_naith.dds diff --git a/gfx/interface/goals/LTH/lth_elvensupremacy.dds b/gfx/interface/goals/LTH/lth_elven_supremacy.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elvensupremacy.dds rename to gfx/interface/goals/LTH/lth_elven_supremacy.dds diff --git a/gfx/interface/goals/LTH/lth_elvenweaponry.dds b/gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elvenweaponry.dds rename to gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds diff --git a/gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds b/gfx/interface/goals/LTH/lth_elven_warrior_spear.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds rename to gfx/interface/goals/LTH/lth_elven_warrior_spear.dds diff --git a/gfx/interface/goals/LTH/lth_beaconofhope.dds b/gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_beaconofhope.dds rename to gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds diff --git a/gfx/interface/goals/LTH/lth_allywithmen.dds b/gfx/interface/goals/LTH/lth_elves_men_handshake.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_allywithmen.dds rename to gfx/interface/goals/LTH/lth_elves_men_handshake.dds diff --git a/gfx/interface/goals/LTH/lth_theorcrightsdebate.dds b/gfx/interface/goals/LTH/lth_elves_orcs_debate.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theorcrightsdebate.dds rename to gfx/interface/goals/LTH/lth_elves_orcs_debate.dds diff --git a/gfx/interface/goals/LTH/lth_alignthenobility.dds b/gfx/interface/goals/LTH/lth_elves_shaking_hands.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_alignthenobility.dds rename to gfx/interface/goals/LTH/lth_elves_shaking_hands.dds diff --git a/gfx/interface/goals/LTH/lth_theemissariesguild.dds b/gfx/interface/goals/LTH/lth_emissaries_guild.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theemissariesguild.dds rename to gfx/interface/goals/LTH/lth_emissaries_guild.dds diff --git a/gfx/interface/goals/LTH/lth_endurethedarkness.dds b/gfx/interface/goals/LTH/lth_endure_the_darkness.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_endurethedarkness.dds rename to gfx/interface/goals/LTH/lth_endure_the_darkness.dds diff --git a/gfx/interface/goals/LTH/lth_unionofequals.dds b/gfx/interface/goals/LTH/lth_equal_union.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_unionofequals.dds rename to gfx/interface/goals/LTH/lth_equal_union.dds diff --git a/gfx/interface/goals/LTH/lth_tacklethedwarves.dds b/gfx/interface/goals/LTH/lth_erebor_skull.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tacklethedwarves.dds rename to gfx/interface/goals/LTH/lth_erebor_skull.dds diff --git a/gfx/interface/goals/LTH/lth_theeternaldominion.dds b/gfx/interface/goals/LTH/lth_eternal_dominion.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theeternaldominion.dds rename to gfx/interface/goals/LTH/lth_eternal_dominion.dds diff --git a/gfx/interface/goals/LTH/lth_eternalwisdom.dds b/gfx/interface/goals/LTH/lth_eternal_wisdom.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_eternalwisdom.dds rename to gfx/interface/goals/LTH/lth_eternal_wisdom.dds diff --git a/gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds b/gfx/interface/goals/LTH/lth_evil_galadriel.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds rename to gfx/interface/goals/LTH/lth_evil_galadriel.dds diff --git a/gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds b/gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds rename to gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds diff --git a/gfx/interface/goals/LTH/lth_executivevigour.dds b/gfx/interface/goals/LTH/lth_executive_vigour.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_executivevigour.dds rename to gfx/interface/goals/LTH/lth_executive_vigour.dds diff --git a/gfx/interface/goals/LTH/lth_nonelvencitizenship.dds b/gfx/interface/goals/LTH/lth_extend_citizenship.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_nonelvencitizenship.dds rename to gfx/interface/goals/LTH/lth_extend_citizenship.dds diff --git a/gfx/interface/goals/LTH/lth_thefateofmortals.dds b/gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thefateofmortals.dds rename to gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds diff --git a/gfx/interface/goals/LTH/lth_supportthefellowship.dds b/gfx/interface/goals/LTH/lth_fellowship_of_ring.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_supportthefellowship.dds rename to gfx/interface/goals/LTH/lth_fellowship_of_ring.dds diff --git a/gfx/interface/goals/LTH/lth_thefestivalofunity.dds b/gfx/interface/goals/LTH/lth_festival_of_unity.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thefestivalofunity.dds rename to gfx/interface/goals/LTH/lth_festival_of_unity.dds diff --git a/gfx/interface/goals/LTH/lth_resourcestorage.dds b/gfx/interface/goals/LTH/lth_food_resource_storage.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_resourcestorage.dds rename to gfx/interface/goals/LTH/lth_food_resource_storage.dds diff --git a/gfx/interface/goals/LTH/lth_forsaketheelves.dds b/gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_forsaketheelves.dds rename to gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds diff --git a/gfx/interface/goals/LTH/lth_strengthenfortifications.dds b/gfx/interface/goals/LTH/lth_fortifications_castle.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_strengthenfortifications.dds rename to gfx/interface/goals/LTH/lth_fortifications_castle.dds diff --git a/gfx/interface/goals/LTH/lth_minglewiththemortals.dds b/gfx/interface/goals/LTH/lth_friendly_skeleton.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_minglewiththemortals.dds rename to gfx/interface/goals/LTH/lth_friendly_skeleton.dds diff --git a/gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds b/gfx/interface/goals/LTH/lth_frodo_valinor.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds rename to gfx/interface/goals/LTH/lth_frodo_valinor.dds diff --git a/gfx/interface/goals/LTH/lth_galadriel.dds b/gfx/interface/goals/LTH/lth_galadriel.dds new file mode 100644 index 000000000..3e33a7b31 Binary files /dev/null and b/gfx/interface/goals/LTH/lth_galadriel.dds differ diff --git a/gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds b/gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds rename to gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds diff --git a/gfx/interface/goals/LTH/lth_theunholyalliance.dds b/gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theunholyalliance.dds rename to gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds diff --git a/gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds b/gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds rename to gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds diff --git a/gfx/interface/goals/LTH/lth_harmonicascendancy.dds b/gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_harmonicascendancy.dds rename to gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds diff --git a/gfx/interface/goals/LTH/lth_galadrielsvision.dds b/gfx/interface/goals/LTH/lth_galadriel_edicts.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_galadrielsvision.dds rename to gfx/interface/goals/LTH/lth_galadriel_edicts.dds diff --git a/gfx/interface/goals/LTH/lth_fairastheseaandsun.dds b/gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_fairastheseaandsun.dds rename to gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds diff --git a/gfx/interface/goals/LTH/lth_immortalendurance.dds b/gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_immortalendurance.dds rename to gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds diff --git a/gfx/interface/goals/LTH/lth_gal_mirror.dds b/gfx/interface/goals/LTH/lth_galadriel_mirror.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_gal_mirror.dds rename to gfx/interface/goals/LTH/lth_galadriel_mirror.dds diff --git a/gfx/interface/goals/LTH/lth_galadrielspowers.dds b/gfx/interface/goals/LTH/lth_galadriel_powers.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_galadrielspowers.dds rename to gfx/interface/goals/LTH/lth_galadriel_powers.dds diff --git a/gfx/interface/goals/LTH/lth_queenofthedawn.dds b/gfx/interface/goals/LTH/lth_galadriel_queen.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_queenofthedawn.dds rename to gfx/interface/goals/LTH/lth_galadriel_queen.dds diff --git a/gfx/interface/goals/LTH/lth_resistthedarkness.dds b/gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_resistthedarkness.dds rename to gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds diff --git a/gfx/interface/goals/LTH/lth_cooperationefforts.dds b/gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_cooperationefforts.dds rename to gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds diff --git a/gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds b/gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds rename to gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds diff --git a/gfx/interface/goals/LTH/lth_lothlorienarchers.dds b/gfx/interface/goals/LTH/lth_generic_archers.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_lothlorienarchers.dds rename to gfx/interface/goals/LTH/lth_generic_archers.dds diff --git a/gfx/interface/goals/LTH/lth_bladesoftheeldar.dds b/gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_bladesoftheeldar.dds rename to gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds diff --git a/gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds b/gfx/interface/goals/LTH/lth_gondor_skull.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds rename to gfx/interface/goals/LTH/lth_gondor_skull.dds diff --git a/gfx/interface/goals/LTH/lth_establishagraindole.dds b/gfx/interface/goals/LTH/lth_grain_dole.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_establishagraindole.dds rename to gfx/interface/goals/LTH/lth_grain_dole.dds diff --git a/gfx/interface/goals/LTH/lth_supportthegreycompany.dds b/gfx/interface/goals/LTH/lth_grey_company_warriors.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_supportthegreycompany.dds rename to gfx/interface/goals/LTH/lth_grey_company_warriors.dds diff --git a/gfx/interface/goals/LTH/lth_anelvenfellowship.dds b/gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_anelvenfellowship.dds rename to gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds diff --git a/gfx/interface/goals/LTH/lth_thechildrenofluthien.dds b/gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thechildrenofluthien.dds rename to gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds diff --git a/gfx/interface/goals/LTH/lth_echoesofrivendell.dds b/gfx/interface/goals/LTH/lth_halfelves_cooperation.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_echoesofrivendell.dds rename to gfx/interface/goals/LTH/lth_halfelves_cooperation.dds diff --git a/gfx/interface/goals/LTH/lth_diorthefair.dds b/gfx/interface/goals/LTH/lth_halfelves_dior.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_diorthefair.dds rename to gfx/interface/goals/LTH/lth_halfelves_dior.dds diff --git a/gfx/interface/goals/LTH/lth_earendilthemariner.dds b/gfx/interface/goals/LTH/lth_halfelves_earendil.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_earendilthemariner.dds rename to gfx/interface/goals/LTH/lth_halfelves_earendil.dds diff --git a/gfx/interface/goals/LTH/lth_elrondtheperedhil.dds b/gfx/interface/goals/LTH/lth_halfelves_elrond.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elrondtheperedhil.dds rename to gfx/interface/goals/LTH/lth_halfelves_elrond.dds diff --git a/gfx/interface/goals/LTH/lth_elrosofnumenor.dds b/gfx/interface/goals/LTH/lth_halfelves_elros.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elrosofnumenor.dds rename to gfx/interface/goals/LTH/lth_halfelves_elros.dds diff --git a/gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds b/gfx/interface/goals/LTH/lth_halfelves_emblem.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds rename to gfx/interface/goals/LTH/lth_halfelves_emblem.dds diff --git a/gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds b/gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds rename to gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds diff --git a/gfx/interface/goals/LTH/lth_atasteofempire.dds b/gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_atasteofempire.dds rename to gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds diff --git a/gfx/interface/goals/LTH/lth_seizetheonering.dds b/gfx/interface/goals/LTH/lth_hand_taking_ring.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_seizetheonering.dds rename to gfx/interface/goals/LTH/lth_hand_taking_ring.dds diff --git a/gfx/interface/goals/LTH/lth_bondsofnature.dds b/gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_bondsofnature.dds rename to gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds diff --git a/gfx/interface/goals/LTH/lth_aidtotheweary.dds b/gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_aidtotheweary.dds rename to gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds diff --git a/gfx/interface/goals/LTH/lth_forgealliances.dds b/gfx/interface/goals/LTH/lth_handshake_cooperation.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_forgealliances.dds rename to gfx/interface/goals/LTH/lth_handshake_cooperation.dds diff --git a/gfx/interface/goals/LTH/lth_elvenharmony.dds b/gfx/interface/goals/LTH/lth_harmony_unity.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elvenharmony.dds rename to gfx/interface/goals/LTH/lth_harmony_unity.dds diff --git a/gfx/interface/goals/LTH/lth_hegemony.dds b/gfx/interface/goals/LTH/lth_hegemony_crown.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_hegemony.dds rename to gfx/interface/goals/LTH/lth_hegemony_crown.dds diff --git a/gfx/interface/goals/LTH/lth_thehiddenrealm.dds b/gfx/interface/goals/LTH/lth_hidden_elven_realm.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thehiddenrealm.dds rename to gfx/interface/goals/LTH/lth_hidden_elven_realm.dds diff --git a/gfx/interface/goals/LTH/lth_northboundinvasion.dds b/gfx/interface/goals/LTH/lth_invasion_northbound.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_northboundinvasion.dds rename to gfx/interface/goals/LTH/lth_invasion_northbound.dds diff --git a/gfx/interface/goals/LTH/lth_investfocus.dds b/gfx/interface/goals/LTH/lth_investment.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_investfocus.dds rename to gfx/interface/goals/LTH/lth_investment.dds diff --git a/gfx/interface/goals/LTH/lth_safeguardtheelves.dds b/gfx/interface/goals/LTH/lth_keep_elves_safe.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_safeguardtheelves.dds rename to gfx/interface/goals/LTH/lth_keep_elves_safe.dds diff --git a/gfx/interface/goals/LTH/lth_lorekeepersguild.dds b/gfx/interface/goals/LTH/lth_knowledge_books_guild.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_lorekeepersguild.dds rename to gfx/interface/goals/LTH/lth_knowledge_books_guild.dds diff --git a/gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds b/gfx/interface/goals/LTH/lth_labour_blacksmith.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds rename to gfx/interface/goals/LTH/lth_labour_blacksmith.dds diff --git a/gfx/interface/goals/LTH/lth_thelasteldar.dds b/gfx/interface/goals/LTH/lth_last_eldar.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thelasteldar.dds rename to gfx/interface/goals/LTH/lth_last_eldar.dds diff --git a/gfx/interface/goals/LTH/lth_thecallofvalinor.dds b/gfx/interface/goals/LTH/lth_leave_to_valinor.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thecallofvalinor.dds rename to gfx/interface/goals/LTH/lth_leave_to_valinor.dds diff --git a/gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds b/gfx/interface/goals/LTH/lth_library_caras_galadhon.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds rename to gfx/interface/goals/LTH/lth_library_caras_galadhon.dds diff --git a/gfx/interface/goals/LTH/lth_limitedintervention.dds b/gfx/interface/goals/LTH/lth_limited_intervention.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_limitedintervention.dds rename to gfx/interface/goals/LTH/lth_limited_intervention.dds diff --git a/gfx/interface/goals/LTH/lth_invitecirdan.dds b/gfx/interface/goals/LTH/lth_lindon_cirdan.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_invitecirdan.dds rename to gfx/interface/goals/LTH/lth_lindon_cirdan.dds diff --git a/gfx/interface/goals/LTH/lth_localautonomy.dds b/gfx/interface/goals/LTH/lth_local_autonomy.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_localautonomy.dds rename to gfx/interface/goals/LTH/lth_local_autonomy.dds diff --git a/gfx/interface/goals/LTH/lth_sealtheborders.dds b/gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sealtheborders.dds rename to gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds diff --git a/gfx/interface/goals/LTH/lth_agestureofgoodwill.dds b/gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_agestureofgoodwill.dds rename to gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds diff --git a/gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds b/gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds rename to gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds diff --git a/gfx/interface/goals/LTH/lth_ourowninitiative.dds b/gfx/interface/goals/LTH/lth_lothlorien_flag.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_ourowninitiative.dds rename to gfx/interface/goals/LTH/lth_lothlorien_flag.dds diff --git a/gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds b/gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds rename to gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds diff --git a/gfx/interface/goals/LTH/lth_sendaidtominastirith.dds b/gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sendaidtominastirith.dds rename to gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds diff --git a/gfx/interface/goals/LTH/lth_senddelegationtomoria.dds b/gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_senddelegationtomoria.dds rename to gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds diff --git a/gfx/interface/goals/LTH/lth_unitethecause.dds b/gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_unitethecause.dds rename to gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds diff --git a/gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds b/gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds rename to gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds diff --git a/gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds b/gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds rename to gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds diff --git a/gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds b/gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds rename to gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds diff --git a/gfx/interface/goals/LTH/lth_preemptivemeasures.dds b/gfx/interface/goals/LTH/lth_map_measures.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_preemptivemeasures.dds rename to gfx/interface/goals/LTH/lth_map_measures.dds diff --git a/gfx/interface/goals/LTH/lth_meritbasedadvancement.dds b/gfx/interface/goals/LTH/lth_meritocracy_advancement.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_meritbasedadvancement.dds rename to gfx/interface/goals/LTH/lth_meritocracy_advancement.dds diff --git a/gfx/interface/goals/LTH/lth_galadrielsmirror.dds b/gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_galadrielsmirror.dds rename to gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds diff --git a/gfx/interface/goals/LTH/lth_mirrorupgrade.dds b/gfx/interface/goals/LTH/lth_mirror_upgrade.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_mirrorupgrade.dds rename to gfx/interface/goals/LTH/lth_mirror_upgrade.dds diff --git a/gfx/interface/goals/LTH/lth_theminesofmoria.dds b/gfx/interface/goals/LTH/lth_moria_flag.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theminesofmoria.dds rename to gfx/interface/goals/LTH/lth_moria_flag.dds diff --git a/gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds b/gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds rename to gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds diff --git a/gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds b/gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds rename to gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds diff --git a/gfx/interface/goals/LTH/lth_wanderersofnandor.dds b/gfx/interface/goals/LTH/lth_nandor_emblem.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_wanderersofnandor.dds rename to gfx/interface/goals/LTH/lth_nandor_emblem.dds diff --git a/gfx/interface/goals/LTH/lth_empowerhaldir.dds b/gfx/interface/goals/LTH/lth_nandor_haldir.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_empowerhaldir.dds rename to gfx/interface/goals/LTH/lth_nandor_haldir.dds diff --git a/gfx/interface/goals/LTH/lth_thenandorheritage.dds b/gfx/interface/goals/LTH/lth_nandor_hands.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thenandorheritage.dds rename to gfx/interface/goals/LTH/lth_nandor_hands.dds diff --git a/gfx/interface/goals/LTH/lth_guardiansofthewild.dds b/gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_guardiansofthewild.dds rename to gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds diff --git a/gfx/interface/goals/LTH/lth_discovernewrealms.dds b/gfx/interface/goals/LTH/lth_nandor_map.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_discovernewrealms.dds rename to gfx/interface/goals/LTH/lth_nandor_map.dds diff --git a/gfx/interface/goals/LTH/lth_thesongofnimrodel.dds b/gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thesongofnimrodel.dds rename to gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds diff --git a/gfx/interface/goals/LTH/lth_eaglesofmanwe.dds b/gfx/interface/goals/LTH/lth_nature_eagles.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_eaglesofmanwe.dds rename to gfx/interface/goals/LTH/lth_nature_eagles.dds diff --git a/gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds b/gfx/interface/goals/LTH/lth_nature_fellbeast.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds rename to gfx/interface/goals/LTH/lth_nature_fellbeast.dds diff --git a/gfx/interface/goals/LTH/lth_theforestbetween.dds b/gfx/interface/goals/LTH/lth_nature_forest_between.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theforestbetween.dds rename to gfx/interface/goals/LTH/lth_nature_forest_between.dds diff --git a/gfx/interface/goals/LTH/lth_thegreatbeasts.dds b/gfx/interface/goals/LTH/lth_nature_great_beasts.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thegreatbeasts.dds rename to gfx/interface/goals/LTH/lth_nature_great_beasts.dds diff --git a/gfx/interface/goals/LTH/lth_wrathoftheforests.dds b/gfx/interface/goals/LTH/lth_nature_spiders.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_wrathoftheforests.dds rename to gfx/interface/goals/LTH/lth_nature_spiders.dds diff --git a/gfx/interface/goals/LTH/lth_spidersofungoliant.dds b/gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_spidersofungoliant.dds rename to gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds diff --git a/gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds b/gfx/interface/goals/LTH/lth_nature_treebeard.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds rename to gfx/interface/goals/LTH/lth_nature_treebeard.dds diff --git a/gfx/interface/goals/LTH/lth_dismantlethenazgul.dds b/gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_dismantlethenazgul.dds rename to gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds diff --git a/gfx/interface/goals/LTH/lth_theenigmaofnenya.dds b/gfx/interface/goals/LTH/lth_nenya_enigma.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theenigmaofnenya.dds rename to gfx/interface/goals/LTH/lth_nenya_enigma.dds diff --git a/gfx/interface/goals/LTH/lth_tworingsbecomethone.dds b/gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tworingsbecomethone.dds rename to gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds diff --git a/gfx/interface/goals/LTH/lth_ringenchantments.dds b/gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_ringenchantments.dds rename to gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds diff --git a/gfx/interface/goals/LTH/lth_commemorategondolin.dds b/gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_commemorategondolin.dds rename to gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds diff --git a/gfx/interface/goals/LTH/lth_greatestofwarriors.dds b/gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_greatestofwarriors.dds rename to gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds diff --git a/gfx/interface/goals/LTH/lth_legacyofthenoldor.dds b/gfx/interface/goals/LTH/lth_noldor_emblem.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_legacyofthenoldor.dds rename to gfx/interface/goals/LTH/lth_noldor_emblem.dds diff --git a/gfx/interface/goals/LTH/lth_princessofthenoldor.dds b/gfx/interface/goals/LTH/lth_noldor_galadriel.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_princessofthenoldor.dds rename to gfx/interface/goals/LTH/lth_noldor_galadriel.dds diff --git a/gfx/interface/goals/LTH/lth_deepknowledge.dds b/gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_deepknowledge.dds rename to gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds diff --git a/gfx/interface/goals/LTH/lth_metalworkandjewellery.dds b/gfx/interface/goals/LTH/lth_noldor_metalwork.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_metalworkandjewellery.dds rename to gfx/interface/goals/LTH/lth_noldor_metalwork.dds diff --git a/gfx/interface/goals/LTH/lth_purityandbrilliance.dds b/gfx/interface/goals/LTH/lth_noldor_purity.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_purityandbrilliance.dds rename to gfx/interface/goals/LTH/lth_noldor_purity.dds diff --git a/gfx/interface/goals/LTH/lth_thequeensguard.dds b/gfx/interface/goals/LTH/lth_noldor_queens_guard.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thequeensguard.dds rename to gfx/interface/goals/LTH/lth_noldor_queens_guard.dds diff --git a/gfx/interface/goals/LTH/lth_thereawakening.dds b/gfx/interface/goals/LTH/lth_noldor_reawakening.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thereawakening.dds rename to gfx/interface/goals/LTH/lth_noldor_reawakening.dds diff --git a/gfx/interface/goals/LTH/lth_skysoilandwater.dds b/gfx/interface/goals/LTH/lth_noldor_silmarils.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_skysoilandwater.dds rename to gfx/interface/goals/LTH/lth_noldor_silmarils.dds diff --git a/gfx/interface/goals/LTH/lth_theoathoffeanor.dds b/gfx/interface/goals/LTH/lth_oath_of_feanor.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theoathoffeanor.dds rename to gfx/interface/goals/LTH/lth_oath_of_feanor.dds diff --git a/gfx/interface/goals/LTH/lth_theshadowswhisper.dds b/gfx/interface/goals/LTH/lth_one_ring_shadow.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theshadowswhisper.dds rename to gfx/interface/goals/LTH/lth_one_ring_shadow.dds diff --git a/gfx/interface/goals/LTH/lth_anewelvenlanguage.dds b/gfx/interface/goals/LTH/lth_open_book.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_anewelvenlanguage.dds rename to gfx/interface/goals/LTH/lth_open_book.dds diff --git a/gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds b/gfx/interface/goals/LTH/lth_open_books_culture.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds rename to gfx/interface/goals/LTH/lth_open_books_culture.dds diff --git a/gfx/interface/goals/LTH/lth_anecessaryevil.dds b/gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_anecessaryevil.dds rename to gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds diff --git a/gfx/interface/goals/LTH/lth_coordinatedresistance.dds b/gfx/interface/goals/LTH/lth_orc_contained_resistance.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_coordinatedresistance.dds rename to gfx/interface/goals/LTH/lth_orc_contained_resistance.dds diff --git a/gfx/interface/goals/LTH/lth_prisonervivisections.dds b/gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_prisonervivisections.dds rename to gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds diff --git a/gfx/interface/goals/LTH/lth_thegiftofservitude.dds b/gfx/interface/goals/LTH/lth_orc_servitude.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thegiftofservitude.dds rename to gfx/interface/goals/LTH/lth_orc_servitude.dds diff --git a/gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds b/gfx/interface/goals/LTH/lth_orc_warrior.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds rename to gfx/interface/goals/LTH/lth_orc_warrior.dds diff --git a/gfx/interface/goals/LTH/lth_associatewithnonelves.dds b/gfx/interface/goals/LTH/lth_other_people_association.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_associatewithnonelves.dds rename to gfx/interface/goals/LTH/lth_other_people_association.dds diff --git a/gfx/interface/goals/LTH/lth_thepeasantassembly.dds b/gfx/interface/goals/LTH/lth_peasantry.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thepeasantassembly.dds rename to gfx/interface/goals/LTH/lth_peasantry.dds diff --git a/gfx/interface/goals/LTH/lth_bideourtime.dds b/gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_bideourtime.dds rename to gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds diff --git a/gfx/interface/goals/LTH/lth_proposalsandresolutions.dds b/gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_proposalsandresolutions.dds rename to gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds diff --git a/gfx/interface/goals/LTH/lth_atanycost.dds b/gfx/interface/goals/LTH/lth_protect_at_any_cost.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_atanycost.dds rename to gfx/interface/goals/LTH/lth_protect_at_any_cost.dds diff --git a/gfx/interface/goals/LTH/lth_provincialcouncils.dds b/gfx/interface/goals/LTH/lth_provincial_councils.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_provincialcouncils.dds rename to gfx/interface/goals/LTH/lth_provincial_councils.dds diff --git a/gfx/interface/goals/LTH/lth_allianceoflight.dds b/gfx/interface/goals/LTH/lth_raised_fist_blue.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_allianceoflight.dds rename to gfx/interface/goals/LTH/lth_raised_fist_blue.dds diff --git a/gfx/interface/goals/LTH/lth_theopendoorsedict.dds b/gfx/interface/goals/LTH/lth_remove_borders.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theopendoorsedict.dds rename to gfx/interface/goals/LTH/lth_remove_borders.dds diff --git a/gfx/interface/goals/LTH/lth_researchcooperation.dds b/gfx/interface/goals/LTH/lth_research_cooperation.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_researchcooperation.dds rename to gfx/interface/goals/LTH/lth_research_cooperation.dds diff --git a/gfx/interface/goals/LTH/lth_leadbyexample.dds b/gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_leadbyexample.dds rename to gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds diff --git a/gfx/interface/goals/LTH/lth_nenyasprotection.dds b/gfx/interface/goals/LTH/lth_ring_nenya.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_nenyasprotection.dds rename to gfx/interface/goals/LTH/lth_ring_nenya.dds diff --git a/gfx/interface/goals/LTH/echoesofeldar.dds b/gfx/interface/goals/LTH/lth_ring_nenya_archive.dds similarity index 100% rename from gfx/interface/goals/LTH/echoesofeldar.dds rename to gfx/interface/goals/LTH/lth_ring_nenya_archive.dds diff --git a/gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds b/gfx/interface/goals/LTH/lth_river_anduin.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds rename to gfx/interface/goals/LTH/lth_river_anduin.dds diff --git a/gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds b/gfx/interface/goals/LTH/lth_river_ships.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds rename to gfx/interface/goals/LTH/lth_river_ships.dds diff --git a/gfx/interface/goals/LTH/lth_commercialnavigation.dds b/gfx/interface/goals/LTH/lth_river_ships_navigation.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_commercialnavigation.dds rename to gfx/interface/goals/LTH/lth_river_ships_navigation.dds diff --git a/gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds b/gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds rename to gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds diff --git a/gfx/interface/goals/LTH/lth_safehaven.dds b/gfx/interface/goals/LTH/lth_safe_haven_defense.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_safehaven.dds rename to gfx/interface/goals/LTH/lth_safe_haven_defense.dds diff --git a/gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds b/gfx/interface/goals/LTH/lth_safeguard_food_bread.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds rename to gfx/interface/goals/LTH/lth_safeguard_food_bread.dds diff --git a/gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds b/gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds rename to gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds diff --git a/gfx/interface/goals/LTH/lth_givesauronthering.dds b/gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_givesauronthering.dds rename to gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds diff --git a/gfx/interface/goals/LTH/lth_celebornsexile.dds b/gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_celebornsexile.dds rename to gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds diff --git a/gfx/interface/goals/LTH/lth_galadrielsfarewell.dds b/gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_galadrielsfarewell.dds rename to gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds diff --git a/gfx/interface/goals/LTH/lth_mendtheschism.dds b/gfx/interface/goals/LTH/lth_schism_mended.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_mendtheschism.dds rename to gfx/interface/goals/LTH/lth_schism_mended.dds diff --git a/gfx/interface/goals/LTH/lth_thegreatschism.dds b/gfx/interface/goals/LTH/lth_schism_separated.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thegreatschism.dds rename to gfx/interface/goals/LTH/lth_schism_separated.dds diff --git a/gfx/interface/goals/LTH/lth_preservationofknowledge.dds b/gfx/interface/goals/LTH/lth_scribe_knowledge.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_preservationofknowledge.dds rename to gfx/interface/goals/LTH/lth_scribe_knowledge.dds diff --git a/gfx/interface/goals/LTH/lth_selectiveempowerement.dds b/gfx/interface/goals/LTH/lth_select_advisors.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_selectiveempowerement.dds rename to gfx/interface/goals/LTH/lth_select_advisors.dds diff --git a/gfx/interface/goals/LTH/lth_asharedcause.dds b/gfx/interface/goals/LTH/lth_shared_cause_hands.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_asharedcause.dds rename to gfx/interface/goals/LTH/lth_shared_cause_hands.dds diff --git a/gfx/interface/goals/LTH/lth_learnfromthestrongest.dds b/gfx/interface/goals/LTH/lth_shared_research_knowledge.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_learnfromthestrongest.dds rename to gfx/interface/goals/LTH/lth_shared_research_knowledge.dds diff --git a/gfx/interface/goals/LTH/lth_anewbeginning.dds b/gfx/interface/goals/LTH/lth_shattered_crown_red.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_anewbeginning.dds rename to gfx/interface/goals/LTH/lth_shattered_crown_red.dds diff --git a/gfx/interface/goals/LTH/lth_aegisoflight.dds b/gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_aegisoflight.dds rename to gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds diff --git a/gfx/interface/goals/LTH/lth_silverthornarrows.dds b/gfx/interface/goals/LTH/lth_silverthorn_arrows.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_silverthornarrows.dds rename to gfx/interface/goals/LTH/lth_silverthorn_arrows.dds diff --git a/gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds b/gfx/interface/goals/LTH/lth_sindar_celeborn.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds rename to gfx/interface/goals/LTH/lth_sindar_celeborn.dds diff --git a/gfx/interface/goals/LTH/lth_refugeofdoriath.dds b/gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_refugeofdoriath.dds rename to gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds diff --git a/gfx/interface/goals/LTH/lth_harmonyofthesindar.dds b/gfx/interface/goals/LTH/lth_sindar_emblem.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_harmonyofthesindar.dds rename to gfx/interface/goals/LTH/lth_sindar_emblem.dds diff --git a/gfx/interface/goals/LTH/lth_affiliatewithlindon.dds b/gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_affiliatewithlindon.dds rename to gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds diff --git a/gfx/interface/goals/LTH/lth_thegirdleofmelian.dds b/gfx/interface/goals/LTH/lth_sindar_melian.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thegirdleofmelian.dds rename to gfx/interface/goals/LTH/lth_sindar_melian.dds diff --git a/gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds b/gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds rename to gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds diff --git a/gfx/interface/goals/LTH/lth_sindarpathstalkers.dds b/gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_sindarpathstalkers.dds rename to gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds diff --git a/gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds b/gfx/interface/goals/LTH/lth_sindar_thingol.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds rename to gfx/interface/goals/LTH/lth_sindar_thingol.dds diff --git a/gfx/interface/goals/LTH/lth_burrythemintheirholes.dds b/gfx/interface/goals/LTH/lth_skulls_with_helmets.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_burrythemintheirholes.dds rename to gfx/interface/goals/LTH/lth_skulls_with_helmets.dds diff --git a/gfx/interface/goals/LTH/lth_tamingthewild.dds b/gfx/interface/goals/LTH/lth_taming_the_wild.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tamingthewild.dds rename to gfx/interface/goals/LTH/lth_taming_the_wild.dds diff --git a/gfx/interface/goals/LTH/lth_turnlindon.dds b/gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_turnlindon.dds rename to gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds diff --git a/gfx/interface/goals/LTH/lth_turnmirkwood.dds b/gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_turnmirkwood.dds rename to gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds diff --git a/gfx/interface/goals/LTH/lth_turnrivendell.dds b/gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_turnrivendell.dds rename to gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds diff --git a/gfx/interface/goals/LTH/lth_reformtaxcollection.dds b/gfx/interface/goals/LTH/lth_tax_collection_reformed.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_reformtaxcollection.dds rename to gfx/interface/goals/LTH/lth_tax_collection_reformed.dds diff --git a/gfx/interface/goals/LTH/lth_territorialdefense.dds b/gfx/interface/goals/LTH/lth_territorial_defense.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_territorialdefense.dds rename to gfx/interface/goals/LTH/lth_territorial_defense.dds diff --git a/gfx/interface/goals/LTH/lth_territorialintegration.dds b/gfx/interface/goals/LTH/lth_territorial_integration.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_territorialintegration.dds rename to gfx/interface/goals/LTH/lth_territorial_integration.dds diff --git a/gfx/interface/goals/LTH/lth_pressurethranduil.dds b/gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_pressurethranduil.dds rename to gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds diff --git a/gfx/interface/goals/LTH/lth_abolishtermlimits.dds b/gfx/interface/goals/LTH/lth_torn_treaty_paper.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_abolishtermlimits.dds rename to gfx/interface/goals/LTH/lth_torn_treaty_paper.dds diff --git a/gfx/interface/goals/LTH/lth_totalisoltation.dds b/gfx/interface/goals/LTH/lth_total_isolation_tower.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_totalisoltation.dds rename to gfx/interface/goals/LTH/lth_total_isolation_tower.dds diff --git a/gfx/interface/goals/LTH/lth_tradeagreements.dds b/gfx/interface/goals/LTH/lth_trade_agreements.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_tradeagreements.dds rename to gfx/interface/goals/LTH/lth_trade_agreements.dds diff --git a/gfx/interface/goals/LTH/lth_appointedrepresentatives.dds b/gfx/interface/goals/LTH/lth_treaty_executive_power.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_appointedrepresentatives.dds rename to gfx/interface/goals/LTH/lth_treaty_executive_power.dds diff --git a/gfx/interface/goals/LTH/lth_memberexpansion.dds b/gfx/interface/goals/LTH/lth_treaty_invitation.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_memberexpansion.dds rename to gfx/interface/goals/LTH/lth_treaty_invitation.dds diff --git a/gfx/interface/goals/LTH/lth_thetwilightgarden.dds b/gfx/interface/goals/LTH/lth_twilight_garden.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thetwilightgarden.dds rename to gfx/interface/goals/LTH/lth_twilight_garden.dds diff --git a/gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds b/gfx/interface/goals/LTH/lth_twin_hearts.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds rename to gfx/interface/goals/LTH/lth_twin_hearts.dds diff --git a/gfx/interface/goals/LTH/lth_theuntreadedpath.dds b/gfx/interface/goals/LTH/lth_untreaded_path.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theuntreadedpath.dds rename to gfx/interface/goals/LTH/lth_untreaded_path.dds diff --git a/gfx/interface/goals/LTH/lth_urbancouncils.dds b/gfx/interface/goals/LTH/lth_urban_councils.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_urbancouncils.dds rename to gfx/interface/goals/LTH/lth_urban_councils.dds diff --git a/gfx/interface/goals/LTH/lth_anewbreed.dds b/gfx/interface/goals/LTH/lth_uruk_hai_orc.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_anewbreed.dds rename to gfx/interface/goals/LTH/lth_uruk_hai_orc.dds diff --git a/gfx/interface/goals/LTH/lth_amostgenerousoffer.dds b/gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_amostgenerousoffer.dds rename to gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds diff --git a/gfx/interface/goals/LTH/lth_watersofhealing.dds b/gfx/interface/goals/LTH/lth_waters_of_healing.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_watersofhealing.dds rename to gfx/interface/goals/LTH/lth_waters_of_healing.dds diff --git a/gfx/interface/goals/LTH/lth_elvenforges.dds b/gfx/interface/goals/LTH/lth_weapon_sword_forging.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_elvenforges.dds rename to gfx/interface/goals/LTH/lth_weapon_sword_forging.dds diff --git a/gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds b/gfx/interface/goals/LTH/lth_weapons_research.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds rename to gfx/interface/goals/LTH/lth_weapons_research.dds diff --git a/gfx/interface/goals/LTH/lth_supportofthegreateagles.dds b/gfx/interface/goals/LTH/lth_white_council_eagles.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_supportofthegreateagles.dds rename to gfx/interface/goals/LTH/lth_white_council_eagles.dds diff --git a/gfx/interface/goals/LTH/lth_inviteelrond.dds b/gfx/interface/goals/LTH/lth_white_council_elrond.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_inviteelrond.dds rename to gfx/interface/goals/LTH/lth_white_council_elrond.dds diff --git a/gfx/interface/goals/LTH/lth_theelvenfleet.dds b/gfx/interface/goals/LTH/lth_white_council_fleet.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_theelvenfleet.dds rename to gfx/interface/goals/LTH/lth_white_council_fleet.dds diff --git a/gfx/interface/goals/LTH/lth_invitegaladriel.dds b/gfx/interface/goals/LTH/lth_white_council_galadriel.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_invitegaladriel.dds rename to gfx/interface/goals/LTH/lth_white_council_galadriel.dds diff --git a/gfx/interface/goals/LTH/lth_invitegandalf.dds b/gfx/interface/goals/LTH/lth_white_council_gandalf.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_invitegandalf.dds rename to gfx/interface/goals/LTH/lth_white_council_gandalf.dds diff --git a/gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds b/gfx/interface/goals/LTH/lth_white_council_meeting.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds rename to gfx/interface/goals/LTH/lth_white_council_meeting.dds diff --git a/gfx/interface/goals/LTH/lth_invitesaruman.dds b/gfx/interface/goals/LTH/lth_white_council_saruman.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_invitesaruman.dds rename to gfx/interface/goals/LTH/lth_white_council_saruman.dds diff --git a/gfx/interface/goals/LTH/lth_thewizardswisdom.dds b/gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_thewizardswisdom.dds rename to gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds diff --git a/gfx/interface/goals/LTH/lth_yavannasblessings.dds b/gfx/interface/goals/LTH/lth_yavanna.dds similarity index 100% rename from gfx/interface/goals/LTH/lth_yavannasblessings.dds rename to gfx/interface/goals/LTH/lth_yavanna.dds diff --git a/gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga b/gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga deleted file mode 100644 index df7b0c76d..000000000 Binary files a/gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga and /dev/null differ diff --git a/gfx/interface/goals/MIR/GFX_goal_radagast.tga b/gfx/interface/goals/MIR/GFX_goal_radagast.tga deleted file mode 100644 index a5538a535..000000000 Binary files a/gfx/interface/goals/MIR/GFX_goal_radagast.tga and /dev/null differ diff --git a/gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga b/gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga deleted file mode 100644 index 301299889..000000000 Binary files a/gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga and /dev/null differ diff --git a/gfx/interface/goals/MIR/GFX_goal_thranduil.tga b/gfx/interface/goals/MIR/GFX_goal_thranduil.tga deleted file mode 100644 index 23418e06c..000000000 Binary files a/gfx/interface/goals/MIR/GFX_goal_thranduil.tga and /dev/null differ diff --git a/gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds b/gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds new file mode 100644 index 000000000..cc8bf3e60 Binary files /dev/null and b/gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds differ diff --git a/gfx/interface/goals/MIR/mir_radagast_the_brown.dds b/gfx/interface/goals/MIR/mir_radagast_the_brown.dds new file mode 100644 index 000000000..3fbd9ed4e Binary files /dev/null and b/gfx/interface/goals/MIR/mir_radagast_the_brown.dds differ diff --git a/gfx/interface/goals/MIR/mir_spider_anarchy.dds b/gfx/interface/goals/MIR/mir_spider_anarchy.dds new file mode 100644 index 000000000..a5219ac90 Binary files /dev/null and b/gfx/interface/goals/MIR/mir_spider_anarchy.dds differ diff --git a/gfx/interface/goals/MIR/mir_thranduil.dds b/gfx/interface/goals/MIR/mir_thranduil.dds new file mode 100644 index 000000000..3ff1e1191 Binary files /dev/null and b/gfx/interface/goals/MIR/mir_thranduil.dds differ diff --git a/gfx/interface/goals/MOA/GFX_goal_balrog.tga b/gfx/interface/goals/MOA/GFX_goal_balrog.tga deleted file mode 100644 index f96ac0715..000000000 Binary files a/gfx/interface/goals/MOA/GFX_goal_balrog.tga and /dev/null differ diff --git a/gfx/interface/goals/MOA/moa_balrog.dds b/gfx/interface/goals/MOA/moa_balrog.dds new file mode 100644 index 000000000..7f2c170ac Binary files /dev/null and b/gfx/interface/goals/MOA/moa_balrog.dds differ diff --git a/gfx/interface/goals/MOR/GFX_goal_azog.tga b/gfx/interface/goals/MOR/GFX_goal_azog.tga deleted file mode 100644 index e39ec4cca..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_azog.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga b/gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga deleted file mode 100644 index 64ed16159..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga b/gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga deleted file mode 100644 index e3e8c0bf8..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_erebor.tga b/gfx/interface/goals/MOR/GFX_goal_erebor.tga deleted file mode 100644 index 4763f7115..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_erebor.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga b/gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga deleted file mode 100644 index 3e9112f81..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_golum.tga b/gfx/interface/goals/MOR/GFX_goal_golum.tga deleted file mode 100644 index 2ba1f96f6..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_golum.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_grapes.tga b/gfx/interface/goals/MOR/GFX_goal_grapes.tga deleted file mode 100644 index 4b974ceed..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_grapes.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_ithilien.tga b/gfx/interface/goals/MOR/GFX_goal_ithilien.tga deleted file mode 100644 index edb9f2c10..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_ithilien.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga b/gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga deleted file mode 100644 index 37cb83f20..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga b/gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga deleted file mode 100644 index 5758a3b9d..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga b/gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga deleted file mode 100644 index f8c25b521..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga b/gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga deleted file mode 100644 index 9cd61ac5e..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_stab.tga b/gfx/interface/goals/MOR/GFX_goal_stab.tga deleted file mode 100644 index bbb4a7a05..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_stab.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga b/gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga deleted file mode 100644 index 0686dd51a..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga b/gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga deleted file mode 100644 index 040dc6784..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga b/gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga deleted file mode 100644 index ef28e09a7..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga b/gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga deleted file mode 100644 index dd4865a48..000000000 Binary files a/gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_servant_of_melkor.tga b/gfx/interface/goals/MOR/GFX_servant_of_melkor.tga deleted file mode 100644 index aa6630426..000000000 Binary files a/gfx/interface/goals/MOR/GFX_servant_of_melkor.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_trolls.tga b/gfx/interface/goals/MOR/GFX_trolls.tga deleted file mode 100644 index 56f1abda3..000000000 Binary files a/gfx/interface/goals/MOR/GFX_trolls.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_dale.tga b/gfx/interface/goals/MOR/GFX_wargoal_dale.tga deleted file mode 100644 index 45539aadb..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_dale.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga b/gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga deleted file mode 100644 index ed5575e9f..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_erebor.tga b/gfx/interface/goals/MOR/GFX_wargoal_erebor.tga deleted file mode 100644 index 2a3c2282e..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_erebor.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_gondor.tga b/gfx/interface/goals/MOR/GFX_wargoal_gondor.tga deleted file mode 100644 index 59b419994..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_gondor.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_harad.tga b/gfx/interface/goals/MOR/GFX_wargoal_harad.tga deleted file mode 100644 index 042d7369f..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_harad.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_rhun.tga b/gfx/interface/goals/MOR/GFX_wargoal_rhun.tga deleted file mode 100644 index 10735f12f..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_rhun.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/GFX_wargoal_rohan.tga b/gfx/interface/goals/MOR/GFX_wargoal_rohan.tga deleted file mode 100644 index 8ee884150..000000000 Binary files a/gfx/interface/goals/MOR/GFX_wargoal_rohan.tga and /dev/null differ diff --git a/gfx/interface/goals/MOR/mor_azog_orc_revolt.dds b/gfx/interface/goals/MOR/mor_azog_orc_revolt.dds new file mode 100644 index 000000000..74e3d10f3 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_azog_orc_revolt.dds differ diff --git a/gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds b/gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds new file mode 100644 index 000000000..5f7578bf3 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds differ diff --git a/gfx/interface/goals/MOR/mor_dol_guldur_flag.dds b/gfx/interface/goals/MOR/mor_dol_guldur_flag.dds new file mode 100644 index 000000000..c53ee4924 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_dol_guldur_flag.dds differ diff --git a/gfx/interface/goals/MOR/mor_erebor_flag.dds b/gfx/interface/goals/MOR/mor_erebor_flag.dds new file mode 100644 index 000000000..23363ff66 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_erebor_flag.dds differ diff --git a/gfx/interface/goals/MOR/mor_golum.dds b/gfx/interface/goals/MOR/mor_golum.dds new file mode 100644 index 000000000..dddcefc80 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_golum.dds differ diff --git a/gfx/interface/goals/MOR/mor_grapes.dds b/gfx/interface/goals/MOR/mor_grapes.dds new file mode 100644 index 000000000..d3fb4c598 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_grapes.dds differ diff --git a/gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds b/gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds new file mode 100644 index 000000000..2e133c21c Binary files /dev/null and b/gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds differ diff --git a/gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds b/gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds new file mode 100644 index 000000000..bdd0e27dd Binary files /dev/null and b/gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds differ diff --git a/gfx/interface/goals/MOR/mor_mordor_landscape.dds b/gfx/interface/goals/MOR/mor_mordor_landscape.dds new file mode 100644 index 000000000..90a0d8c40 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_mordor_landscape.dds differ diff --git a/gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds b/gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds new file mode 100644 index 000000000..0b510cde4 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds differ diff --git a/gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds b/gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds new file mode 100644 index 000000000..27640a6c4 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds differ diff --git a/gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds b/gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds new file mode 100644 index 000000000..2c438798c Binary files /dev/null and b/gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds differ diff --git a/gfx/interface/goals/MOR/mor_troll_warriors.dds b/gfx/interface/goals/MOR/mor_troll_warriors.dds new file mode 100644 index 000000000..49da926c5 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_troll_warriors.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_dale.dds b/gfx/interface/goals/MOR/mor_wargoal_dale.dds new file mode 100644 index 000000000..0809797b1 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_dale.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds b/gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds new file mode 100644 index 000000000..a45b7e637 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_erebor.dds b/gfx/interface/goals/MOR/mor_wargoal_erebor.dds new file mode 100644 index 000000000..e225f6e8d Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_erebor.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_gondor.dds b/gfx/interface/goals/MOR/mor_wargoal_gondor.dds new file mode 100644 index 000000000..27036fdfb Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_gondor.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_harad.dds b/gfx/interface/goals/MOR/mor_wargoal_harad.dds new file mode 100644 index 000000000..3acf67372 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_harad.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_rhun.dds b/gfx/interface/goals/MOR/mor_wargoal_rhun.dds new file mode 100644 index 000000000..af331aa93 Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_rhun.dds differ diff --git a/gfx/interface/goals/MOR/mor_wargoal_rohan.dds b/gfx/interface/goals/MOR/mor_wargoal_rohan.dds new file mode 100644 index 000000000..fb27c59bc Binary files /dev/null and b/gfx/interface/goals/MOR/mor_wargoal_rohan.dds differ diff --git a/gfx/interface/goals/MOR/sauron_eye.dds b/gfx/interface/goals/MOR/sauron_eye.dds new file mode 100644 index 000000000..a77ccc2ca Binary files /dev/null and b/gfx/interface/goals/MOR/sauron_eye.dds differ diff --git a/gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds b/gfx/interface/goals/MOR/skull_treaty.dds similarity index 100% rename from gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds rename to gfx/interface/goals/MOR/skull_treaty.dds diff --git a/gfx/interface/goals/MOR/stop_melkor_worship.dds b/gfx/interface/goals/MOR/stop_melkor_worship.dds new file mode 100644 index 000000000..d1973dc55 Binary files /dev/null and b/gfx/interface/goals/MOR/stop_melkor_worship.dds differ diff --git a/gfx/interface/goals/MOR/the_one_ring.dds b/gfx/interface/goals/MOR/the_one_ring.dds new file mode 100644 index 000000000..c537c13c5 Binary files /dev/null and b/gfx/interface/goals/MOR/the_one_ring.dds differ diff --git a/gfx/interface/goals/MOR/union_of_working_orc_class.dds b/gfx/interface/goals/MOR/union_of_working_orc_class.dds new file mode 100644 index 000000000..a4a6158d5 Binary files /dev/null and b/gfx/interface/goals/MOR/union_of_working_orc_class.dds differ diff --git a/gfx/interface/goals/MOR/unleash_sauron.dds b/gfx/interface/goals/MOR/unleash_sauron.dds new file mode 100644 index 000000000..e8fb205a1 Binary files /dev/null and b/gfx/interface/goals/MOR/unleash_sauron.dds differ diff --git a/gfx/interface/goals/RHU/GFX_goal_dale.tga b/gfx/interface/goals/RHU/GFX_goal_dale.tga deleted file mode 100644 index 87d05050a..000000000 Binary files a/gfx/interface/goals/RHU/GFX_goal_dale.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/GFX_goal_dorwinion.tga b/gfx/interface/goals/RHU/GFX_goal_dorwinion.tga deleted file mode 100644 index 0dab93414..000000000 Binary files a/gfx/interface/goals/RHU/GFX_goal_dorwinion.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/GFX_goal_khamul.tga b/gfx/interface/goals/RHU/GFX_goal_khamul.tga deleted file mode 100644 index d844180e2..000000000 Binary files a/gfx/interface/goals/RHU/GFX_goal_khamul.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga b/gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga deleted file mode 100644 index ea268e37e..000000000 Binary files a/gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga b/gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga deleted file mode 100644 index 06e0422a8..000000000 Binary files a/gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/GFX_wargoal_mordor.tga b/gfx/interface/goals/RHU/GFX_wargoal_mordor.tga deleted file mode 100644 index 3d4ac71ef..000000000 Binary files a/gfx/interface/goals/RHU/GFX_wargoal_mordor.tga and /dev/null differ diff --git a/gfx/interface/goals/RHU/rhu_dale_flag.dds b/gfx/interface/goals/RHU/rhu_dale_flag.dds new file mode 100644 index 000000000..a35fed5c7 Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_dale_flag.dds differ diff --git a/gfx/interface/goals/RHU/rhu_dorwinion_flag.dds b/gfx/interface/goals/RHU/rhu_dorwinion_flag.dds new file mode 100644 index 000000000..d250961a2 Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_dorwinion_flag.dds differ diff --git a/gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds b/gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds new file mode 100644 index 000000000..78e64e296 Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds differ diff --git a/gfx/interface/goals/RHU/rhu_rhun_civil_war.dds b/gfx/interface/goals/RHU/rhu_rhun_civil_war.dds new file mode 100644 index 000000000..a6ef66832 Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_rhun_civil_war.dds differ diff --git a/gfx/interface/goals/RHU/rhu_the_blue_wizards.dds b/gfx/interface/goals/RHU/rhu_the_blue_wizards.dds new file mode 100644 index 000000000..0800daad3 Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_the_blue_wizards.dds differ diff --git a/gfx/interface/goals/RHU/rhu_wargoal_mordor.dds b/gfx/interface/goals/RHU/rhu_wargoal_mordor.dds new file mode 100644 index 000000000..d9e23136b Binary files /dev/null and b/gfx/interface/goals/RHU/rhu_wargoal_mordor.dds differ diff --git a/gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga b/gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga deleted file mode 100644 index 58d546031..000000000 Binary files a/gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga and /dev/null differ diff --git a/gfx/interface/goals/RIV/GFX_goal_elrond.tga b/gfx/interface/goals/RIV/GFX_goal_elrond.tga deleted file mode 100644 index 9752ebd28..000000000 Binary files a/gfx/interface/goals/RIV/GFX_goal_elrond.tga and /dev/null differ diff --git a/gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga b/gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga deleted file mode 100644 index 7c8f729a5..000000000 Binary files a/gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga and /dev/null differ diff --git a/gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga b/gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga deleted file mode 100644 index 4f05ea748..000000000 Binary files a/gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga and /dev/null differ diff --git a/gfx/interface/goals/RIV/riv_council_of_elrond.dds b/gfx/interface/goals/RIV/riv_council_of_elrond.dds new file mode 100644 index 000000000..ea2301e0f Binary files /dev/null and b/gfx/interface/goals/RIV/riv_council_of_elrond.dds differ diff --git a/gfx/interface/goals/RIV/riv_elrond.dds b/gfx/interface/goals/RIV/riv_elrond.dds new file mode 100644 index 000000000..52c858fcb Binary files /dev/null and b/gfx/interface/goals/RIV/riv_elrond.dds differ diff --git a/gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds b/gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds new file mode 100644 index 000000000..de71f2c1d Binary files /dev/null and b/gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds differ diff --git a/gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds b/gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds new file mode 100644 index 000000000..7b00893a8 Binary files /dev/null and b/gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds differ diff --git a/gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga b/gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga deleted file mode 100644 index ee42fad1c..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga b/gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga deleted file mode 100644 index 9187ea38d..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_edoras.tga b/gfx/interface/goals/ROH/GFX_goal_edoras.tga deleted file mode 100644 index e7dba7b3e..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_edoras.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_eowyn.tga b/gfx/interface/goals/ROH/GFX_goal_eowyn.tga deleted file mode 100644 index 9decedca4..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_eowyn.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_grima.tga b/gfx/interface/goals/ROH/GFX_goal_grima.tga deleted file mode 100644 index 03434580b..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_grima.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_helms_deep.tga b/gfx/interface/goals/ROH/GFX_goal_helms_deep.tga deleted file mode 100644 index 79ad5e938..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_helms_deep.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga b/gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga deleted file mode 100644 index 68c2e73d4..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_rohan.tga b/gfx/interface/goals/ROH/GFX_goal_rohan.tga deleted file mode 100644 index 291c2f0c2..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_rohan.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga b/gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga deleted file mode 100644 index 6e5fa0fa0..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_theodred.tga b/gfx/interface/goals/ROH/GFX_goal_theodred.tga deleted file mode 100644 index ee53e1112..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_theodred.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga b/gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga deleted file mode 100644 index 64186dd8c..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga b/gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga deleted file mode 100644 index c1d483b2f..000000000 Binary files a/gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga and /dev/null differ diff --git a/gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds b/gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds new file mode 100644 index 000000000..2577a6115 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds differ diff --git a/gfx/interface/goals/ROH/roh_edoras.dds b/gfx/interface/goals/ROH/roh_edoras.dds new file mode 100644 index 000000000..3a93d24a5 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_edoras.dds differ diff --git a/gfx/interface/goals/ROH/roh_eomer.dds b/gfx/interface/goals/ROH/roh_eomer.dds new file mode 100644 index 000000000..7e485af44 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_eomer.dds differ diff --git a/gfx/interface/goals/ROH/roh_eowyn_sorrow.dds b/gfx/interface/goals/ROH/roh_eowyn_sorrow.dds new file mode 100644 index 000000000..af66ca89a Binary files /dev/null and b/gfx/interface/goals/ROH/roh_eowyn_sorrow.dds differ diff --git a/gfx/interface/goals/ROH/roh_grima_wormtongue.dds b/gfx/interface/goals/ROH/roh_grima_wormtongue.dds new file mode 100644 index 000000000..e41c08b02 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_grima_wormtongue.dds differ diff --git a/gfx/interface/goals/ROH/roh_helms_deep.dds b/gfx/interface/goals/ROH/roh_helms_deep.dds new file mode 100644 index 000000000..c3a81955a Binary files /dev/null and b/gfx/interface/goals/ROH/roh_helms_deep.dds differ diff --git a/gfx/interface/goals/ROH/roh_helms_deep_weakness.dds b/gfx/interface/goals/ROH/roh_helms_deep_weakness.dds new file mode 100644 index 000000000..b9494ac91 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_helms_deep_weakness.dds differ diff --git a/gfx/interface/goals/ROH/roh_rohan_flag.dds b/gfx/interface/goals/ROH/roh_rohan_flag.dds new file mode 100644 index 000000000..06800da7e Binary files /dev/null and b/gfx/interface/goals/ROH/roh_rohan_flag.dds differ diff --git a/gfx/interface/goals/ROH/roh_sick_theoden.dds b/gfx/interface/goals/ROH/roh_sick_theoden.dds new file mode 100644 index 000000000..9842e5514 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_sick_theoden.dds differ diff --git a/gfx/interface/goals/ROH/roh_theodred.dds b/gfx/interface/goals/ROH/roh_theodred.dds new file mode 100644 index 000000000..4aced7750 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_theodred.dds differ diff --git a/gfx/interface/goals/ROH/roh_trust_gandalf.dds b/gfx/interface/goals/ROH/roh_trust_gandalf.dds new file mode 100644 index 000000000..87c967813 Binary files /dev/null and b/gfx/interface/goals/ROH/roh_trust_gandalf.dds differ diff --git a/gfx/interface/goals/ROH/roh_trust_saruman.dds b/gfx/interface/goals/ROH/roh_trust_saruman.dds new file mode 100644 index 000000000..6cd7fc55e Binary files /dev/null and b/gfx/interface/goals/ROH/roh_trust_saruman.dds differ diff --git a/gfx/interface/goals/slavesoldiers_of_rohan.tga b/gfx/interface/goals/slavesoldiers_of_rohan.tga deleted file mode 100644 index b374ed6ca..000000000 Binary files a/gfx/interface/goals/slavesoldiers_of_rohan.tga and /dev/null differ diff --git a/gfx/interface/goals/vanilla/a_land_of_mountains.dds b/gfx/interface/goals/vanilla/a_land_of_mountains.dds new file mode 100644 index 000000000..f2ebad576 Binary files /dev/null and b/gfx/interface/goals/vanilla/a_land_of_mountains.dds differ diff --git a/gfx/interface/goals/vanilla/focus_research.dds b/gfx/interface/goals/vanilla/focus_research.dds new file mode 100644 index 000000000..cfa7d6eda Binary files /dev/null and b/gfx/interface/goals/vanilla/focus_research.dds differ diff --git a/gfx/interface/goals/vanilla/focus_research2.dds b/gfx/interface/goals/vanilla/focus_research2.dds new file mode 100644 index 000000000..f860e6d4b Binary files /dev/null and b/gfx/interface/goals/vanilla/focus_research2.dds differ diff --git a/gfx/interface/goals/vanilla/generic_alcohol_bottles.dds b/gfx/interface/goals/vanilla/generic_alcohol_bottles.dds new file mode 100644 index 000000000..371dff95c Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_alcohol_bottles.dds differ diff --git a/gfx/interface/goals/vanilla/generic_annex_country.dds b/gfx/interface/goals/vanilla/generic_annex_country.dds new file mode 100644 index 000000000..8a5f59fc8 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_annex_country.dds differ diff --git a/gfx/interface/goals/vanilla/generic_annex_country_2.dds b/gfx/interface/goals/vanilla/generic_annex_country_2.dds new file mode 100644 index 000000000..bb833c0cc Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_annex_country_2.dds differ diff --git a/gfx/interface/goals/vanilla/generic_anti_revolutionary.dds b/gfx/interface/goals/vanilla/generic_anti_revolutionary.dds new file mode 100644 index 000000000..f9a1409e8 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_anti_revolutionary.dds differ diff --git a/gfx/interface/goals/vanilla/generic_aristocracy.dds b/gfx/interface/goals/vanilla/generic_aristocracy.dds new file mode 100644 index 000000000..3198a54a9 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_aristocracy.dds differ diff --git a/gfx/interface/goals/vanilla/generic_arrows.dds b/gfx/interface/goals/vanilla/generic_arrows.dds new file mode 100644 index 000000000..3baba4907 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_arrows.dds differ diff --git a/gfx/interface/goals/vanilla/generic_bird.dds b/gfx/interface/goals/vanilla/generic_bird.dds new file mode 100644 index 000000000..6f1b15ef6 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_bird.dds differ diff --git a/gfx/interface/goals/vanilla/generic_camel_corps.dds b/gfx/interface/goals/vanilla/generic_camel_corps.dds new file mode 100644 index 000000000..c0acb8560 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_camel_corps.dds differ diff --git a/gfx/interface/goals/vanilla/generic_coastal_fort.dds b/gfx/interface/goals/vanilla/generic_coastal_fort.dds new file mode 100644 index 000000000..76b41cd6e Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_coastal_fort.dds differ diff --git a/gfx/interface/goals/vanilla/generic_coins_money.dds b/gfx/interface/goals/vanilla/generic_coins_money.dds new file mode 100644 index 000000000..82f355b68 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_coins_money.dds differ diff --git a/gfx/interface/goals/vanilla/generic_common_people_peasantry.dds b/gfx/interface/goals/vanilla/generic_common_people_peasantry.dds new file mode 100644 index 000000000..a9f0e8ba7 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_common_people_peasantry.dds differ diff --git a/gfx/interface/goals/vanilla/generic_concessions.dds b/gfx/interface/goals/vanilla/generic_concessions.dds new file mode 100644 index 000000000..3f5f1fb33 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_concessions.dds differ diff --git a/gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds b/gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds new file mode 100644 index 000000000..98afe0fea Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds differ diff --git a/gfx/interface/goals/vanilla/generic_crown_smashed.dds b/gfx/interface/goals/vanilla/generic_crown_smashed.dds new file mode 100644 index 000000000..0dd65c727 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_crown_smashed.dds differ diff --git a/gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds b/gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds new file mode 100644 index 000000000..51124e7b8 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds differ diff --git a/gfx/interface/goals/vanilla/generic_farmland.dds b/gfx/interface/goals/vanilla/generic_farmland.dds new file mode 100644 index 000000000..d907ab3a1 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_farmland.dds differ diff --git a/gfx/interface/goals/vanilla/generic_fight_beasts.dds b/gfx/interface/goals/vanilla/generic_fight_beasts.dds new file mode 100644 index 000000000..aaa7ec2cb Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_fight_beasts.dds differ diff --git a/gfx/interface/goals/vanilla/generic_fishermen.dds b/gfx/interface/goals/vanilla/generic_fishermen.dds new file mode 100644 index 000000000..f2ad22de6 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_fishermen.dds differ diff --git a/gfx/interface/goals/vanilla/generic_flooding.dds b/gfx/interface/goals/vanilla/generic_flooding.dds new file mode 100644 index 000000000..ea1067eae Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_flooding.dds differ diff --git a/gfx/interface/goals/vanilla/generic_gold_money.dds b/gfx/interface/goals/vanilla/generic_gold_money.dds new file mode 100644 index 000000000..f7898c15c Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_gold_money.dds differ diff --git a/gfx/interface/goals/vanilla/generic_gold_standard.dds b/gfx/interface/goals/vanilla/generic_gold_standard.dds new file mode 100644 index 000000000..9a8b3dae2 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_gold_standard.dds differ diff --git a/gfx/interface/goals/vanilla/generic_guild.dds b/gfx/interface/goals/vanilla/generic_guild.dds new file mode 100644 index 000000000..9b57d20cd Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_guild.dds differ diff --git a/gfx/interface/goals/vanilla/generic_home_defense.dds b/gfx/interface/goals/vanilla/generic_home_defense.dds new file mode 100644 index 000000000..3ceddaa6c Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_home_defense.dds differ diff --git a/gfx/interface/goals/vanilla/generic_horse_studs.dds b/gfx/interface/goals/vanilla/generic_horse_studs.dds new file mode 100644 index 000000000..5c0559770 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_horse_studs.dds differ diff --git a/gfx/interface/goals/vanilla/generic_improve_the_administration.dds b/gfx/interface/goals/vanilla/generic_improve_the_administration.dds new file mode 100644 index 000000000..1bf741099 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_improve_the_administration.dds differ diff --git a/gfx/interface/goals/vanilla/generic_industry_merge.dds b/gfx/interface/goals/vanilla/generic_industry_merge.dds new file mode 100644 index 000000000..0beaac985 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_industry_merge.dds differ diff --git a/gfx/interface/goals/vanilla/generic_jaeger_emblem.dds b/gfx/interface/goals/vanilla/generic_jaeger_emblem.dds new file mode 100644 index 000000000..cad564cb4 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_jaeger_emblem.dds differ diff --git a/gfx/interface/goals/vanilla/generic_knock_over_flag.dds b/gfx/interface/goals/vanilla/generic_knock_over_flag.dds new file mode 100644 index 000000000..e1d88a4c7 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_knock_over_flag.dds differ diff --git a/gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds b/gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds new file mode 100644 index 000000000..58292a080 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds differ diff --git a/gfx/interface/goals/vanilla/generic_large_knife.dds b/gfx/interface/goals/vanilla/generic_large_knife.dds new file mode 100644 index 000000000..dba243bf7 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_large_knife.dds differ diff --git a/gfx/interface/goals/vanilla/generic_levy.dds b/gfx/interface/goals/vanilla/generic_levy.dds new file mode 100644 index 000000000..1617d02ec Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_levy.dds differ diff --git a/gfx/interface/goals/vanilla/generic_lion.dds b/gfx/interface/goals/vanilla/generic_lion.dds new file mode 100644 index 000000000..aa203e835 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_lion.dds differ diff --git a/gfx/interface/goals/vanilla/generic_love_natrue.dds b/gfx/interface/goals/vanilla/generic_love_natrue.dds new file mode 100644 index 000000000..aaf32faca Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_love_natrue.dds differ diff --git a/gfx/interface/goals/vanilla/generic_medicine.dds b/gfx/interface/goals/vanilla/generic_medicine.dds new file mode 100644 index 000000000..162eb97e0 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_medicine.dds differ diff --git a/gfx/interface/goals/vanilla/generic_men_at_arms.dds b/gfx/interface/goals/vanilla/generic_men_at_arms.dds new file mode 100644 index 000000000..02a30ffce Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_men_at_arms.dds differ diff --git a/gfx/interface/goals/vanilla/generic_mining_industry.dds b/gfx/interface/goals/vanilla/generic_mining_industry.dds new file mode 100644 index 000000000..fe4811cfa Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_mining_industry.dds differ diff --git a/gfx/interface/goals/vanilla/generic_monarchy_1.dds b/gfx/interface/goals/vanilla/generic_monarchy_1.dds new file mode 100644 index 000000000..c934ab16d Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_monarchy_1.dds differ diff --git a/gfx/interface/goals/vanilla/generic_monarchy_2.dds b/gfx/interface/goals/vanilla/generic_monarchy_2.dds new file mode 100644 index 000000000..b41340169 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_monarchy_2.dds differ diff --git a/gfx/interface/goals/vanilla/generic_nature_trees.dds b/gfx/interface/goals/vanilla/generic_nature_trees.dds new file mode 100644 index 000000000..9971ead8e Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_nature_trees.dds differ diff --git a/gfx/interface/goals/vanilla/generic_naval_crown_2.dds b/gfx/interface/goals/vanilla/generic_naval_crown_2.dds new file mode 100644 index 000000000..939e55560 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_naval_crown_2.dds differ diff --git a/gfx/interface/goals/vanilla/generic_naval_emblem.dds b/gfx/interface/goals/vanilla/generic_naval_emblem.dds new file mode 100644 index 000000000..6b86602a4 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_naval_emblem.dds differ diff --git a/gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds b/gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds new file mode 100644 index 000000000..d0db131ea Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds differ diff --git a/gfx/interface/goals/vanilla/generic_naval_war_crown.dds b/gfx/interface/goals/vanilla/generic_naval_war_crown.dds new file mode 100644 index 000000000..287b72d8b Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_naval_war_crown.dds differ diff --git a/gfx/interface/goals/vanilla/generic_peace_dove.dds b/gfx/interface/goals/vanilla/generic_peace_dove.dds new file mode 100644 index 000000000..8b96963ae Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_peace_dove.dds differ diff --git a/gfx/interface/goals/vanilla/generic_peasantry_welfare.dds b/gfx/interface/goals/vanilla/generic_peasantry_welfare.dds new file mode 100644 index 000000000..7f0e07885 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_peasantry_welfare.dds differ diff --git a/gfx/interface/goals/vanilla/generic_population_growth.dds b/gfx/interface/goals/vanilla/generic_population_growth.dds new file mode 100644 index 000000000..1598c5b4d Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_population_growth.dds differ diff --git a/gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds b/gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds new file mode 100644 index 000000000..f07ad559f Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds differ diff --git a/gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds b/gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds new file mode 100644 index 000000000..f7214f7fd Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds differ diff --git a/gfx/interface/goals/vanilla/generic_revolutionary_chains.dds b/gfx/interface/goals/vanilla/generic_revolutionary_chains.dds new file mode 100644 index 000000000..3471d5b77 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_revolutionary_chains.dds differ diff --git a/gfx/interface/goals/vanilla/generic_royal_wedding.dds b/gfx/interface/goals/vanilla/generic_royal_wedding.dds new file mode 100644 index 000000000..3e003ace2 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_royal_wedding.dds differ diff --git a/gfx/interface/goals/vanilla/generic_rural_trade_farming.dds b/gfx/interface/goals/vanilla/generic_rural_trade_farming.dds new file mode 100644 index 000000000..43e1c5e97 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_rural_trade_farming.dds differ diff --git a/gfx/interface/goals/vanilla/generic_sabres.dds b/gfx/interface/goals/vanilla/generic_sabres.dds new file mode 100644 index 000000000..62800cd7d Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_sabres.dds differ diff --git a/gfx/interface/goals/vanilla/generic_self_management.dds b/gfx/interface/goals/vanilla/generic_self_management.dds new file mode 100644 index 000000000..0bac980f5 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_self_management.dds differ diff --git a/gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds b/gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds new file mode 100644 index 000000000..704b183ad Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds differ diff --git a/gfx/interface/goals/vanilla/generic_spear_and_sabre.dds b/gfx/interface/goals/vanilla/generic_spear_and_sabre.dds new file mode 100644 index 000000000..c893091af Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_spear_and_sabre.dds differ diff --git a/gfx/interface/goals/vanilla/generic_special_forces.dds b/gfx/interface/goals/vanilla/generic_special_forces.dds new file mode 100644 index 000000000..da98fd425 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_special_forces.dds differ diff --git a/gfx/interface/goals/vanilla/generic_spy_agency_eye.dds b/gfx/interface/goals/vanilla/generic_spy_agency_eye.dds new file mode 100644 index 000000000..d7cdec517 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_spy_agency_eye.dds differ diff --git a/gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds b/gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds new file mode 100644 index 000000000..e70dd0d6f Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds differ diff --git a/gfx/interface/goals/vanilla/generic_submission_puppet.dds b/gfx/interface/goals/vanilla/generic_submission_puppet.dds new file mode 100644 index 000000000..0ad8c1648 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_submission_puppet.dds differ diff --git a/gfx/interface/goals/vanilla/generic_support_crown.dds b/gfx/interface/goals/vanilla/generic_support_crown.dds new file mode 100644 index 000000000..3cd4a0570 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_support_crown.dds differ diff --git a/gfx/interface/goals/vanilla/generic_suppression_oppression.dds b/gfx/interface/goals/vanilla/generic_suppression_oppression.dds new file mode 100644 index 000000000..2f851c78d Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_suppression_oppression.dds differ diff --git a/gfx/interface/goals/vanilla/generic_torchbearer.dds b/gfx/interface/goals/vanilla/generic_torchbearer.dds new file mode 100644 index 000000000..b2ef2e7dc Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_torchbearer.dds differ diff --git a/gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds b/gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds new file mode 100644 index 000000000..9e14677a0 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds differ diff --git a/gfx/interface/goals/vanilla/generic_treaty.dds b/gfx/interface/goals/vanilla/generic_treaty.dds new file mode 100644 index 000000000..4df4b3cfb Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_treaty.dds differ diff --git a/gfx/interface/goals/vanilla/generic_treaty_torn.dds b/gfx/interface/goals/vanilla/generic_treaty_torn.dds new file mode 100644 index 000000000..0959694bc Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_treaty_torn.dds differ diff --git a/gfx/interface/goals/vanilla/generic_unknown.dds b/gfx/interface/goals/vanilla/generic_unknown.dds new file mode 100644 index 000000000..a94c3d5f5 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_unknown.dds differ diff --git a/gfx/interface/goals/vanilla/generic_urban_city.dds b/gfx/interface/goals/vanilla/generic_urban_city.dds new file mode 100644 index 000000000..519d26f08 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_urban_city.dds differ diff --git a/gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds b/gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds new file mode 100644 index 000000000..b96d6f630 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds differ diff --git a/gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds b/gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds new file mode 100644 index 000000000..e0df2d982 Binary files /dev/null and b/gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds differ diff --git a/gfx/interface/goals/vanilla/goal_anschluss.dds b/gfx/interface/goals/vanilla/goal_anschluss.dds new file mode 100644 index 000000000..66d66e79f Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_anschluss.dds differ diff --git a/gfx/interface/goals/vanilla/goal_demand_sudetenland.dds b/gfx/interface/goals/vanilla/goal_demand_sudetenland.dds new file mode 100644 index 000000000..ce76f519e Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_demand_sudetenland.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_CAS.dds b/gfx/interface/goals/vanilla/goal_generic_CAS.dds new file mode 100644 index 000000000..7b79ae045 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_CAS.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds b/gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds new file mode 100644 index 000000000..eb2aaa6e7 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_alliance.dds b/gfx/interface/goals/vanilla/goal_generic_alliance.dds new file mode 100644 index 000000000..5cd3be5d3 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_alliance.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds b/gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds new file mode 100644 index 000000000..fc061bc38 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_attack_allies.dds b/gfx/interface/goals/vanilla/goal_generic_attack_allies.dds new file mode 100644 index 000000000..96f05f682 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_attack_allies.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_cavalry.dds b/gfx/interface/goals/vanilla/goal_generic_cavalry.dds new file mode 100644 index 000000000..2d8204c84 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_cavalry.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds b/gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds new file mode 100644 index 000000000..bf5d13b89 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_defence.dds b/gfx/interface/goals/vanilla/goal_generic_defence.dds new file mode 100644 index 000000000..f365fec6e Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_defence.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_demand_territory.dds b/gfx/interface/goals/vanilla/goal_generic_demand_territory.dds new file mode 100644 index 000000000..5c178de8f Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_demand_territory.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds b/gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds new file mode 100644 index 000000000..5cb2d28eb Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_improve_relations.dds b/gfx/interface/goals/vanilla/goal_generic_improve_relations.dds new file mode 100644 index 000000000..cb7af7edf Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_improve_relations.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_major_alliance.dds b/gfx/interface/goals/vanilla/goal_generic_major_alliance.dds new file mode 100644 index 000000000..9e3f94198 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_major_alliance.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_major_war.dds b/gfx/interface/goals/vanilla/goal_generic_major_war.dds new file mode 100644 index 000000000..ba83fa02d Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_major_war.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_military_deal.dds b/gfx/interface/goals/vanilla/goal_generic_military_deal.dds new file mode 100644 index 000000000..e6af7dc6f Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_military_deal.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds b/gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds new file mode 100644 index 000000000..280910d38 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_national_unity.dds b/gfx/interface/goals/vanilla/goal_generic_national_unity.dds new file mode 100644 index 000000000..1b8808b2b Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_national_unity.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds b/gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds new file mode 100644 index 000000000..fb5cbbea6 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds b/gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds new file mode 100644 index 000000000..5024cdb8d Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds b/gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds new file mode 100644 index 000000000..d03f13ad6 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds b/gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds new file mode 100644 index 000000000..12c8b780e Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_political_pressure.dds b/gfx/interface/goals/vanilla/goal_generic_political_pressure.dds new file mode 100644 index 000000000..0a0d27c09 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_political_pressure.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_position_armies.dds b/gfx/interface/goals/vanilla/goal_generic_position_armies.dds new file mode 100644 index 000000000..42d47af20 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_position_armies.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds b/gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds new file mode 100644 index 000000000..5c2e51f57 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds b/gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds new file mode 100644 index 000000000..023acdc8c Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds b/gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds new file mode 100644 index 000000000..736615531 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds b/gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds new file mode 100644 index 000000000..ef2043d7b Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds differ diff --git a/gfx/interface/goals/vanilla/goal_generic_trade.dds b/gfx/interface/goals/vanilla/goal_generic_trade.dds new file mode 100644 index 000000000..27ddf392e Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_generic_trade.dds differ diff --git a/gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds b/gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds new file mode 100644 index 000000000..cc3d79596 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds differ diff --git a/gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds b/gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds new file mode 100644 index 000000000..425e4e003 Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds differ diff --git a/gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds b/gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds new file mode 100644 index 000000000..36677d1ff Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds differ diff --git a/gfx/interface/goals/vanilla/goal_tripartite_pact.dds b/gfx/interface/goals/vanilla/goal_tripartite_pact.dds new file mode 100644 index 000000000..a873dee9f Binary files /dev/null and b/gfx/interface/goals/vanilla/goal_tripartite_pact.dds differ diff --git a/gfx/interface/goals/vanilla/support_the_left_right.dds b/gfx/interface/goals/vanilla/support_the_left_right.dds new file mode 100644 index 000000000..34e5cd357 Binary files /dev/null and b/gfx/interface/goals/vanilla/support_the_left_right.dds differ diff --git a/gfx/interface/ideas/GON/idea_gon_white_tree.dds b/gfx/interface/ideas/national_spirits/GON/gon_white_tree.dds similarity index 100% rename from gfx/interface/ideas/GON/idea_gon_white_tree.dds rename to gfx/interface/ideas/national_spirits/GON/gon_white_tree.dds diff --git a/gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds b/gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds index 0e955f6c2..7dbd1ee98 100644 Binary files a/gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds and b/gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds differ diff --git a/gfx/interface/ideas/idea_honor_morgoth.dds b/gfx/interface/ideas/national_spirits/MOR/honor_morgoth.dds similarity index 100% rename from gfx/interface/ideas/idea_honor_morgoth.dds rename to gfx/interface/ideas/national_spirits/MOR/honor_morgoth.dds diff --git a/gfx/interface/ideas/national_spirits/one_ring.dds b/gfx/interface/ideas/national_spirits/MOR/one_ring.dds similarity index 100% rename from gfx/interface/ideas/national_spirits/one_ring.dds rename to gfx/interface/ideas/national_spirits/MOR/one_ring.dds diff --git a/gfx/interface/ideas/national_spirits/sauron_eye.dds b/gfx/interface/ideas/national_spirits/MOR/sauron_eye.dds similarity index 100% rename from gfx/interface/ideas/national_spirits/sauron_eye.dds rename to gfx/interface/ideas/national_spirits/MOR/sauron_eye.dds diff --git a/gfx/interface/ideas/generic_idea_belligerent.dds b/gfx/interface/ideas/national_spirits/generic_belligerent_drift_bonus.dds similarity index 100% rename from gfx/interface/ideas/generic_idea_belligerent.dds rename to gfx/interface/ideas/national_spirits/generic_belligerent_drift_bonus.dds diff --git a/gfx/interface/ideas/generic_idea_cooperative.dds b/gfx/interface/ideas/national_spirits/generic_cooperative_drift_bonus.dds similarity index 100% rename from gfx/interface/ideas/generic_idea_cooperative.dds rename to gfx/interface/ideas/national_spirits/generic_cooperative_drift_bonus.dds diff --git a/gfx/interface/ideas/generic_idea_revolutionary.dds b/gfx/interface/ideas/national_spirits/generic_revolutionary_drift_bonus.dds similarity index 100% rename from gfx/interface/ideas/generic_idea_revolutionary.dds rename to gfx/interface/ideas/national_spirits/generic_revolutionary_drift_bonus.dds diff --git a/gfx/interface/ideas/generic_idea_unaligned.dds b/gfx/interface/ideas/national_spirits/generic_unaligned_drift_bonus.dds similarity index 100% rename from gfx/interface/ideas/generic_idea_unaligned.dds rename to gfx/interface/ideas/national_spirits/generic_unaligned_drift_bonus.dds diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_abandon_crown.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_abandon_crown.dds new file mode 100644 index 000000000..93f6b52cd Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_abandon_crown.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_farming_reforms.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_farming_reforms.dds new file mode 100644 index 000000000..5cd7b4f59 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_farming_reforms.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_society.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_society.dds new file mode 100644 index 000000000..660fea092 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_society.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_agression_wolf.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_agression_wolf.dds new file mode 100644 index 000000000..f361b68a6 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_agression_wolf.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_air_skull_with_wings.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_air_skull_with_wings.dds new file mode 100644 index 000000000..9e8dc1cb1 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_air_skull_with_wings.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_air_support_bird.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_air_support_bird.dds new file mode 100644 index 000000000..08d34295c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_air_support_bird.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_aloof_neutrality.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_aloof_neutrality.dds new file mode 100644 index 000000000..d8fe61dab Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_aloof_neutrality.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_arctic_wolves.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_arctic_wolves.dds new file mode 100644 index 000000000..6bdd9baca Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_arctic_wolves.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty.dds new file mode 100644 index 000000000..a9d790390 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty_torn.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty_torn.dds new file mode 100644 index 000000000..aa665163f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty_torn.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_central_management.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_central_management.dds new file mode 100644 index 000000000..752a27f6d Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_central_management.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_change_in_course.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_change_in_course.dds new file mode 100644 index 000000000..bd615af0b Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_change_in_course.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_chess_wargames.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_chess_wargames.dds new file mode 100644 index 000000000..f3d3fbba2 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_chess_wargames.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_constitutional_guarantee.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_constitutional_guarantee.dds new file mode 100644 index 000000000..2ce5633ea Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_constitutional_guarantee.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_cross_emblem.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_cross_emblem.dds new file mode 100644 index 000000000..06189842f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_cross_emblem.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_crusade_against_democracy.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_crusade_against_democracy.dds new file mode 100644 index 000000000..db7c9a1d3 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_crusade_against_democracy.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_crush_peasant_revolt.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_crush_peasant_revolt.dds new file mode 100644 index 000000000..de6d8f718 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_crush_peasant_revolt.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_crush_the_revolution.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_crush_the_revolution.dds new file mode 100644 index 000000000..a318476bc Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_crush_the_revolution.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil.dds new file mode 100644 index 000000000..7f336cc32 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil2.dds new file mode 100644 index 000000000..9e0cab3b3 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_democratic_opposition.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_democratic_opposition.dds new file mode 100644 index 000000000..bb008e25b Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_democratic_opposition.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_duplicate_research.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_duplicate_research.dds new file mode 100644 index 000000000..c59befeec Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_duplicate_research.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_economic_crisis.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_economic_crisis.dds new file mode 100644 index 000000000..1bc22ebe4 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_economic_crisis.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_empire.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_empire.dds new file mode 100644 index 000000000..9295790a8 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_empire.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_exploit_the_banks.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_exploit_the_banks.dds new file mode 100644 index 000000000..2800e9204 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_exploit_the_banks.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy.dds new file mode 100644 index 000000000..62d16517c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy2.dds new file mode 100644 index 000000000..118860d49 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_flooding.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_flooding.dds new file mode 100644 index 000000000..778b0a9b2 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_flooding.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_foreign_capital.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_foreign_capital.dds new file mode 100644 index 000000000..28b285d09 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_foreign_capital.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_gold_money.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_gold_money.dds new file mode 100644 index 000000000..77787226a Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_gold_money.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_golden_wolves.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_golden_wolves.dds new file mode 100644 index 000000000..fc28911c8 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_golden_wolves.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_hidden_evil.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_hidden_evil.dds new file mode 100644 index 000000000..6f74011cf Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_hidden_evil.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_horse_cavalry.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_horse_cavalry.dds new file mode 100644 index 000000000..4054000bd Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_horse_cavalry.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_ideology_drift_defense.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_ideology_drift_defense.dds new file mode 100644 index 000000000..be2e17b5e Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_ideology_drift_defense.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_improved_industries.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_improved_industries.dds new file mode 100644 index 000000000..7f3827481 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_improved_industries.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_industry_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_industry_bonus.dds new file mode 100644 index 000000000..d574e7be1 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_industry_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_intel_bonus_fist.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_intel_bonus_fist.dds new file mode 100644 index 000000000..ff838283a Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_intel_bonus_fist.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_king_handled.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_king_handled.dds new file mode 100644 index 000000000..42df9732d Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_king_handled.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_large_knife.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_large_knife.dds new file mode 100644 index 000000000..fff34eb6f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_large_knife.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_local_self_management.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_local_self_management.dds new file mode 100644 index 000000000..cd5dfbe34 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_local_self_management.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_lone_wold.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_lone_wold.dds new file mode 100644 index 000000000..5096d83d3 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_lone_wold.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_men_at_arms.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_men_at_arms.dds new file mode 100644 index 000000000..b15145e98 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_men_at_arms.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_mobilization_trumpet.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_mobilization_trumpet.dds new file mode 100644 index 000000000..43f34ef6f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_mobilization_trumpet.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_monarchist_uprising.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_monarchist_uprising.dds new file mode 100644 index 000000000..fbcbe2337 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_monarchist_uprising.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_monarchy_crown.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_monarchy_crown.dds new file mode 100644 index 000000000..6aae2a725 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_monarchy_crown.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_morale_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_morale_bonus.dds new file mode 100644 index 000000000..640754c19 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_morale_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_motorized_equipment_manufacturer_2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_motorized_equipment_manufacturer_2.dds new file mode 100644 index 000000000..64144d04c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_motorized_equipment_manufacturer_2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_naval_anchor.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_anchor.dds new file mode 100644 index 000000000..3356cfe83 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_anchor.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_naval_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_bonus.dds new file mode 100644 index 000000000..aa59b745d Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_1.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_1.dds new file mode 100644 index 000000000..c7e37c9d1 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_1.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_2.dds new file mode 100644 index 000000000..430a983bd Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_3.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_3.dds new file mode 100644 index 000000000..e0adff0b1 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_3.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_drift_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_drift_bonus.dds new file mode 100644 index 000000000..57a440700 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_drift_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_idea.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_idea.dds new file mode 100644 index 000000000..84b4a0079 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_idea.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior.dds new file mode 100644 index 000000000..26c6420f2 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior2.dds new file mode 100644 index 000000000..49edb60f9 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_nomads.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_nomads.dds new file mode 100644 index 000000000..73caeaecf Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_nomads.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_northern_union.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_northern_union.dds new file mode 100644 index 000000000..7a317ea67 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_northern_union.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_oppression.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_oppression.dds new file mode 100644 index 000000000..966be1689 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_oppression.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_paganism.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_paganism.dds new file mode 100644 index 000000000..0b8190232 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_paganism.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_milita2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_milita2.dds new file mode 100644 index 000000000..c417350ce Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_milita2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_militia.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_militia.dds new file mode 100644 index 000000000..70140169c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_militia.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes.dds new file mode 100644 index 000000000..a810041b3 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes2.dds new file mode 100644 index 000000000..1b7288f5b Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_planning_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_planning_bonus.dds new file mode 100644 index 000000000..f1e90cbba Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_planning_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_political_ban.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_political_ban.dds new file mode 100644 index 000000000..1952d9542 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_political_ban.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_political_support.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_political_support.dds new file mode 100644 index 000000000..a21b4607f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_political_support.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_pp_unity_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_pp_unity_bonus.dds new file mode 100644 index 000000000..89bb0b03d Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_pp_unity_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_prisoner.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_prisoner.dds new file mode 100644 index 000000000..5cccf7d17 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_prisoner.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_production_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_production_bonus.dds new file mode 100644 index 000000000..29d762e90 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_production_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_purge.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_purge.dds new file mode 100644 index 000000000..4590f6389 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_purge.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_relocate_gold_money.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_relocate_gold_money.dds new file mode 100644 index 000000000..ded874980 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_relocate_gold_money.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_research_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_research_bonus.dds new file mode 100644 index 000000000..8413540b6 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_research_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_research_tech_supremacy.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_research_tech_supremacy.dds new file mode 100644 index 000000000..ab919d04c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_research_tech_supremacy.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resistance.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance.dds new file mode 100644 index 000000000..dbd17be1a Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resistance2.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance2.dds new file mode 100644 index 000000000..7ff28b81b Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance2.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resistance3.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance3.dds new file mode 100644 index 000000000..8abc31125 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance3.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_fist.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_fist.dds new file mode 100644 index 000000000..b388ec642 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_fist.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_locked.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_locked.dds new file mode 100644 index 000000000..46934172a Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resistance_locked.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_resource_digging.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_resource_digging.dds new file mode 100644 index 000000000..92fc0f576 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_resource_digging.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_revolutionary_masters_of_our_own_fate.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_revolutionary_masters_of_our_own_fate.dds new file mode 100644 index 000000000..1306a2a8f Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_revolutionary_masters_of_our_own_fate.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_risk_of_famine.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_risk_of_famine.dds new file mode 100644 index 000000000..85b0aa099 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_risk_of_famine.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_shield_against_communism.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_shield_against_communism.dds new file mode 100644 index 000000000..0de6f385e Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_shield_against_communism.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_skull_death_nor_dishonor.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_skull_death_nor_dishonor.dds new file mode 100644 index 000000000..accb0c8eb Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_skull_death_nor_dishonor.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_special_forces.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_special_forces.dds new file mode 100644 index 000000000..0b85909b0 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_special_forces.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_spy_eye_agency.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_spy_eye_agency.dds new file mode 100644 index 000000000..1e250d654 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_spy_eye_agency.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_support_crown.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_support_crown.dds new file mode 100644 index 000000000..98b9e8898 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_support_crown.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_supremacy_of_will_brain.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_supremacy_of_will_brain.dds new file mode 100644 index 000000000..d32ef7e3c Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_supremacy_of_will_brain.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_sword_military.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_sword_military.dds new file mode 100644 index 000000000..a97fc10c3 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_sword_military.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_taxed_nobility.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_taxed_nobility.dds new file mode 100644 index 000000000..c2773e5a7 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_taxed_nobility.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_the_london_naval_treaty.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_the_london_naval_treaty.dds new file mode 100644 index 000000000..057e61d6b Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_the_london_naval_treaty.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_torchbearers.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_torchbearers.dds new file mode 100644 index 000000000..f47bfa375 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_torchbearers.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_trade_devalued.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_trade_devalued.dds new file mode 100644 index 000000000..02b0fff18 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_trade_devalued.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_treaty.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_treaty.dds new file mode 100644 index 000000000..6a3a6ab4a Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_treaty.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_viking_axe_weapons.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_viking_axe_weapons.dds new file mode 100644 index 000000000..de034d407 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_viking_axe_weapons.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_volunteer_expedition_bonus.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_volunteer_expedition_bonus.dds new file mode 100644 index 000000000..cb12725ea Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_volunteer_expedition_bonus.dds differ diff --git a/gfx/interface/ideas/national_spirits/vanilla/generic_wolf_aggression_bite.dds b/gfx/interface/ideas/national_spirits/vanilla/generic_wolf_aggression_bite.dds new file mode 100644 index 000000000..f3a05dbd9 Binary files /dev/null and b/gfx/interface/ideas/national_spirits/vanilla/generic_wolf_aggression_bite.dds differ diff --git a/index.html b/index.html new file mode 100644 index 000000000..923279f54 --- /dev/null +++ b/index.html @@ -0,0 +1,19 @@ + + + + + HoI4 LotR Mod + + + + +
+ +
+ Nothing here yet. Maybe you're looking for our GFX search tool? +
+ +
+ + + \ No newline at end of file diff --git a/interface/Custom_Icons.gfx b/interface/Custom_Icons.gfx deleted file mode 100644 index 7e7c52838..000000000 --- a/interface/Custom_Icons.gfx +++ /dev/null @@ -1,11698 +0,0 @@ -spriteTypes = { - SpriteType = { - name = "GFX_goal_angmar_unalligned" - texturefile = "gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga" - } - SpriteType = { - name = "GFX_goal_mordor" - texturefile = "gfx/interface/goals/ANG/GFX_goal_mordor.tga" - } - SpriteType = { - name = "GFX_goal_mordor_deal" - texturefile = "gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga" - } - SpriteType = { - name = "GFX_goal_witch_king" - texturefile = "gfx/interface/goals/ANG/GFX_goal_witch_king.tga" - } - SpriteType = { - name = "GFX_goal_rangers_of_the_north" - texturefile = "gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga" - } - SpriteType = { - name = "GFX_unite_by_force" - texturefile = "gfx/interface/goals/ART/GFX_unite_by_force.tga" - } - SpriteType = { - name = "GFX_goal_community_effort" - texturefile = "gfx/interface/goals/ENT/GFX_goal_community_effort.tga" - } - SpriteType = { - name = "GFX_goal_entwood" - texturefile = "gfx/interface/goals/ENT/GFX_goal_entwood.tga" - } - SpriteType = { - name = "GFX_goal_fury_of_the_trees" - texturefile = "gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga" - } - SpriteType = { - name = "GFX_goal_one_with_the_forest" - texturefile = "gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga" - } - SpriteType = { - name = "GFX_goal_teachings_of_the_ancients" - texturefile = "gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga" - } - SpriteType = { - name = "GFX_goal_army_dwarves" - texturefile = "gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga" - } - SpriteType = { - name = "GFX_goal_generic_anvil" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga" - } - SpriteType = { - name = "GFX_goal_generic_gondor_research" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga" - } - SpriteType = { - name = "GFX_goal_generic_industry_I" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga" - } - SpriteType = { - name = "GFX_goal_generic_windmile" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga" - } - SpriteType = { - name = "GFX_goal_resource_wood" - texturefile = "gfx/interface/goals/Generic/GFX_goal_resource_wood.tga" - } - SpriteType = { - name = "GFX_goal_support_belligerent" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga" - } - SpriteType = { - name = "GFX_goal_support_cooperative" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga" - } - SpriteType = { - name = "GFX_goal_support_revolutionary" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga" - } - SpriteType = { - name = "GFX_goal_support_unalligned" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga" - } - SpriteType = { - name = "GFX_goal_arnor" - texturefile = "gfx/interface/goals/GON/GFX_goal_arnor.dds" - } - SpriteType = { - name = "GFX_goal_boromir" - texturefile = "gfx/interface/goals/GON/GFX_goal_boromir.tga" - } - SpriteType = { - name = "GFX_goal_denethor" - texturefile = "gfx/interface/goals/GON/GFX_goal_denethor.tga" - } - SpriteType = { - name = "GFX_goal_dol_amroth" - texturefile = "gfx/interface/goals/GON/GFX_goal_dol_amroth.dds" - } - SpriteType = { - name = "GFX_goal_faramir" - texturefile = "gfx/interface/goals/GON/GFX_goal_faramir.tga" - } - SpriteType = { - name = "GFX_goal_ghost_army" - texturefile = "gfx/interface/goals/GON/GFX_goal_ghost_army.tga" - } - SpriteType = { - name = "GFX_goal_gondor" - texturefile = "gfx/interface/goals/GON/GFX_goal_gondor.tga" - } - SpriteType = { - name = "GFX_goal_gon_dam_propaganda" - texturefile = "gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds" - } - SpriteType = { - name = "GFX_goal_king_aragorn" - texturefile = "gfx/interface/goals/GON/GFX_goal_king_aragorn.tga" - } - SpriteType = { - name = "GFX_goal_light_the_beacons" - texturefile = "gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga" - } - SpriteType = { - name = "gon_defame_isildurs_lineage" - texturefile = "gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds" - } - SpriteType = { - name = "gon_ensure_popular_support" - texturefile = "gfx/interface/goals/GON/gon_ensure_popular_support.dds" - } - SpriteType = { - name = "gon_gain_favour_with_the_elves" - texturefile = "gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds" - } - SpriteType = { - name = "gon_gondor_needs_no_king" - texturefile = "gfx/interface/goals/GON/gon_gondor_needs_no_king.dds" - } - SpriteType = { - name = "gon_historical_claims" - texturefile = "gfx/interface/goals/GON/gon_historical_claims.dds" - } - SpriteType = { - name = "gon_ithc_emergency_measures" - texturefile = "gfx/interface/goals/GON/gon_ithc_emergency_measures.dds" - } - SpriteType = { - name = "gon_ithc_evacuate" - texturefile = "gfx/interface/goals/GON/gon_ithc_evacuate.dds" - } - SpriteType = { - name = "gon_ithc_hold_firm" - texturefile = "gfx/interface/goals/GON/gon_ithc_hold_firm.dds" - } - SpriteType = { - name = "gon_ithilien_crisis" - texturefile = "gfx/interface/goals/GON/gon_ithilien_crisis.dds" - } - SpriteType = { - name = "gon_liberate_the_capital_from_the_usurpers" - texturefile = "gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds" - } - SpriteType = { - name = "gon_purge_the_aristocracy" - texturefile = "gfx/interface/goals/GON/gon_purge_the_aristocracy.dds" - } - SpriteType = { - name = "gon_rally_support_in_enedwaith" - texturefile = "gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds" - } - SpriteType = { - name = "gon_strengthen_ties_with_angmar" - texturefile = "gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds" - } - SpriteType = { - name = "gon_the_peoples_fleet" - texturefile = "gfx/interface/goals/GON/gon_the_peoples_fleet.dds" - } - SpriteType = { - name = "GFX_goal_gundabad" - texturefile = "gfx/interface/goals/GUN/GFX_goal_gundabad.tga" - } - SpriteType = { - name = "GFX_goal_army_uruk_hai" - texturefile = "gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga" - } - SpriteType = { - name = "GFX_goal_burn_fangorn_forest" - texturefile = "gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga" - } - SpriteType = { - name = "GFX_goal_imprisend_gandalf" - texturefile = "gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga" - } - SpriteType = { - name = "GFX_goal_meet_with_gandalf" - texturefile = "gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga" - } - SpriteType = { - name = "GFX_goal_orthanc_destroyed" - texturefile = "gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga" - } - SpriteType = { - name = "GFX_goal_rally_the_tribes" - texturefile = "gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga" - } - SpriteType = { - name = "GFX_goal_sauron_is_looking" - texturefile = "gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga" - } - SpriteType = { - name = "GFX_goal_the_white_hand" - texturefile = "gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga" - } - SpriteType = { - name = "GFX_goal_ways_of_the_light" - texturefile = "gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga" - } - SpriteType = { - name = "GFX_goal_celeborn" - texturefile = "gfx/interface/goals/LTH/GFX_goal_celeborn.tga" - } - SpriteType = { - name = "GFX_goal_galadriel" - texturefile = "gfx/interface/goals/LTH/GFX_goal_galadriel.tga" - } - SpriteType = { - name = "lth_abolishtermlimits" - texturefile = "gfx/interface/goals/LTH/lth_abolishtermlimits.dds" - } - SpriteType = { - name = "lth_acceleratetheinevitable" - texturefile = "gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds" - } - SpriteType = { - name = "lth_acknowledgethemordorthreat" - texturefile = "gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds" - } - SpriteType = { - name = "lth_aegisoflight" - texturefile = "gfx/interface/goals/LTH/lth_aegisoflight.dds" - } - SpriteType = { - name = "lth_affiliatewithlindon" - texturefile = "gfx/interface/goals/LTH/lth_affiliatewithlindon.dds" - } - SpriteType = { - name = "lth_agestureofgoodwill" - texturefile = "gfx/interface/goals/LTH/lth_agestureofgoodwill.dds" - } - SpriteType = { - name = "lth_aidtotheweary" - texturefile = "gfx/interface/goals/LTH/lth_aidtotheweary.dds" - } - SpriteType = { - name = "lth_alignthenobility" - texturefile = "gfx/interface/goals/LTH/lth_alignthenobility.dds" - } - SpriteType = { - name = "lth_allianceoflight" - texturefile = "gfx/interface/goals/LTH/lth_allianceoflight.dds" - } - SpriteType = { - name = "lth_allywithmen" - texturefile = "gfx/interface/goals/LTH/lth_allywithmen.dds" - } - SpriteType = { - name = "lth_amostgenerousoffer" - texturefile = "gfx/interface/goals/LTH/lth_amostgenerousoffer.dds" - } - SpriteType = { - name = "lth_ancestralechoesintandem" - texturefile = "gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds" - } - SpriteType = { - name = "lth_anelvenfellowship" - texturefile = "gfx/interface/goals/LTH/lth_anelvenfellowship.dds" - } - SpriteType = { - name = "lth_anewbeginning" - texturefile = "gfx/interface/goals/LTH/lth_anewbeginning.dds" - } - SpriteType = { - name = "lth_anewelvenlanguage" - texturefile = "gfx/interface/goals/LTH/lth_anewelvenlanguage.dds" - } - SpriteType = { - name = "lth_appointedrepresentatives" - texturefile = "gfx/interface/goals/LTH/lth_appointedrepresentatives.dds" - } - SpriteType = { - name = "lth_associatewithnonelves" - texturefile = "gfx/interface/goals/LTH/lth_associatewithnonelves.dds" - } - SpriteType = { - name = "lth_atanycost" - texturefile = "gfx/interface/goals/LTH/lth_atanycost.dds" - } - SpriteType = { - name = "lth_atasteofempire" - texturefile = "gfx/interface/goals/LTH/lth_atasteofempire.dds" - } - SpriteType = { - name = "lth_aulescraftmanship" - texturefile = "gfx/interface/goals/LTH/lth_aulescraftmanship.dds" - } - SpriteType = { - name = "lth_beaconofhope" - texturefile = "gfx/interface/goals/LTH/lth_beaconofhope.dds" - } - SpriteType = { - name = "lth_bideourtime" - texturefile = "gfx/interface/goals/LTH/lth_bideourtime.dds" - } - SpriteType = { - name = "lth_bladesoftheeldar" - texturefile = "gfx/interface/goals/LTH/lth_bladesoftheeldar.dds" - } - SpriteType = { - name = "lth_bondsofnature" - texturefile = "gfx/interface/goals/LTH/lth_bondsofnature.dds" - } - SpriteType = { - name = "lth_breakthechainsofisolation" - texturefile = "gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds" - } - SpriteType = { - name = "lth_burrythemintheirholes" - texturefile = "gfx/interface/goals/LTH/lth_burrythemintheirholes.dds" - } - SpriteType = { - name = "lth_celeborncounsel" - texturefile = "gfx/interface/goals/LTH/lth_celeborncounsel.dds" - } - SpriteType = { - name = "lth_celeborngaladrielaccord" - texturefile = "gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds" - } - SpriteType = { - name = "lth_celebornsexile" - texturefile = "gfx/interface/goals/LTH/lth_celebornsexile.dds" - } - SpriteType = { - name = "lth_celebornsreforms" - texturefile = "gfx/interface/goals/LTH/lth_celebornsreforms.dds" - } - SpriteType = { - name = "lth_celebrateperendhillegends" - texturefile = "gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds" - } - SpriteType = { - name = "lth_cleansethetunnels" - texturefile = "gfx/interface/goals/LTH/lth_cleansethetunnels.dds" - } - SpriteType = { - name = "lth_collectivedefenseclause" - texturefile = "gfx/interface/goals/LTH/lth_collectivedefenseclause.dds" - } - SpriteType = { - name = "lth_commemorategondolin" - texturefile = "gfx/interface/goals/LTH/lth_commemorategondolin.dds" - } - SpriteType = { - name = "lth_commemoratethecelebrantbattle" - texturefile = "gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds" - } - SpriteType = { - name = "lth_commercialnavigation" - texturefile = "gfx/interface/goals/LTH/lth_commercialnavigation.dds" - } - SpriteType = { - name = "lth_conscecratecarasgaladhon" - texturefile = "gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds" - } - SpriteType = { - name = "lth_conscecratecerinamroth" - texturefile = "gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds" - } - SpriteType = { - name = "lth_consulttheelves" - texturefile = "gfx/interface/goals/LTH/lth_consulttheelves.dds" - } - SpriteType = { - name = "lth_cooperatewithmirkwood" - texturefile = "gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds" - } - SpriteType = { - name = "lth_cooperationefforts" - texturefile = "gfx/interface/goals/LTH/lth_cooperationefforts.dds" - } - SpriteType = { - name = "lth_coordinatedresistance" - texturefile = "gfx/interface/goals/LTH/lth_coordinatedresistance.dds" - } - SpriteType = { - name = "lth_coordinatedsanctions" - texturefile = "gfx/interface/goals/LTH/lth_coordinatedsanctions.dds" - } - SpriteType = { - name = "lth_culturalexchangeinitiatives" - texturefile = "gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds" - } - SpriteType = { - name = "lth_deepknowledge" - texturefile = "gfx/interface/goals/LTH/lth_deepknowledge.dds" - } - SpriteType = { - name = "lth_defensiveperimeter" - texturefile = "gfx/interface/goals/LTH/lth_defensiveperimeter.dds" - } - SpriteType = { - name = "lth_deterrence" - texturefile = "gfx/interface/goals/LTH/lth_deterrence.dds" - } - SpriteType = { - name = "lth_diorthefair" - texturefile = "gfx/interface/goals/LTH/lth_diorthefair.dds" - } - SpriteType = { - name = "lth_discordinthegoldenwood" - texturefile = "gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds" - } - SpriteType = { - name = "lth_discovernewrealms" - texturefile = "gfx/interface/goals/LTH/lth_discovernewrealms.dds" - } - SpriteType = { - name = "lth_dismantlethenazgul" - texturefile = "gfx/interface/goals/LTH/lth_dismantlethenazgul.dds" - } - SpriteType = { - name = "lth_dreadfulasstormandlightning" - texturefile = "gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds" - } - SpriteType = { - name = "lth_eaglesofmanwe" - texturefile = "gfx/interface/goals/LTH/lth_eaglesofmanwe.dds" - } - SpriteType = { - name = "lth_earendilthemariner" - texturefile = "gfx/interface/goals/LTH/lth_earendilthemariner.dds" - } - SpriteType = { - name = "lth_echoesofrivendell" - texturefile = "gfx/interface/goals/LTH/lth_echoesofrivendell.dds" - } - SpriteType = { - name = "lth_echoesoftheeldendays" - texturefile = "gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds" - } - SpriteType = { - name = "lth_electedrepresentatives" - texturefile = "gfx/interface/goals/LTH/lth_electedrepresentatives.dds" - } - SpriteType = { - name = "lth_elrondtheperedhil" - texturefile = "gfx/interface/goals/LTH/lth_elrondtheperedhil.dds" - } - SpriteType = { - name = "lth_elrosofnumenor" - texturefile = "gfx/interface/goals/LTH/lth_elrosofnumenor.dds" - } - SpriteType = { - name = "lth_elvencavalry" - texturefile = "gfx/interface/goals/LTH/lth_elvencavalry.dds" - } - SpriteType = { - name = "lth_elvenforges" - texturefile = "gfx/interface/goals/LTH/lth_elvenforges.dds" - } - SpriteType = { - name = "lth_elvenharmony" - texturefile = "gfx/interface/goals/LTH/lth_elvenharmony.dds" - } - SpriteType = { - name = "lth_elvensupremacy" - texturefile = "gfx/interface/goals/LTH/lth_elvensupremacy.dds" - } - SpriteType = { - name = "lth_elvenweaponry" - texturefile = "gfx/interface/goals/LTH/lth_elvenweaponry.dds" - } - SpriteType = { - name = "lth_empowerhaldir" - texturefile = "gfx/interface/goals/LTH/lth_empowerhaldir.dds" - } - SpriteType = { - name = "lth_endurethedarkness" - texturefile = "gfx/interface/goals/LTH/lth_endurethedarkness.dds" - } - SpriteType = { - name = "lth_ensurefoodsecurity" - texturefile = "gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds" - } - SpriteType = { - name = "lth_establishagraindole" - texturefile = "gfx/interface/goals/LTH/lth_establishagraindole.dds" - } - SpriteType = { - name = "lth_eternalwisdom" - texturefile = "gfx/interface/goals/LTH/lth_eternalwisdom.dds" - } - SpriteType = { - name = "lth_executivevigour" - texturefile = "gfx/interface/goals/LTH/lth_executivevigour.dds" - } - SpriteType = { - name = "lth_fairastheseaandsun" - texturefile = "gfx/interface/goals/LTH/lth_fairastheseaandsun.dds" - } - SpriteType = { - name = "lth_fellbeastsofmordor" - texturefile = "gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds" - } - SpriteType = { - name = "lth_forgealliances" - texturefile = "gfx/interface/goals/LTH/lth_forgealliances.dds" - } - SpriteType = { - name = "lth_galadrielsfarewell" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsfarewell.dds" - } - SpriteType = { - name = "lth_galadrielsmirror" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsmirror.dds" - } - SpriteType = { - name = "lth_galadrielspowers" - texturefile = "gfx/interface/goals/LTH/lth_galadrielspowers.dds" - } - SpriteType = { - name = "lth_galadrielsvision" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsvision.dds" - } - SpriteType = { - name = "lth_gal_mirror" - texturefile = "gfx/interface/goals/LTH/lth_gal_mirror.dds" - } - SpriteType = { - name = "lth_greatestofwarriors" - texturefile = "gfx/interface/goals/LTH/lth_greatestofwarriors.dds" - } - SpriteType = { - name = "lth_guardiansoftheriveranduin" - texturefile = "gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds" - } - SpriteType = { - name = "lth_guardiansofthesilverwood" - texturefile = "gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds" - } - SpriteType = { - name = "lth_guardiansofthewild" - texturefile = "gfx/interface/goals/LTH/lth_guardiansofthewild.dds" - } - SpriteType = { - name = "lth_harmonicascendancy" - texturefile = "gfx/interface/goals/LTH/lth_harmonicascendancy.dds" - } - SpriteType = { - name = "lth_harmonyofthesindar" - texturefile = "gfx/interface/goals/LTH/lth_harmonyofthesindar.dds" - } - SpriteType = { - name = "lth_hegemony" - texturefile = "gfx/interface/goals/LTH/lth_hegemony.dds" - } - SpriteType = { - name = "lth_immortalendurance" - texturefile = "gfx/interface/goals/LTH/lth_immortalendurance.dds" - } - SpriteType = { - name = "lth_investfocus" - texturefile = "gfx/interface/goals/LTH/lth_investfocus.dds" - } - SpriteType = { - name = "lth_invitecirdan" - texturefile = "gfx/interface/goals/LTH/lth_invitecirdan.dds" - } - SpriteType = { - name = "lth_inviteelrond" - texturefile = "gfx/interface/goals/LTH/lth_inviteelrond.dds" - } - SpriteType = { - name = "lth_invitegandalf" - texturefile = "gfx/interface/goals/LTH/lth_invitegandalf.dds" - } - SpriteType = { - name = "lth_invitesaruman" - texturefile = "gfx/interface/goals/LTH/lth_invitesaruman.dds" - } - SpriteType = { - name = "lth_invokethetaleofgaladrielandeorl" - texturefile = "gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds" - } - SpriteType = { - name = "lth_labourtaxfornonelves" - texturefile = "gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds" - } - SpriteType = { - name = "lth_leadbyexample" - texturefile = "gfx/interface/goals/LTH/lth_leadbyexample.dds" - } - SpriteType = { - name = "lth_learnfromthestrongest" - texturefile = "gfx/interface/goals/LTH/lth_learnfromthestrongest.dds" - } - SpriteType = { - name = "lth_legacyofthenoldor" - texturefile = "gfx/interface/goals/LTH/lth_legacyofthenoldor.dds" - } - SpriteType = { - name = "lth_limitedintervention" - texturefile = "gfx/interface/goals/LTH/lth_limitedintervention.dds" - } - SpriteType = { - name = "lth_localautonomy" - texturefile = "gfx/interface/goals/LTH/lth_localautonomy.dds" - } - SpriteType = { - name = "lth_lorekeepersguild" - texturefile = "gfx/interface/goals/LTH/lth_lorekeepersguild.dds" - } - SpriteType = { - name = "lth_lothlorienarchers" - texturefile = "gfx/interface/goals/LTH/lth_lothlorienarchers.dds" - } - SpriteType = { - name = "lth_maintainalliances" - texturefile = "gfx/interface/goals/LTH/lth_maintainalliances.dds" - } - SpriteType = { - name = "lth_maintainstabilityinthewest" - texturefile = "gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds" - } - SpriteType = { - name = "lth_mallorntreearchiotecture" - texturefile = "gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds" - } - SpriteType = { - name = "lth_marchinunison" - texturefile = "gfx/interface/goals/LTH/lth_marchinunison.dds" - } - SpriteType = { - name = "lth_marchwardensoflothlorien" - texturefile = "gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds" - } - SpriteType = { - name = "lth_martialalliance" - texturefile = "gfx/interface/goals/LTH/lth_martialalliance.dds" - } - SpriteType = { - name = "lth_memberexpansion" - texturefile = "gfx/interface/goals/LTH/lth_memberexpansion.dds" - } - SpriteType = { - name = "lth_mendtheschism" - texturefile = "gfx/interface/goals/LTH/lth_mendtheschism.dds" - } - SpriteType = { - name = "lth_meritbasedadvancement" - texturefile = "gfx/interface/goals/LTH/lth_meritbasedadvancement.dds" - } - SpriteType = { - name = "lth_metalworkandjewellery" - texturefile = "gfx/interface/goals/LTH/lth_metalworkandjewellery.dds" - } - SpriteType = { - name = "lth_migrationtreaties" - texturefile = "gfx/interface/goals/LTH/lth_migrationtreaties.dds" - } - SpriteType = { - name = "lth_minglewiththemortals" - texturefile = "gfx/interface/goals/LTH/lth_minglewiththemortals.dds" - } - SpriteType = { - name = "lth_mirrorupgrade" - texturefile = "gfx/interface/goals/LTH/lth_mirrorupgrade.dds" - } - SpriteType = { - name = "lth_nonelvencitizenship" - texturefile = "gfx/interface/goals/LTH/lth_nonelvencitizenship.dds" - } - SpriteType = { - name = "lth_northboundinvasion" - texturefile = "gfx/interface/goals/LTH/lth_northboundinvasion.dds" - } - SpriteType = { - name = "lth_nurturingthehalfelven" - texturefile = "gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds" - } - SpriteType = { - name = "lth_offerpassagetothehalflings" - texturefile = "gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds" - } - SpriteType = { - name = "lth_organizetributaries" - texturefile = "gfx/interface/goals/LTH/lth_organizetributaries.dds" - } - SpriteType = { - name = "lth_ourowninitiative" - texturefile = "gfx/interface/goals/LTH/lth_ourowninitiative.dds" - } - SpriteType = { - name = "lth_patrolsandriverwardens" - texturefile = "gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds" - } - SpriteType = { - name = "lth_preemptivemeasures" - texturefile = "gfx/interface/goals/LTH/lth_preemptivemeasures.dds" - } - SpriteType = { - name = "lth_preemtptivedepartures" - texturefile = "gfx/interface/goals/LTH/lth_preemtptivedepartures.dds" - } - SpriteType = { - name = "lth_preservationofknowledge" - texturefile = "gfx/interface/goals/LTH/lth_preservationofknowledge.dds" - } - SpriteType = { - name = "lth_princessofthenoldor" - texturefile = "gfx/interface/goals/LTH/lth_princessofthenoldor.dds" - } - SpriteType = { - name = "lth_prisonervivisections" - texturefile = "gfx/interface/goals/LTH/lth_prisonervivisections.dds" - } - SpriteType = { - name = "lth_proposalsandresolutions" - texturefile = "gfx/interface/goals/LTH/lth_proposalsandresolutions.dds" - } - SpriteType = { - name = "lth_provincialcouncils" - texturefile = "gfx/interface/goals/LTH/lth_provincialcouncils.dds" - } - SpriteType = { - name = "lth_publiccelebrations" - texturefile = "gfx/interface/goals/LTH/lth_publiccelebrations.dds" - } - SpriteType = { - name = "lth_queenofthedawn" - texturefile = "gfx/interface/goals/LTH/lth_queenofthedawn.dds" - } - SpriteType = { - name = "lth_reassertcelebornslodrship" - texturefile = "gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds" - } - SpriteType = { - name = "lth_reformmilitaryleadership" - texturefile = "gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds" - } - SpriteType = { - name = "lth_reformtaxcollection" - texturefile = "gfx/interface/goals/LTH/lth_reformtaxcollection.dds" - } - SpriteType = { - name = "lth_refugeofdoriath" - texturefile = "gfx/interface/goals/LTH/lth_refugeofdoriath.dds" - } - SpriteType = { - name = "lth_researchcooperation" - texturefile = "gfx/interface/goals/LTH/lth_researchcooperation.dds" - } - SpriteType = { - name = "lth_resistthedarkness" - texturefile = "gfx/interface/goals/LTH/lth_resistthedarkness.dds" - } - SpriteType = { - name = "lth_resourcestorage" - texturefile = "gfx/interface/goals/LTH/lth_resourcestorage.dds" - } - SpriteType = { - name = "lth_revivethewhitecouncil" - texturefile = "gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds" - } - SpriteType = { - name = "lth_ridersofthenaith" - texturefile = "gfx/interface/goals/LTH/lth_ridersofthenaith.dds" - } - SpriteType = { - name = "lth_ringenchantments" - texturefile = "gfx/interface/goals/LTH/lth_ringenchantments.dds" - } - SpriteType = { - name = "lth_sacredtreesofthenhail" - texturefile = "gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds" - } - SpriteType = { - name = "lth_safeguardtheelves" - texturefile = "gfx/interface/goals/LTH/lth_safeguardtheelves.dds" - } - SpriteType = { - name = "lth_safehaven" - texturefile = "gfx/interface/goals/LTH/lth_safehaven.dds" - } - SpriteType = { - name = "lth_sealtheborders" - texturefile = "gfx/interface/goals/LTH/lth_sealtheborders.dds" - } - SpriteType = { - name = "lth_seizetheonering" - texturefile = "gfx/interface/goals/LTH/lth_seizetheonering.dds" - } - SpriteType = { - name = "lth_selectiveempowerement" - texturefile = "gfx/interface/goals/LTH/lth_selectiveempowerement.dds" - } - SpriteType = { - name = "lth_sendadelegationtoerebor" - texturefile = "gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds" - } - SpriteType = { - name = "lth_sendadelegationtogondor" - texturefile = "gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds" - } - SpriteType = { - name = "lth_sendaidtohelmsdeep" - texturefile = "gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds" - } - SpriteType = { - name = "lth_sendaidtominastirith" - texturefile = "gfx/interface/goals/LTH/lth_sendaidtominastirith.dds" - } - SpriteType = { - name = "lth_senddelegationtomoria" - texturefile = "gfx/interface/goals/LTH/lth_senddelegationtomoria.dds" - } - SpriteType = { - name = "lth_sentinelsofcerinamroth" - texturefile = "gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds" - } - SpriteType = { - name = "lth_sharedtrainingprograms" - texturefile = "gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds" - } - SpriteType = { - name = "lth_silvanelitewarriors" - texturefile = "gfx/interface/goals/LTH/lth_silvanelitewarriors.dds" - } - SpriteType = { - name = "lth_silverthornarrows" - texturefile = "gfx/interface/goals/LTH/lth_silverthornarrows.dds" - } - SpriteType = { - name = "lth_sindarpathstalkers" - texturefile = "gfx/interface/goals/LTH/lth_sindarpathstalkers.dds" - } - SpriteType = { - name = "lth_skysoilandwater" - texturefile = "gfx/interface/goals/LTH/lth_skysoilandwater.dds" - } - SpriteType = { - name = "lth_spidersofungoliant" - texturefile = "gfx/interface/goals/LTH/lth_spidersofungoliant.dds" - } - SpriteType = { - name = "lth_standardizedweaponsresearch" - texturefile = "gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds" - } - SpriteType = { - name = "lth_strengthenfortifications" - texturefile = "gfx/interface/goals/LTH/lth_strengthenfortifications.dds" - } - SpriteType = { - name = "lth_supportmordorsenemies" - texturefile = "gfx/interface/goals/LTH/lth_supportmordorsenemies.dds" - } - SpriteType = { - name = "lth_supportofthegreateagles" - texturefile = "gfx/interface/goals/LTH/lth_supportofthegreateagles.dds" - } - SpriteType = { - name = "lth_supportthefellowship" - texturefile = "gfx/interface/goals/LTH/lth_supportthefellowship.dds" - } - SpriteType = { - name = "lth_supportthegreycompany" - texturefile = "gfx/interface/goals/LTH/lth_supportthegreycompany.dds" - } - SpriteType = { - name = "lth_tacklethedwarves" - texturefile = "gfx/interface/goals/LTH/lth_tacklethedwarves.dds" - } - SpriteType = { - name = "lth_tackletherealmsofmen" - texturefile = "gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds" - } - SpriteType = { - name = "lth_tamingthewild" - texturefile = "gfx/interface/goals/LTH/lth_tamingthewild.dds" - } - SpriteType = { - name = "lth_territorialadministration" - texturefile = "gfx/interface/goals/LTH/lth_territorialadministration.dds" - } - SpriteType = { - name = "lth_territorialintegration" - texturefile = "gfx/interface/goals/LTH/lth_territorialintegration.dds" - } - SpriteType = { - name = "lth_thearchivesofagespast" - texturefile = "gfx/interface/goals/LTH/lth_thearchivesofagespast.dds" - } - SpriteType = { - name = "lth_theburdensofleadership" - texturefile = "gfx/interface/goals/LTH/lth_theburdensofleadership.dds" - } - SpriteType = { - name = "lth_thecallofvalinor" - texturefile = "gfx/interface/goals/LTH/lth_thecallofvalinor.dds" - } - SpriteType = { - name = "lth_thechildrenofluthien" - texturefile = "gfx/interface/goals/LTH/lth_thechildrenofluthien.dds" - } - SpriteType = { - name = "lth_thecouncilofquendi" - texturefile = "gfx/interface/goals/LTH/lth_thecouncilofquendi.dds" - } - SpriteType = { - name = "lth_thedissolutionoftheelvennobility" - texturefile = "gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds" - } - SpriteType = { - name = "lth_theelvenalliance" - texturefile = "gfx/interface/goals/LTH/lth_theelvenalliance.dds" - } - SpriteType = { - name = "lth_theelvenfleet" - texturefile = "gfx/interface/goals/LTH/lth_theelvenfleet.dds" - } - SpriteType = { - name = "lth_theemissariesguild" - texturefile = "gfx/interface/goals/LTH/lth_theemissariesguild.dds" - } - SpriteType = { - name = "lth_theenigmaofnenya" - texturefile = "gfx/interface/goals/LTH/lth_theenigmaofnenya.dds" - } - SpriteType = { - name = "lth_theeternaldominion" - texturefile = "gfx/interface/goals/LTH/lth_theeternaldominion.dds" - } - SpriteType = { - name = "lth_thefateofmortals" - texturefile = "gfx/interface/goals/LTH/lth_thefateofmortals.dds" - } - SpriteType = { - name = "lth_thefestivalofunity" - texturefile = "gfx/interface/goals/LTH/lth_thefestivalofunity.dds" - } - SpriteType = { - name = "lth_theforestbetween" - texturefile = "gfx/interface/goals/LTH/lth_theforestbetween.dds" - } - SpriteType = { - name = "lth_thefortressofdolguldur" - texturefile = "gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds" - } - SpriteType = { - name = "lth_thegiftofservitude" - texturefile = "gfx/interface/goals/LTH/lth_thegiftofservitude.dds" - } - SpriteType = { - name = "lth_thegirdleofmelian" - texturefile = "gfx/interface/goals/LTH/lth_thegirdleofmelian.dds" - } - SpriteType = { - name = "lth_thegreatbeasts" - texturefile = "gfx/interface/goals/LTH/lth_thegreatbeasts.dds" - } - SpriteType = { - name = "lth_thegreatschism" - texturefile = "gfx/interface/goals/LTH/lth_thegreatschism.dds" - } - SpriteType = { - name = "lth_thehiddenrealm" - texturefile = "gfx/interface/goals/LTH/lth_thehiddenrealm.dds" - } - SpriteType = { - name = "lth_theinfluenceofrivendell" - texturefile = "gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds" - } - SpriteType = { - name = "lth_thelasteldar" - texturefile = "gfx/interface/goals/LTH/lth_thelasteldar.dds" - } - SpriteType = { - name = "lth_thelaststand" - texturefile = "gfx/interface/goals/LTH/lth_thelaststand.dds" - } - SpriteType = { - name = "lth_thelibraryofcarasgaladhon" - texturefile = "gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds" - } - SpriteType = { - name = "lth_thenandorheritage" - texturefile = "gfx/interface/goals/LTH/lth_thenandorheritage.dds" - } - SpriteType = { - name = "lth_theneworder" - texturefile = "gfx/interface/goals/LTH/lth_theneworder.dds" - } - SpriteType = { - name = "lth_thenoldorelite" - texturefile = "gfx/interface/goals/LTH/lth_thenoldorelite.dds" - } - SpriteType = { - name = "lth_theoathoffeanor" - texturefile = "gfx/interface/goals/LTH/lth_theoathoffeanor.dds" - } - SpriteType = { - name = "lth_theonodrimoffangorn" - texturefile = "gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds" - } - SpriteType = { - name = "lth_theopendoorsedict" - texturefile = "gfx/interface/goals/LTH/lth_theopendoorsedict.dds" - } - SpriteType = { - name = "lth_thepeasantassembly" - texturefile = "gfx/interface/goals/LTH/lth_thepeasantassembly.dds" - } - SpriteType = { - name = "lth_thepriviledgeofmembership" - texturefile = "gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds" - } - SpriteType = { - name = "lth_thequeensguard" - texturefile = "gfx/interface/goals/LTH/lth_thequeensguard.dds" - } - SpriteType = { - name = "lth_thereawakening" - texturefile = "gfx/interface/goals/LTH/lth_thereawakening.dds" - } - SpriteType = { - name = "lth_thesentinelnetwork" - texturefile = "gfx/interface/goals/LTH/lth_thesentinelnetwork.dds" - } - SpriteType = { - name = "lth_theshadowswhisper" - texturefile = "gfx/interface/goals/LTH/lth_theshadowswhisper.dds" - } - SpriteType = { - name = "lth_thesongofnimrodel" - texturefile = "gfx/interface/goals/LTH/lth_thesongofnimrodel.dds" - } - SpriteType = { - name = "lth_thesupremeleader" - texturefile = "gfx/interface/goals/LTH/lth_thesupremeleader.dds" - } - SpriteType = { - name = "lth_thetwilightgarden" - texturefile = "gfx/interface/goals/LTH/lth_thetwilightgarden.dds" - } - SpriteType = { - name = "lth_thetwinheartsoflothlorien" - texturefile = "gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds" - } - SpriteType = { - name = "lth_theunholyalliance" - texturefile = "gfx/interface/goals/LTH/lth_theunholyalliance.dds" - } - SpriteType = { - name = "lth_theuntreadedpath" - texturefile = "gfx/interface/goals/LTH/lth_theuntreadedpath.dds" - } - SpriteType = { - name = "lth_thewizardswisdom" - texturefile = "gfx/interface/goals/LTH/lth_thewizardswisdom.dds" - } - SpriteType = { - name = "lth_tieswiththerohirrim" - texturefile = "gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds" - } - SpriteType = { - name = "lth_totalisoltation" - texturefile = "gfx/interface/goals/LTH/lth_totalisoltation.dds" - } - SpriteType = { - name = "lth_trackdowndurinsbane" - texturefile = "gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds" - } - SpriteType = { - name = "lth_tradeagreements" - texturefile = "gfx/interface/goals/LTH/lth_tradeagreements.dds" - } - SpriteType = { - name = "lth_turnlindon" - texturefile = "gfx/interface/goals/LTH/lth_turnlindon.dds" - } - SpriteType = { - name = "lth_turnmirkwood" - texturefile = "gfx/interface/goals/LTH/lth_turnmirkwood.dds" - } - SpriteType = { - name = "lth_turnrivendell" - texturefile = "gfx/interface/goals/LTH/lth_turnrivendell.dds" - } - SpriteType = { - name = "lth_tworingsbecomethone" - texturefile = "gfx/interface/goals/LTH/lth_tworingsbecomethone.dds" - } - SpriteType = { - name = "lth_unionofequals" - texturefile = "gfx/interface/goals/LTH/lth_unionofequals.dds" - } - SpriteType = { - name = "lth_unitethefactions" - texturefile = "gfx/interface/goals/LTH/lth_unitethefactions.dds" - } - SpriteType = { - name = "lth_unityindivision" - texturefile = "gfx/interface/goals/LTH/lth_unityindivision.dds" - } - SpriteType = { - name = "lth_unlikelyallies" - texturefile = "gfx/interface/goals/LTH/lth_unlikelyallies.dds" - } - SpriteType = { - name = "lth_urbancouncils" - texturefile = "gfx/interface/goals/LTH/lth_urbancouncils.dds" - } - SpriteType = { - name = "lth_valesofanduin" - texturefile = "gfx/interface/goals/LTH/lth_valesofanduin.dds" - } - SpriteType = { - name = "lth_wanderersofnandor" - texturefile = "gfx/interface/goals/LTH/lth_wanderersofnandor.dds" - } - SpriteType = { - name = "lth_watersofhealing" - texturefile = "gfx/interface/goals/LTH/lth_watersofhealing.dds" - } - SpriteType = { - name = "lth_wisdomofeluthingol" - texturefile = "gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds" - } - SpriteType = { - name = "lth_wrathoftheforests" - texturefile = "gfx/interface/goals/LTH/lth_wrathoftheforests.dds" - } - SpriteType = { - name = "lth_yavannasblessings" - texturefile = "gfx/interface/goals/LTH/lth_yavannasblessings.dds" - } - SpriteType = { - name = "GFX_goal_deal_with_the_spiders" - texturefile = "gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga" - } - SpriteType = { - name = "GFX_goal_radagast" - texturefile = "gfx/interface/goals/MIR/GFX_goal_radagast.tga" - } - SpriteType = { - name = "GFX_goal_spider_anarchy" - texturefile = "gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga" - } - SpriteType = { - name = "GFX_goal_thranduil" - texturefile = "gfx/interface/goals/MIR/GFX_goal_thranduil.tga" - } - SpriteType = { - name = "GFX_goal_balrog" - texturefile = "gfx/interface/goals/MOA/GFX_goal_balrog.tga" - } - SpriteType = { - name = "GFX_goal_azog" - texturefile = "gfx/interface/goals/MOR/GFX_goal_azog.tga" - } - SpriteType = { - name = "GFX_goal_dark_dol_guldur" - texturefile = "gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga" - } - SpriteType = { - name = "GFX_goal_dol_guldur" - texturefile = "gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga" - } - SpriteType = { - name = "GFX_goal_erebor" - texturefile = "gfx/interface/goals/MOR/GFX_goal_erebor.tga" - } - SpriteType = { - name = "GFX_goal_gather_the_nazgl" - texturefile = "gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga" - } - SpriteType = { - name = "GFX_goal_golum" - texturefile = "gfx/interface/goals/MOR/GFX_goal_golum.tga" - } - SpriteType = { - name = "GFX_goal_grapes" - texturefile = "gfx/interface/goals/MOR/GFX_goal_grapes.tga" - } - SpriteType = { - name = "GFX_goal_ithilien" - texturefile = "gfx/interface/goals/MOR/GFX_goal_ithilien.tga" - } - SpriteType = { - name = "GFX_goal_meats_back_on_the_menu" - texturefile = "gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga" - } - SpriteType = { - name = "GFX_goal_mordor_landscape" - texturefile = "gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga" - } - SpriteType = { - name = "GFX_goal_restore_baraddr" - texturefile = "gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga" - } - SpriteType = { - name = "GFX_goal_sauron_eye" - texturefile = "gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga" - } - SpriteType = { - name = "GFX_goal_skull_treaty" - texturefile = "gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds" - } - SpriteType = { - name = "GFX_goal_stab" - texturefile = "gfx/interface/goals/MOR/GFX_goal_stab.tga" - } - SpriteType = { - name = "GFX_goal_stop_melkor_worship" - texturefile = "gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga" - } - SpriteType = { - name = "GFX_goal_the_one_ring" - texturefile = "gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga" - } - SpriteType = { - name = "GFX_goal_union_of_working_orc_class" - texturefile = "gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga" - } - SpriteType = { - name = "GFX_goal_unleash_sauron" - texturefile = "gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga" - } - SpriteType = { - name = "GFX_servant_of_melkor" - texturefile = "gfx/interface/goals/MOR/GFX_servant_of_melkor.tga" - } - SpriteType = { - name = "GFX_trolls" - texturefile = "gfx/interface/goals/MOR/GFX_trolls.tga" - } - SpriteType = { - name = "GFX_wargoal_dale" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_dale.tga" - } - SpriteType = { - name = "GFX_wargoal_dorwinion" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga" - } - SpriteType = { - name = "GFX_wargoal_erebor" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_erebor.tga" - } - SpriteType = { - name = "GFX_wargoal_gondor" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_gondor.tga" - } - SpriteType = { - name = "GFX_wargoal_harad" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_harad.tga" - } - SpriteType = { - name = "GFX_wargoal_rhun" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_rhun.tga" - } - SpriteType = { - name = "GFX_wargoal_rohan" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_rohan.tga" - } - SpriteType = { - name = "mor_encroach_on_ithilien" - texturefile = "gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds" - } - SpriteType = { - name = "mor_escalate_the_attacks" - texturefile = "gfx/interface/goals/MOR/mor_escalate_the_attacks.dds" - } - SpriteType = { - name = "mor_second_wave" - texturefile = "gfx/interface/goals/MOR/mor_second_wave.dds" - } - SpriteType = { - name = "GFX_goal_dale" - texturefile = "gfx/interface/goals/RHU/GFX_goal_dale.tga" - } - SpriteType = { - name = "GFX_goal_dorwinion" - texturefile = "gfx/interface/goals/RHU/GFX_goal_dorwinion.tga" - } - SpriteType = { - name = "GFX_goal_khamul" - texturefile = "gfx/interface/goals/RHU/GFX_goal_khamul.tga" - } - SpriteType = { - name = "GFX_goal_rhun_civil_war" - texturefile = "gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga" - } - SpriteType = { - name = "GFX_goal_the_blue_wizards" - texturefile = "gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga" - } - SpriteType = { - name = "GFX_wargoal_mordor" - texturefile = "gfx/interface/goals/RHU/GFX_wargoal_mordor.tga" - } - SpriteType = { - name = "GFX_goal_council_of_elrond" - texturefile = "gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga" - } - SpriteType = { - name = "GFX_goal_elrond" - texturefile = "gfx/interface/goals/RIV/GFX_goal_elrond.tga" - } - SpriteType = { - name = "GFX_goal_reforge_narsil" - texturefile = "gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga" - } - SpriteType = { - name = "GFX_goal_take_his_ring" - texturefile = "gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga" - } - SpriteType = { - name = "GFX_goal_allow_gandalf_in" - texturefile = "gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga" - } - SpriteType = { - name = "GFX_goal_assasinate_eomer" - texturefile = "gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga" - } - SpriteType = { - name = "GFX_goal_edoras" - texturefile = "gfx/interface/goals/ROH/GFX_goal_edoras.tga" - } - SpriteType = { - name = "GFX_goal_eowyn" - texturefile = "gfx/interface/goals/ROH/GFX_goal_eowyn.tga" - } - SpriteType = { - name = "GFX_goal_grima" - texturefile = "gfx/interface/goals/ROH/GFX_goal_grima.tga" - } - SpriteType = { - name = "GFX_goal_helms_deep" - texturefile = "gfx/interface/goals/ROH/GFX_goal_helms_deep.tga" - } - SpriteType = { - name = "GFX_goal_helms_deep_weakness" - texturefile = "gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga" - } - SpriteType = { - name = "GFX_goal_rohan" - texturefile = "gfx/interface/goals/ROH/GFX_goal_rohan.tga" - } - SpriteType = { - name = "GFX_goal_sick_theoden" - texturefile = "gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga" - } - SpriteType = { - name = "GFX_goal_theodred" - texturefile = "gfx/interface/goals/ROH/GFX_goal_theodred.tga" - } - SpriteType = { - name = "GFX_goal_trust_gandalf" - texturefile = "gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga" - } - SpriteType = { - name = "GFX_goal_trust_saruman" - texturefile = "gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga" - } - SpriteType = { - name = "GFX_goal_angmar_unalligned_shine" - texturefile = "gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_mordor_shine" - texturefile = "gfx/interface/goals/ANG/GFX_goal_mordor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_mordor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_mordor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_mordor_deal_shine" - texturefile = "gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_mordor_deal.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_witch_king_shine" - texturefile = "gfx/interface/goals/ANG/GFX_goal_witch_king.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_witch_king.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ANG/GFX_goal_witch_king.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_rangers_of_the_north_shine" - texturefile = "gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ART/GFX_goal_rangers_of_the_north.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_unite_by_force_shine" - texturefile = "gfx/interface/goals/ART/GFX_unite_by_force.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ART/GFX_unite_by_force.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ART/GFX_unite_by_force.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_community_effort_shine" - texturefile = "gfx/interface/goals/ENT/GFX_goal_community_effort.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_community_effort.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_community_effort.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_entwood_shine" - texturefile = "gfx/interface/goals/ENT/GFX_goal_entwood.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_entwood.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_entwood.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_fury_of_the_trees_shine" - texturefile = "gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_fury_of_the_trees.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_one_with_the_forest_shine" - texturefile = "gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_one_with_the_forest.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_teachings_of_the_ancients_shine" - texturefile = "gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ENT/GFX_goal_teachings_of_the_ancients.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_army_dwarves_shine" - texturefile = "gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ERE/GFX_goal_army_dwarves.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_generic_anvil_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_anvil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_generic_gondor_research_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_gondor_research.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_generic_industry_I_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_industry_I.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_generic_windmile_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_resource_wood_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_resource_wood.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_resource_wood.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_resource_wood.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_support_belligerent_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_belligerent.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_support_cooperative_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_cooperative.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_support_revolutionary_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_revolutionary.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_support_unalligned_shine" - texturefile = "gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/Generic/GFX_goal_support_unalligned.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_arnor_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_arnor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_arnor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_arnor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_boromir_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_boromir.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_boromir.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_boromir.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_denethor_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_denethor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_denethor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_denethor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_dol_amroth_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_dol_amroth.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_dol_amroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_dol_amroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_faramir_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_faramir.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_faramir.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_faramir.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_ghost_army_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_ghost_army.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_ghost_army.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_ghost_army.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_gondor_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_gondor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_gondor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_gondor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_gon_dam_propaganda_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_king_aragorn_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_king_aragorn.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_king_aragorn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_king_aragorn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_light_the_beacons_shine" - texturefile = "gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/GFX_goal_light_the_beacons.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_defame_isildurs_lineage_shine" - texturefile = "gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_ensure_popular_support_shine" - texturefile = "gfx/interface/goals/GON/gon_ensure_popular_support.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ensure_popular_support.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ensure_popular_support.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_gain_favour_with_the_elves_shine" - texturefile = "gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_gondor_needs_no_king_shine" - texturefile = "gfx/interface/goals/GON/gon_gondor_needs_no_king.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_gondor_needs_no_king.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_gondor_needs_no_king.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_historical_claims_shine" - texturefile = "gfx/interface/goals/GON/gon_historical_claims.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_historical_claims.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_historical_claims.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_ithc_emergency_measures_shine" - texturefile = "gfx/interface/goals/GON/gon_ithc_emergency_measures.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_emergency_measures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_emergency_measures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_ithc_evacuate_shine" - texturefile = "gfx/interface/goals/GON/gon_ithc_evacuate.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_evacuate.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_evacuate.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_ithc_hold_firm_shine" - texturefile = "gfx/interface/goals/GON/gon_ithc_hold_firm.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_hold_firm.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithc_hold_firm.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_ithilien_crisis_shine" - texturefile = "gfx/interface/goals/GON/gon_ithilien_crisis.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithilien_crisis.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_ithilien_crisis.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_liberate_the_capital_from_the_usurpers_shine" - texturefile = "gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_purge_the_aristocracy_shine" - texturefile = "gfx/interface/goals/GON/gon_purge_the_aristocracy.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_purge_the_aristocracy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_purge_the_aristocracy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_rally_support_in_enedwaith_shine" - texturefile = "gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_strengthen_ties_with_angmar_shine" - texturefile = "gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "gon_the_peoples_fleet_shine" - texturefile = "gfx/interface/goals/GON/gon_the_peoples_fleet.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_the_peoples_fleet.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GON/gon_the_peoples_fleet.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_gundabad_shine" - texturefile = "gfx/interface/goals/GUN/GFX_goal_gundabad.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/GUN/GFX_goal_gundabad.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/GUN/GFX_goal_gundabad.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_army_uruk_hai_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_army_uruk_hai.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_burn_fangorn_forest_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_burn_fangorn_forest.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_imprisend_gandalf_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_imprisend_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_meet_with_gandalf_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_meet_with_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_orthanc_destroyed_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_orthanc_destroyed.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_rally_the_tribes_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_rally_the_tribes.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_sauron_is_looking_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_sauron_is_looking.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_the_white_hand_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_the_white_hand.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_ways_of_the_light_shine" - texturefile = "gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ISE/GFX_goal_ways_of_the_light.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_celeborn_shine" - texturefile = "gfx/interface/goals/LTH/GFX_goal_celeborn.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/GFX_goal_celeborn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/GFX_goal_celeborn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_galadriel_shine" - texturefile = "gfx/interface/goals/LTH/GFX_goal_galadriel.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/GFX_goal_galadriel.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/GFX_goal_galadriel.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_abolishtermlimits_shine" - texturefile = "gfx/interface/goals/LTH/lth_abolishtermlimits.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_abolishtermlimits.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_abolishtermlimits.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_acceleratetheinevitable_shine" - texturefile = "gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_acknowledgethemordorthreat_shine" - texturefile = "gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_aegisoflight_shine" - texturefile = "gfx/interface/goals/LTH/lth_aegisoflight.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aegisoflight.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aegisoflight.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_affiliatewithlindon_shine" - texturefile = "gfx/interface/goals/LTH/lth_affiliatewithlindon.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_affiliatewithlindon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_affiliatewithlindon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_agestureofgoodwill_shine" - texturefile = "gfx/interface/goals/LTH/lth_agestureofgoodwill.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_agestureofgoodwill.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_agestureofgoodwill.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_aidtotheweary_shine" - texturefile = "gfx/interface/goals/LTH/lth_aidtotheweary.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aidtotheweary.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aidtotheweary.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_alignthenobility_shine" - texturefile = "gfx/interface/goals/LTH/lth_alignthenobility.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_alignthenobility.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_alignthenobility.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_allianceoflight_shine" - texturefile = "gfx/interface/goals/LTH/lth_allianceoflight.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_allianceoflight.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_allianceoflight.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_allywithmen_shine" - texturefile = "gfx/interface/goals/LTH/lth_allywithmen.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_allywithmen.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_allywithmen.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_amostgenerousoffer_shine" - texturefile = "gfx/interface/goals/LTH/lth_amostgenerousoffer.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_amostgenerousoffer.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_amostgenerousoffer.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_ancestralechoesintandem_shine" - texturefile = "gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_anelvenfellowship_shine" - texturefile = "gfx/interface/goals/LTH/lth_anelvenfellowship.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anelvenfellowship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anelvenfellowship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_anewbeginning_shine" - texturefile = "gfx/interface/goals/LTH/lth_anewbeginning.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anewbeginning.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anewbeginning.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_anewelvenlanguage_shine" - texturefile = "gfx/interface/goals/LTH/lth_anewelvenlanguage.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anewelvenlanguage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_anewelvenlanguage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_appointedrepresentatives_shine" - texturefile = "gfx/interface/goals/LTH/lth_appointedrepresentatives.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_appointedrepresentatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_appointedrepresentatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_associatewithnonelves_shine" - texturefile = "gfx/interface/goals/LTH/lth_associatewithnonelves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_associatewithnonelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_associatewithnonelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_atanycost_shine" - texturefile = "gfx/interface/goals/LTH/lth_atanycost.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_atanycost.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_atanycost.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_atasteofempire_shine" - texturefile = "gfx/interface/goals/LTH/lth_atasteofempire.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_atasteofempire.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_atasteofempire.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_aulescraftmanship_shine" - texturefile = "gfx/interface/goals/LTH/lth_aulescraftmanship.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aulescraftmanship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_aulescraftmanship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_beaconofhope_shine" - texturefile = "gfx/interface/goals/LTH/lth_beaconofhope.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_beaconofhope.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_beaconofhope.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_bideourtime_shine" - texturefile = "gfx/interface/goals/LTH/lth_bideourtime.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bideourtime.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bideourtime.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_bladesoftheeldar_shine" - texturefile = "gfx/interface/goals/LTH/lth_bladesoftheeldar.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bladesoftheeldar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bladesoftheeldar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_bondsofnature_shine" - texturefile = "gfx/interface/goals/LTH/lth_bondsofnature.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bondsofnature.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_bondsofnature.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_breakthechainsofisolation_shine" - texturefile = "gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_burrythemintheirholes_shine" - texturefile = "gfx/interface/goals/LTH/lth_burrythemintheirholes.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_burrythemintheirholes.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_burrythemintheirholes.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_celeborncounsel_shine" - texturefile = "gfx/interface/goals/LTH/lth_celeborncounsel.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celeborncounsel.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celeborncounsel.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_celeborngaladrielaccord_shine" - texturefile = "gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_celebornsexile_shine" - texturefile = "gfx/interface/goals/LTH/lth_celebornsexile.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebornsexile.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebornsexile.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_celebornsreforms_shine" - texturefile = "gfx/interface/goals/LTH/lth_celebornsreforms.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebornsreforms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebornsreforms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_celebrateperendhillegends_shine" - texturefile = "gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_cleansethetunnels_shine" - texturefile = "gfx/interface/goals/LTH/lth_cleansethetunnels.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cleansethetunnels.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cleansethetunnels.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_collectivedefenseclause_shine" - texturefile = "gfx/interface/goals/LTH/lth_collectivedefenseclause.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_collectivedefenseclause.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_collectivedefenseclause.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_commemorategondolin_shine" - texturefile = "gfx/interface/goals/LTH/lth_commemorategondolin.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commemorategondolin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commemorategondolin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_commemoratethecelebrantbattle_shine" - texturefile = "gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_commercialnavigation_shine" - texturefile = "gfx/interface/goals/LTH/lth_commercialnavigation.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commercialnavigation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_commercialnavigation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_conscecratecarasgaladhon_shine" - texturefile = "gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_conscecratecerinamroth_shine" - texturefile = "gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_consulttheelves_shine" - texturefile = "gfx/interface/goals/LTH/lth_consulttheelves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_consulttheelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_consulttheelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_cooperatewithmirkwood_shine" - texturefile = "gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_cooperationefforts_shine" - texturefile = "gfx/interface/goals/LTH/lth_cooperationefforts.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cooperationefforts.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_cooperationefforts.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_coordinatedresistance_shine" - texturefile = "gfx/interface/goals/LTH/lth_coordinatedresistance.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_coordinatedresistance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_coordinatedresistance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_coordinatedsanctions_shine" - texturefile = "gfx/interface/goals/LTH/lth_coordinatedsanctions.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_coordinatedsanctions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_coordinatedsanctions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_culturalexchangeinitiatives_shine" - texturefile = "gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_deepknowledge_shine" - texturefile = "gfx/interface/goals/LTH/lth_deepknowledge.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_deepknowledge.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_deepknowledge.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_defensiveperimeter_shine" - texturefile = "gfx/interface/goals/LTH/lth_defensiveperimeter.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_defensiveperimeter.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_defensiveperimeter.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_deterrence_shine" - texturefile = "gfx/interface/goals/LTH/lth_deterrence.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_deterrence.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_deterrence.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_diorthefair_shine" - texturefile = "gfx/interface/goals/LTH/lth_diorthefair.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_diorthefair.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_diorthefair.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_discordinthegoldenwood_shine" - texturefile = "gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_discovernewrealms_shine" - texturefile = "gfx/interface/goals/LTH/lth_discovernewrealms.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_discovernewrealms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_discovernewrealms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_dismantlethenazgul_shine" - texturefile = "gfx/interface/goals/LTH/lth_dismantlethenazgul.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_dismantlethenazgul.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_dismantlethenazgul.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_dreadfulasstormandlightning_shine" - texturefile = "gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_eaglesofmanwe_shine" - texturefile = "gfx/interface/goals/LTH/lth_eaglesofmanwe.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_eaglesofmanwe.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_eaglesofmanwe.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_earendilthemariner_shine" - texturefile = "gfx/interface/goals/LTH/lth_earendilthemariner.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_earendilthemariner.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_earendilthemariner.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_echoesofrivendell_shine" - texturefile = "gfx/interface/goals/LTH/lth_echoesofrivendell.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_echoesofrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_echoesofrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_echoesoftheeldendays_shine" - texturefile = "gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_electedrepresentatives_shine" - texturefile = "gfx/interface/goals/LTH/lth_electedrepresentatives.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_electedrepresentatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_electedrepresentatives.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elrondtheperedhil_shine" - texturefile = "gfx/interface/goals/LTH/lth_elrondtheperedhil.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elrondtheperedhil.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elrondtheperedhil.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elrosofnumenor_shine" - texturefile = "gfx/interface/goals/LTH/lth_elrosofnumenor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elrosofnumenor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elrosofnumenor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elvencavalry_shine" - texturefile = "gfx/interface/goals/LTH/lth_elvencavalry.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvencavalry.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvencavalry.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elvenforges_shine" - texturefile = "gfx/interface/goals/LTH/lth_elvenforges.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenforges.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenforges.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elvenharmony_shine" - texturefile = "gfx/interface/goals/LTH/lth_elvenharmony.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenharmony.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenharmony.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elvensupremacy_shine" - texturefile = "gfx/interface/goals/LTH/lth_elvensupremacy.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvensupremacy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvensupremacy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_elvenweaponry_shine" - texturefile = "gfx/interface/goals/LTH/lth_elvenweaponry.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenweaponry.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_elvenweaponry.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_empowerhaldir_shine" - texturefile = "gfx/interface/goals/LTH/lth_empowerhaldir.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_empowerhaldir.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_empowerhaldir.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_endurethedarkness_shine" - texturefile = "gfx/interface/goals/LTH/lth_endurethedarkness.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_endurethedarkness.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_endurethedarkness.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_ensurefoodsecurity_shine" - texturefile = "gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_establishagraindole_shine" - texturefile = "gfx/interface/goals/LTH/lth_establishagraindole.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_establishagraindole.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_establishagraindole.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_eternalwisdom_shine" - texturefile = "gfx/interface/goals/LTH/lth_eternalwisdom.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_eternalwisdom.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_eternalwisdom.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_executivevigour_shine" - texturefile = "gfx/interface/goals/LTH/lth_executivevigour.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_executivevigour.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_executivevigour.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_fairastheseaandsun_shine" - texturefile = "gfx/interface/goals/LTH/lth_fairastheseaandsun.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_fairastheseaandsun.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_fairastheseaandsun.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_fellbeastsofmordor_shine" - texturefile = "gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_forgealliances_shine" - texturefile = "gfx/interface/goals/LTH/lth_forgealliances.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_forgealliances.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_forgealliances.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_galadrielsfarewell_shine" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsfarewell.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsfarewell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsfarewell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_galadrielsmirror_shine" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsmirror.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsmirror.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsmirror.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_galadrielspowers_shine" - texturefile = "gfx/interface/goals/LTH/lth_galadrielspowers.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielspowers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielspowers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_galadrielsvision_shine" - texturefile = "gfx/interface/goals/LTH/lth_galadrielsvision.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsvision.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_galadrielsvision.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_gal_mirror_shine" - texturefile = "gfx/interface/goals/LTH/lth_gal_mirror.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_gal_mirror.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_gal_mirror.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_greatestofwarriors_shine" - texturefile = "gfx/interface/goals/LTH/lth_greatestofwarriors.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_greatestofwarriors.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_greatestofwarriors.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_guardiansoftheriveranduin_shine" - texturefile = "gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_guardiansofthesilverwood_shine" - texturefile = "gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_guardiansofthewild_shine" - texturefile = "gfx/interface/goals/LTH/lth_guardiansofthewild.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansofthewild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_guardiansofthewild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_harmonicascendancy_shine" - texturefile = "gfx/interface/goals/LTH/lth_harmonicascendancy.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_harmonicascendancy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_harmonicascendancy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_harmonyofthesindar_shine" - texturefile = "gfx/interface/goals/LTH/lth_harmonyofthesindar.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_harmonyofthesindar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_harmonyofthesindar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_hegemony_shine" - texturefile = "gfx/interface/goals/LTH/lth_hegemony.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_hegemony.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_hegemony.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_immortalendurance_shine" - texturefile = "gfx/interface/goals/LTH/lth_immortalendurance.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_immortalendurance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_immortalendurance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_investfocus_shine" - texturefile = "gfx/interface/goals/LTH/lth_investfocus.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_investfocus.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_investfocus.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_invitecirdan_shine" - texturefile = "gfx/interface/goals/LTH/lth_invitecirdan.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitecirdan.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitecirdan.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_inviteelrond_shine" - texturefile = "gfx/interface/goals/LTH/lth_inviteelrond.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_inviteelrond.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_inviteelrond.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_invitegandalf_shine" - texturefile = "gfx/interface/goals/LTH/lth_invitegandalf.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitegandalf.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitegandalf.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_invitesaruman_shine" - texturefile = "gfx/interface/goals/LTH/lth_invitesaruman.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitesaruman.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invitesaruman.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_invokethetaleofgaladrielandeorl_shine" - texturefile = "gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_labourtaxfornonelves_shine" - texturefile = "gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_leadbyexample_shine" - texturefile = "gfx/interface/goals/LTH/lth_leadbyexample.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_leadbyexample.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_leadbyexample.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_learnfromthestrongest_shine" - texturefile = "gfx/interface/goals/LTH/lth_learnfromthestrongest.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_learnfromthestrongest.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_learnfromthestrongest.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_legacyofthenoldor_shine" - texturefile = "gfx/interface/goals/LTH/lth_legacyofthenoldor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_legacyofthenoldor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_legacyofthenoldor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_limitedintervention_shine" - texturefile = "gfx/interface/goals/LTH/lth_limitedintervention.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_limitedintervention.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_limitedintervention.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_localautonomy_shine" - texturefile = "gfx/interface/goals/LTH/lth_localautonomy.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_localautonomy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_localautonomy.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_lorekeepersguild_shine" - texturefile = "gfx/interface/goals/LTH/lth_lorekeepersguild.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_lorekeepersguild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_lorekeepersguild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_lothlorienarchers_shine" - texturefile = "gfx/interface/goals/LTH/lth_lothlorienarchers.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_lothlorienarchers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_lothlorienarchers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_maintainalliances_shine" - texturefile = "gfx/interface/goals/LTH/lth_maintainalliances.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_maintainalliances.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_maintainalliances.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_maintainstabilityinthewest_shine" - texturefile = "gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_mallorntreearchiotecture_shine" - texturefile = "gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_marchinunison_shine" - texturefile = "gfx/interface/goals/LTH/lth_marchinunison.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_marchinunison.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_marchinunison.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_marchwardensoflothlorien_shine" - texturefile = "gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_martialalliance_shine" - texturefile = "gfx/interface/goals/LTH/lth_martialalliance.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_martialalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_martialalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_memberexpansion_shine" - texturefile = "gfx/interface/goals/LTH/lth_memberexpansion.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_memberexpansion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_memberexpansion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_mendtheschism_shine" - texturefile = "gfx/interface/goals/LTH/lth_mendtheschism.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mendtheschism.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mendtheschism.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_meritbasedadvancement_shine" - texturefile = "gfx/interface/goals/LTH/lth_meritbasedadvancement.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_meritbasedadvancement.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_meritbasedadvancement.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_metalworkandjewellery_shine" - texturefile = "gfx/interface/goals/LTH/lth_metalworkandjewellery.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_metalworkandjewellery.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_metalworkandjewellery.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_migrationtreaties_shine" - texturefile = "gfx/interface/goals/LTH/lth_migrationtreaties.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_migrationtreaties.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_migrationtreaties.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_minglewiththemortals_shine" - texturefile = "gfx/interface/goals/LTH/lth_minglewiththemortals.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_minglewiththemortals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_minglewiththemortals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_mirrorupgrade_shine" - texturefile = "gfx/interface/goals/LTH/lth_mirrorupgrade.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mirrorupgrade.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_mirrorupgrade.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_nonelvencitizenship_shine" - texturefile = "gfx/interface/goals/LTH/lth_nonelvencitizenship.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_nonelvencitizenship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_nonelvencitizenship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_northboundinvasion_shine" - texturefile = "gfx/interface/goals/LTH/lth_northboundinvasion.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_northboundinvasion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_northboundinvasion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_nurturingthehalfelven_shine" - texturefile = "gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_offerpassagetothehalflings_shine" - texturefile = "gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_organizetributaries_shine" - texturefile = "gfx/interface/goals/LTH/lth_organizetributaries.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_organizetributaries.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_organizetributaries.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_ourowninitiative_shine" - texturefile = "gfx/interface/goals/LTH/lth_ourowninitiative.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ourowninitiative.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ourowninitiative.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_patrolsandriverwardens_shine" - texturefile = "gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_preemptivemeasures_shine" - texturefile = "gfx/interface/goals/LTH/lth_preemptivemeasures.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preemptivemeasures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preemptivemeasures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_preemtptivedepartures_shine" - texturefile = "gfx/interface/goals/LTH/lth_preemtptivedepartures.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preemtptivedepartures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preemtptivedepartures.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_preservationofknowledge_shine" - texturefile = "gfx/interface/goals/LTH/lth_preservationofknowledge.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preservationofknowledge.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_preservationofknowledge.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_princessofthenoldor_shine" - texturefile = "gfx/interface/goals/LTH/lth_princessofthenoldor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_princessofthenoldor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_princessofthenoldor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_prisonervivisections_shine" - texturefile = "gfx/interface/goals/LTH/lth_prisonervivisections.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_prisonervivisections.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_prisonervivisections.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_proposalsandresolutions_shine" - texturefile = "gfx/interface/goals/LTH/lth_proposalsandresolutions.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_proposalsandresolutions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_proposalsandresolutions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_provincialcouncils_shine" - texturefile = "gfx/interface/goals/LTH/lth_provincialcouncils.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_provincialcouncils.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_provincialcouncils.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_publiccelebrations_shine" - texturefile = "gfx/interface/goals/LTH/lth_publiccelebrations.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_publiccelebrations.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_publiccelebrations.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_queenofthedawn_shine" - texturefile = "gfx/interface/goals/LTH/lth_queenofthedawn.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_queenofthedawn.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_queenofthedawn.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_reassertcelebornslodrship_shine" - texturefile = "gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_reformmilitaryleadership_shine" - texturefile = "gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_reformtaxcollection_shine" - texturefile = "gfx/interface/goals/LTH/lth_reformtaxcollection.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reformtaxcollection.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_reformtaxcollection.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_refugeofdoriath_shine" - texturefile = "gfx/interface/goals/LTH/lth_refugeofdoriath.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_refugeofdoriath.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_refugeofdoriath.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_researchcooperation_shine" - texturefile = "gfx/interface/goals/LTH/lth_researchcooperation.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_researchcooperation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_researchcooperation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_resistthedarkness_shine" - texturefile = "gfx/interface/goals/LTH/lth_resistthedarkness.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_resistthedarkness.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_resistthedarkness.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_resourcestorage_shine" - texturefile = "gfx/interface/goals/LTH/lth_resourcestorage.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_resourcestorage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_resourcestorage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_revivethewhitecouncil_shine" - texturefile = "gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_ridersofthenaith_shine" - texturefile = "gfx/interface/goals/LTH/lth_ridersofthenaith.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ridersofthenaith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ridersofthenaith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_ringenchantments_shine" - texturefile = "gfx/interface/goals/LTH/lth_ringenchantments.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ringenchantments.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_ringenchantments.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sacredtreesofthenhail_shine" - texturefile = "gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_safeguardtheelves_shine" - texturefile = "gfx/interface/goals/LTH/lth_safeguardtheelves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_safeguardtheelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_safeguardtheelves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_safehaven_shine" - texturefile = "gfx/interface/goals/LTH/lth_safehaven.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_safehaven.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_safehaven.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sealtheborders_shine" - texturefile = "gfx/interface/goals/LTH/lth_sealtheborders.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sealtheborders.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sealtheborders.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_seizetheonering_shine" - texturefile = "gfx/interface/goals/LTH/lth_seizetheonering.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_seizetheonering.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_seizetheonering.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_selectiveempowerement_shine" - texturefile = "gfx/interface/goals/LTH/lth_selectiveempowerement.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_selectiveempowerement.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_selectiveempowerement.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sendadelegationtoerebor_shine" - texturefile = "gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sendadelegationtogondor_shine" - texturefile = "gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sendaidtohelmsdeep_shine" - texturefile = "gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sendaidtominastirith_shine" - texturefile = "gfx/interface/goals/LTH/lth_sendaidtominastirith.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendaidtominastirith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sendaidtominastirith.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_senddelegationtomoria_shine" - texturefile = "gfx/interface/goals/LTH/lth_senddelegationtomoria.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_senddelegationtomoria.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_senddelegationtomoria.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sentinelsofcerinamroth_shine" - texturefile = "gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sharedtrainingprograms_shine" - texturefile = "gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_silvanelitewarriors_shine" - texturefile = "gfx/interface/goals/LTH/lth_silvanelitewarriors.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_silvanelitewarriors.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_silvanelitewarriors.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_silverthornarrows_shine" - texturefile = "gfx/interface/goals/LTH/lth_silverthornarrows.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_silverthornarrows.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_silverthornarrows.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_sindarpathstalkers_shine" - texturefile = "gfx/interface/goals/LTH/lth_sindarpathstalkers.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sindarpathstalkers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_sindarpathstalkers.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_skysoilandwater_shine" - texturefile = "gfx/interface/goals/LTH/lth_skysoilandwater.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_skysoilandwater.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_skysoilandwater.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_spidersofungoliant_shine" - texturefile = "gfx/interface/goals/LTH/lth_spidersofungoliant.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_spidersofungoliant.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_spidersofungoliant.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_standardizedweaponsresearch_shine" - texturefile = "gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_strengthenfortifications_shine" - texturefile = "gfx/interface/goals/LTH/lth_strengthenfortifications.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_strengthenfortifications.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_strengthenfortifications.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_supportmordorsenemies_shine" - texturefile = "gfx/interface/goals/LTH/lth_supportmordorsenemies.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportmordorsenemies.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportmordorsenemies.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_supportofthegreateagles_shine" - texturefile = "gfx/interface/goals/LTH/lth_supportofthegreateagles.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportofthegreateagles.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportofthegreateagles.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_supportthefellowship_shine" - texturefile = "gfx/interface/goals/LTH/lth_supportthefellowship.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportthefellowship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportthefellowship.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_supportthegreycompany_shine" - texturefile = "gfx/interface/goals/LTH/lth_supportthegreycompany.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportthegreycompany.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_supportthegreycompany.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tacklethedwarves_shine" - texturefile = "gfx/interface/goals/LTH/lth_tacklethedwarves.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tacklethedwarves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tacklethedwarves.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tackletherealmsofmen_shine" - texturefile = "gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tamingthewild_shine" - texturefile = "gfx/interface/goals/LTH/lth_tamingthewild.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tamingthewild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tamingthewild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_territorialadministration_shine" - texturefile = "gfx/interface/goals/LTH/lth_territorialadministration.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_territorialadministration.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_territorialadministration.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_territorialintegration_shine" - texturefile = "gfx/interface/goals/LTH/lth_territorialintegration.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_territorialintegration.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_territorialintegration.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thearchivesofagespast_shine" - texturefile = "gfx/interface/goals/LTH/lth_thearchivesofagespast.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thearchivesofagespast.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thearchivesofagespast.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theburdensofleadership_shine" - texturefile = "gfx/interface/goals/LTH/lth_theburdensofleadership.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theburdensofleadership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theburdensofleadership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thecallofvalinor_shine" - texturefile = "gfx/interface/goals/LTH/lth_thecallofvalinor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thecallofvalinor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thecallofvalinor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thechildrenofluthien_shine" - texturefile = "gfx/interface/goals/LTH/lth_thechildrenofluthien.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thechildrenofluthien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thechildrenofluthien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thecouncilofquendi_shine" - texturefile = "gfx/interface/goals/LTH/lth_thecouncilofquendi.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thecouncilofquendi.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thecouncilofquendi.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thedissolutionoftheelvennobility_shine" - texturefile = "gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theelvenalliance_shine" - texturefile = "gfx/interface/goals/LTH/lth_theelvenalliance.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theelvenalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theelvenalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theelvenfleet_shine" - texturefile = "gfx/interface/goals/LTH/lth_theelvenfleet.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theelvenfleet.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theelvenfleet.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theemissariesguild_shine" - texturefile = "gfx/interface/goals/LTH/lth_theemissariesguild.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theemissariesguild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theemissariesguild.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theenigmaofnenya_shine" - texturefile = "gfx/interface/goals/LTH/lth_theenigmaofnenya.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theenigmaofnenya.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theenigmaofnenya.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theeternaldominion_shine" - texturefile = "gfx/interface/goals/LTH/lth_theeternaldominion.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theeternaldominion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theeternaldominion.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thefateofmortals_shine" - texturefile = "gfx/interface/goals/LTH/lth_thefateofmortals.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefateofmortals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefateofmortals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thefestivalofunity_shine" - texturefile = "gfx/interface/goals/LTH/lth_thefestivalofunity.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefestivalofunity.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefestivalofunity.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theforestbetween_shine" - texturefile = "gfx/interface/goals/LTH/lth_theforestbetween.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theforestbetween.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theforestbetween.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thefortressofdolguldur_shine" - texturefile = "gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thegiftofservitude_shine" - texturefile = "gfx/interface/goals/LTH/lth_thegiftofservitude.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegiftofservitude.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegiftofservitude.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thegirdleofmelian_shine" - texturefile = "gfx/interface/goals/LTH/lth_thegirdleofmelian.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegirdleofmelian.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegirdleofmelian.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thegreatbeasts_shine" - texturefile = "gfx/interface/goals/LTH/lth_thegreatbeasts.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegreatbeasts.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegreatbeasts.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thegreatschism_shine" - texturefile = "gfx/interface/goals/LTH/lth_thegreatschism.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegreatschism.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thegreatschism.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thehiddenrealm_shine" - texturefile = "gfx/interface/goals/LTH/lth_thehiddenrealm.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thehiddenrealm.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thehiddenrealm.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theinfluenceofrivendell_shine" - texturefile = "gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thelasteldar_shine" - texturefile = "gfx/interface/goals/LTH/lth_thelasteldar.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelasteldar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelasteldar.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thelaststand_shine" - texturefile = "gfx/interface/goals/LTH/lth_thelaststand.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelaststand.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelaststand.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thelibraryofcarasgaladhon_shine" - texturefile = "gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thenandorheritage_shine" - texturefile = "gfx/interface/goals/LTH/lth_thenandorheritage.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thenandorheritage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thenandorheritage.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theneworder_shine" - texturefile = "gfx/interface/goals/LTH/lth_theneworder.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theneworder.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theneworder.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thenoldorelite_shine" - texturefile = "gfx/interface/goals/LTH/lth_thenoldorelite.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thenoldorelite.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thenoldorelite.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theoathoffeanor_shine" - texturefile = "gfx/interface/goals/LTH/lth_theoathoffeanor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theoathoffeanor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theoathoffeanor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theonodrimoffangorn_shine" - texturefile = "gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theopendoorsedict_shine" - texturefile = "gfx/interface/goals/LTH/lth_theopendoorsedict.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theopendoorsedict.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theopendoorsedict.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thepeasantassembly_shine" - texturefile = "gfx/interface/goals/LTH/lth_thepeasantassembly.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thepeasantassembly.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thepeasantassembly.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thepriviledgeofmembership_shine" - texturefile = "gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thequeensguard_shine" - texturefile = "gfx/interface/goals/LTH/lth_thequeensguard.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thequeensguard.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thequeensguard.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thereawakening_shine" - texturefile = "gfx/interface/goals/LTH/lth_thereawakening.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thereawakening.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thereawakening.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thesentinelnetwork_shine" - texturefile = "gfx/interface/goals/LTH/lth_thesentinelnetwork.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesentinelnetwork.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesentinelnetwork.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theshadowswhisper_shine" - texturefile = "gfx/interface/goals/LTH/lth_theshadowswhisper.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theshadowswhisper.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theshadowswhisper.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thesongofnimrodel_shine" - texturefile = "gfx/interface/goals/LTH/lth_thesongofnimrodel.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesongofnimrodel.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesongofnimrodel.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thesupremeleader_shine" - texturefile = "gfx/interface/goals/LTH/lth_thesupremeleader.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesupremeleader.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thesupremeleader.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thetwilightgarden_shine" - texturefile = "gfx/interface/goals/LTH/lth_thetwilightgarden.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thetwilightgarden.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thetwilightgarden.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thetwinheartsoflothlorien_shine" - texturefile = "gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theunholyalliance_shine" - texturefile = "gfx/interface/goals/LTH/lth_theunholyalliance.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theunholyalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theunholyalliance.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_theuntreadedpath_shine" - texturefile = "gfx/interface/goals/LTH/lth_theuntreadedpath.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theuntreadedpath.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_theuntreadedpath.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_thewizardswisdom_shine" - texturefile = "gfx/interface/goals/LTH/lth_thewizardswisdom.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thewizardswisdom.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_thewizardswisdom.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tieswiththerohirrim_shine" - texturefile = "gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_totalisoltation_shine" - texturefile = "gfx/interface/goals/LTH/lth_totalisoltation.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_totalisoltation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_totalisoltation.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_trackdowndurinsbane_shine" - texturefile = "gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tradeagreements_shine" - texturefile = "gfx/interface/goals/LTH/lth_tradeagreements.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tradeagreements.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tradeagreements.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_turnlindon_shine" - texturefile = "gfx/interface/goals/LTH/lth_turnlindon.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnlindon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnlindon.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_turnmirkwood_shine" - texturefile = "gfx/interface/goals/LTH/lth_turnmirkwood.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnmirkwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnmirkwood.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_turnrivendell_shine" - texturefile = "gfx/interface/goals/LTH/lth_turnrivendell.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_turnrivendell.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_tworingsbecomethone_shine" - texturefile = "gfx/interface/goals/LTH/lth_tworingsbecomethone.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tworingsbecomethone.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_tworingsbecomethone.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_unionofequals_shine" - texturefile = "gfx/interface/goals/LTH/lth_unionofequals.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unionofequals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unionofequals.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_unitethefactions_shine" - texturefile = "gfx/interface/goals/LTH/lth_unitethefactions.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unitethefactions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unitethefactions.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_unityindivision_shine" - texturefile = "gfx/interface/goals/LTH/lth_unityindivision.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unityindivision.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unityindivision.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_unlikelyallies_shine" - texturefile = "gfx/interface/goals/LTH/lth_unlikelyallies.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unlikelyallies.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_unlikelyallies.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_urbancouncils_shine" - texturefile = "gfx/interface/goals/LTH/lth_urbancouncils.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_urbancouncils.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_urbancouncils.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_valesofanduin_shine" - texturefile = "gfx/interface/goals/LTH/lth_valesofanduin.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_valesofanduin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_valesofanduin.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_wanderersofnandor_shine" - texturefile = "gfx/interface/goals/LTH/lth_wanderersofnandor.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wanderersofnandor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wanderersofnandor.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_watersofhealing_shine" - texturefile = "gfx/interface/goals/LTH/lth_watersofhealing.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_watersofhealing.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_watersofhealing.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_wisdomofeluthingol_shine" - texturefile = "gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_wrathoftheforests_shine" - texturefile = "gfx/interface/goals/LTH/lth_wrathoftheforests.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wrathoftheforests.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_wrathoftheforests.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "lth_yavannasblessings_shine" - texturefile = "gfx/interface/goals/LTH/lth_yavannasblessings.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_yavannasblessings.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/LTH/lth_yavannasblessings.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_deal_with_the_spiders_shine" - texturefile = "gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_deal_with_the_spiders.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_radagast_shine" - texturefile = "gfx/interface/goals/MIR/GFX_goal_radagast.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_radagast.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_radagast.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_spider_anarchy_shine" - texturefile = "gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_spider_anarchy.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_thranduil_shine" - texturefile = "gfx/interface/goals/MIR/GFX_goal_thranduil.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_thranduil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MIR/GFX_goal_thranduil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_balrog_shine" - texturefile = "gfx/interface/goals/MOA/GFX_goal_balrog.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOA/GFX_goal_balrog.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOA/GFX_goal_balrog.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_azog_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_azog.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_azog.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_azog.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_dark_dol_guldur_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_dark_dol_guldur.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_dol_guldur_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_dol_guldur.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_erebor_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_erebor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_erebor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_erebor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_gather_the_nazgl_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_gather_the_nazgl.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_golum_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_golum.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_golum.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_golum.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_grapes_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_grapes.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_grapes.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_grapes.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_ithilien_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_ithilien.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_ithilien.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_ithilien.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_meats_back_on_the_menu_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_meats_back_on_the_menu.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_mordor_landscape_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_mordor_landscape.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_restore_baraddr_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_restore_baraddr.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_sauron_eye_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_sauron_eye.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_skull_treaty_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_stab_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_stab.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_stab.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_stab.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_stop_melkor_worship_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_stop_melkor_worship.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_the_one_ring_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_the_one_ring.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_union_of_working_orc_class_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_union_of_working_orc_class.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_unleash_sauron_shine" - texturefile = "gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_goal_unleash_sauron.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_servant_of_melkor_shine" - texturefile = "gfx/interface/goals/MOR/GFX_servant_of_melkor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_servant_of_melkor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_servant_of_melkor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_trolls_shine" - texturefile = "gfx/interface/goals/MOR/GFX_trolls.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_trolls.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_trolls.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_dale_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_dale.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_dale.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_dale.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_dorwinion_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_dorwinion.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_erebor_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_erebor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_erebor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_erebor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_gondor_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_gondor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_gondor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_gondor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_harad_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_harad.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_harad.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_harad.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_rhun_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_rhun.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_rhun.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_rhun.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_rohan_shine" - texturefile = "gfx/interface/goals/MOR/GFX_wargoal_rohan.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_rohan.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/GFX_wargoal_rohan.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "mor_encroach_on_ithilien_shine" - texturefile = "gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "mor_escalate_the_attacks_shine" - texturefile = "gfx/interface/goals/MOR/mor_escalate_the_attacks.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_escalate_the_attacks.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_escalate_the_attacks.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "mor_second_wave_shine" - texturefile = "gfx/interface/goals/MOR/mor_second_wave.dds" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_second_wave.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/MOR/mor_second_wave.dds" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_dale_shine" - texturefile = "gfx/interface/goals/RHU/GFX_goal_dale.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_dale.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_dale.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_dorwinion_shine" - texturefile = "gfx/interface/goals/RHU/GFX_goal_dorwinion.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_dorwinion.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_dorwinion.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_khamul_shine" - texturefile = "gfx/interface/goals/RHU/GFX_goal_khamul.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_khamul.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_khamul.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_rhun_civil_war_shine" - texturefile = "gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_rhun_civil_war.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_the_blue_wizards_shine" - texturefile = "gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_goal_the_blue_wizards.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_wargoal_mordor_shine" - texturefile = "gfx/interface/goals/RHU/GFX_wargoal_mordor.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_wargoal_mordor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RHU/GFX_wargoal_mordor.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_council_of_elrond_shine" - texturefile = "gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_council_of_elrond.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_elrond_shine" - texturefile = "gfx/interface/goals/RIV/GFX_goal_elrond.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_elrond.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_elrond.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_reforge_narsil_shine" - texturefile = "gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_reforge_narsil.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_take_his_ring_shine" - texturefile = "gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/RIV/GFX_goal_take_his_ring.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_allow_gandalf_in_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_allow_gandalf_in.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_assasinate_eomer_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_assasinate_eomer.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_edoras_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_edoras.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_edoras.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_edoras.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_eowyn_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_eowyn.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_eowyn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_eowyn.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_grima_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_grima.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_grima.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_grima.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_helms_deep_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_helms_deep.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_helms_deep.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_helms_deep.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_helms_deep_weakness_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_helms_deep_weakness.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_rohan_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_rohan.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_rohan.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_rohan.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_sick_theoden_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_sick_theoden.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_theodred_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_theodred.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_theodred.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_theodred.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_trust_gandalf_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_trust_gandalf.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - SpriteType = { - name = "GFX_goal_trust_saruman_shine" - texturefile = "gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga" - effectFile = "gfx/FX/buttonstate.lua" - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = "gfx/interface/goals/ROH/GFX_goal_trust_saruman.tga" - animationtexturefile = "gfx/interface/goals/shine_overlay.dds" # <- the animated file - animationrotation = -90.0 # -90 clockwise 90 counterclockwise(by default) - animationlooping = no # yes or no ;) - animationtime = 0.75 # in seconds - animationdelay = 0 # in seconds - animationblendmode = "add" #add, multiply, overlay - animationtype = "scrolling" #scrolling, rotating, pulsing - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } -} diff --git a/interface/auto_generated/decisions.gfx b/interface/auto_generated/lotr_decisions.gfx similarity index 100% rename from interface/auto_generated/decisions.gfx rename to interface/auto_generated/lotr_decisions.gfx diff --git a/interface/auto_generated/reporteventpictures.gfx b/interface/auto_generated/lotr_events.gfx similarity index 79% rename from interface/auto_generated/reporteventpictures.gfx rename to interface/auto_generated/lotr_events.gfx index 2e6a5f3d0..a992e1377 100644 --- a/interface/auto_generated/reporteventpictures.gfx +++ b/interface/auto_generated/lotr_events.gfx @@ -1,6 +1,6 @@ spriteTypes = { # This file was auto-generated by the GFX-Maker.py - spriteType = { name = "GFX_report_event_alliance" texturefile = "gfx/event_pictures/report_events/report_event_alliance.dds" } + spriteType = { name = "GFX_report_event_abandoned" texturefile = "gfx/event_pictures/report_events/report_event_abandoned.dds" } spriteType = { name = "GFX_report_event_army_camp" texturefile = "gfx/event_pictures/report_events/report_event_army_camp.dds" } spriteType = { name = "GFX_report_event_balrog" texturefile = "gfx/event_pictures/report_events/report_event_balrog.dds" } spriteType = { name = "GFX_report_event_beacons" texturefile = "gfx/event_pictures/report_events/report_event_beacons.dds" } @@ -15,6 +15,7 @@ spriteTypes = { spriteType = { name = "GFX_report_event_cele_gala" texturefile = "gfx/event_pictures/report_events/report_event_cele_gala.dds" } spriteType = { name = "GFX_report_event_dolguldur" texturefile = "gfx/event_pictures/report_events/report_event_dolguldur.dds" } spriteType = { name = "GFX_report_event_elrond_council" texturefile = "gfx/event_pictures/report_events/report_event_elrond_council.dds" } + spriteType = { name = "GFX_report_event_elven_alliance" texturefile = "gfx/event_pictures/report_events/report_event_elven_alliance.dds" } spriteType = { name = "GFX_report_event_elves" texturefile = "gfx/event_pictures/report_events/report_event_elves.dds" } spriteType = { name = "GFX_report_event_elves_army" texturefile = "gfx/event_pictures/report_events/report_event_elves_army.dds" } spriteType = { name = "GFX_report_event_elves_oath" texturefile = "gfx/event_pictures/report_events/report_event_elves_oath.dds" } @@ -23,13 +24,19 @@ spriteTypes = { spriteType = { name = "GFX_report_event_fight" texturefile = "gfx/event_pictures/report_events/report_event_fight.dds" } spriteType = { name = "GFX_report_event_fire" texturefile = "gfx/event_pictures/report_events/report_event_fire.dds" } spriteType = { name = "GFX_report_event_galadriel" texturefile = "gfx/event_pictures/report_events/report_event_galadriel.dds" } + spriteType = { name = "GFX_report_event_generic_king" texturefile = "gfx/event_pictures/report_events/report_event_generic_king.dds" } + spriteType = { name = "GFX_report_event_generic_reading" texturefile = "gfx/event_pictures/report_events/report_event_generic_reading.dds" } spriteType = { name = "GFX_report_event_gondor" texturefile = "gfx/event_pictures/report_events/report_event_gondor.dds" } spriteType = { name = "GFX_report_event_gondor_soldiers" texturefile = "gfx/event_pictures/report_events/report_event_gondor_soldiers.dds" } spriteType = { name = "GFX_report_event_gondor_soldiers_2" texturefile = "gfx/event_pictures/report_events/report_event_gondor_soldiers_2.dds" } + spriteType = { name = "GFX_report_event_hobbit_party" texturefile = "gfx/event_pictures/report_events/report_event_hobbit_party.dds" } + spriteType = { name = "GFX_report_event_horseman_wanderer" texturefile = "gfx/event_pictures/report_events/report_event_horseman_wanderer.dds" } spriteType = { name = "GFX_report_event_lindon" texturefile = "gfx/event_pictures/report_events/report_event_lindon.dds" } spriteType = { name = "GFX_report_event_lothlorien" texturefile = "gfx/event_pictures/report_events/report_event_lothlorien.dds" } spriteType = { name = "GFX_report_event_man_fishing" texturefile = "gfx/event_pictures/report_events/report_event_man_fishing.dds" } spriteType = { name = "GFX_report_event_market" texturefile = "gfx/event_pictures/report_events/report_event_market.dds" } + spriteType = { name = "GFX_report_event_marriage_wedding" texturefile = "gfx/event_pictures/report_events/report_event_marriage_wedding.dds" } + spriteType = { name = "GFX_report_event_marriage_wedding2" texturefile = "gfx/event_pictures/report_events/report_event_marriage_wedding2.dds" } spriteType = { name = "GFX_report_event_mirror" texturefile = "gfx/event_pictures/report_events/report_event_mirror.dds" } spriteType = { name = "GFX_report_event_moria" texturefile = "gfx/event_pictures/report_events/report_event_moria.dds" } spriteType = { name = "GFX_report_event_nazgul" texturefile = "gfx/event_pictures/report_events/report_event_nazgul.dds" } @@ -38,7 +45,9 @@ spriteTypes = { spriteType = { name = "GFX_report_event_orcs_2" texturefile = "gfx/event_pictures/report_events/report_event_orcs_2.dds" } spriteType = { name = "GFX_report_event_orcs_marching" texturefile = "gfx/event_pictures/report_events/report_event_orcs_marching.dds" } spriteType = { name = "GFX_report_event_paper" texturefile = "gfx/event_pictures/report_events/report_event_paper.dds" } - spriteType = { name = "GFX_report_event_party" texturefile = "gfx/event_pictures/report_events/report_event_party.dds" } + spriteType = { name = "GFX_report_event_peasant_revolt" texturefile = "gfx/event_pictures/report_events/report_event_peasant_revolt.dds" } + spriteType = { name = "GFX_report_event_peasant_revolt2" texturefile = "gfx/event_pictures/report_events/report_event_peasant_revolt2.dds" } + spriteType = { name = "GFX_report_event_peasant_revolt3" texturefile = "gfx/event_pictures/report_events/report_event_peasant_revolt3.dds" } spriteType = { name = "GFX_report_event_rangers" texturefile = "gfx/event_pictures/report_events/report_event_rangers.dds" } spriteType = { name = "GFX_report_event_riders" texturefile = "gfx/event_pictures/report_events/report_event_riders.dds" } spriteType = { name = "GFX_report_event_ring" texturefile = "gfx/event_pictures/report_events/report_event_ring.dds" } @@ -47,6 +56,7 @@ spriteTypes = { spriteType = { name = "GFX_report_event_sauron_eye" texturefile = "gfx/event_pictures/report_events/report_event_sauron_eye.dds" } spriteType = { name = "GFX_report_event_ship" texturefile = "gfx/event_pictures/report_events/report_event_ship.dds" } spriteType = { name = "GFX_report_event_ship2" texturefile = "gfx/event_pictures/report_events/report_event_ship2.dds" } + spriteType = { name = "GFX_report_event_ship_valinor" texturefile = "gfx/event_pictures/report_events/report_event_ship_valinor.dds" } spriteType = { name = "GFX_report_event_spiders" texturefile = "gfx/event_pictures/report_events/report_event_spiders.dds" } spriteType = { name = "GFX_report_event_tournament" texturefile = "gfx/event_pictures/report_events/report_event_tournament.dds" } spriteType = { name = "GFX_report_event_trade_caravan" texturefile = "gfx/event_pictures/report_events/report_event_trade_caravan.dds" } diff --git a/interface/auto_generated/lotr_goals.gfx b/interface/auto_generated/lotr_goals.gfx index 405c152fa..583c95290 100644 --- a/interface/auto_generated/lotr_goals.gfx +++ b/interface/auto_generated/lotr_goals.gfx @@ -1,9663 +1,2358 @@ spriteTypes = { # This file was auto-generated by the GFX-Maker.py spriteType = { - name = GFX_goal_shine_mask - texturefile = gfx/interface/goals/shine_mask.dds - } - spriteType = { - name = GFX_goal_shine_mask_shine - texturefile = gfx/interface/goals/shine_mask.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/shine_mask.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/shine_mask.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_shine_overlay - texturefile = gfx/interface/goals/shine_overlay.dds - } - spriteType = { - name = GFX_goal_shine_overlay_shine - texturefile = gfx/interface/goals/shine_overlay.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/shine_overlay.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/shine_overlay.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_GFX_goal_angmar_unalligned - texturefile = gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds - } - spriteType = { - name = GFX_goal_GFX_goal_angmar_unalligned_shine - texturefile = gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/ANG/GFX_goal_angmar_unalligned.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_GFX_goal_arnor - texturefile = gfx/interface/goals/GON/GFX_goal_arnor.dds - } - spriteType = { - name = GFX_goal_GFX_goal_arnor_shine - texturefile = gfx/interface/goals/GON/GFX_goal_arnor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_arnor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_arnor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_GFX_goal_dol_amroth - texturefile = gfx/interface/goals/GON/GFX_goal_dol_amroth.dds - } - spriteType = { - name = GFX_goal_GFX_goal_dol_amroth_shine - texturefile = gfx/interface/goals/GON/GFX_goal_dol_amroth.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_dol_amroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_dol_amroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_GFX_goal_gon_dam_propaganda - texturefile = gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds - } - spriteType = { - name = GFX_goal_GFX_goal_gon_dam_propaganda_shine - texturefile = gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/GFX_goal_gon_dam_propaganda.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_defame_isildurs_lineage - texturefile = gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds - } - spriteType = { - name = GFX_goal_gon_defame_isildurs_lineage_shine - texturefile = gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_defame_isildurs_lineage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_ensure_popular_support - texturefile = gfx/interface/goals/GON/gon_ensure_popular_support.dds - } - spriteType = { - name = GFX_goal_gon_ensure_popular_support_shine - texturefile = gfx/interface/goals/GON/gon_ensure_popular_support.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ensure_popular_support.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ensure_popular_support.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_gain_favour_with_the_elves - texturefile = gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds - } - spriteType = { - name = GFX_goal_gon_gain_favour_with_the_elves_shine - texturefile = gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_gain_favour_with_the_elves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_gondor_needs_no_king - texturefile = gfx/interface/goals/GON/gon_gondor_needs_no_king.dds - } - spriteType = { - name = GFX_goal_gon_gondor_needs_no_king_shine - texturefile = gfx/interface/goals/GON/gon_gondor_needs_no_king.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_gondor_needs_no_king.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_gondor_needs_no_king.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_historical_claims - texturefile = gfx/interface/goals/GON/gon_historical_claims.dds - } - spriteType = { - name = GFX_goal_gon_historical_claims_shine - texturefile = gfx/interface/goals/GON/gon_historical_claims.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_historical_claims.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_historical_claims.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_ithc_emergency_measures - texturefile = gfx/interface/goals/GON/gon_ithc_emergency_measures.dds - } - spriteType = { - name = GFX_goal_gon_ithc_emergency_measures_shine - texturefile = gfx/interface/goals/GON/gon_ithc_emergency_measures.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_emergency_measures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_emergency_measures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_ithc_evacuate - texturefile = gfx/interface/goals/GON/gon_ithc_evacuate.dds - } - spriteType = { - name = GFX_goal_gon_ithc_evacuate_shine - texturefile = gfx/interface/goals/GON/gon_ithc_evacuate.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_evacuate.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_evacuate.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_ithc_hold_firm - texturefile = gfx/interface/goals/GON/gon_ithc_hold_firm.dds - } - spriteType = { - name = GFX_goal_gon_ithc_hold_firm_shine - texturefile = gfx/interface/goals/GON/gon_ithc_hold_firm.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_hold_firm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithc_hold_firm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_ithilien_crisis - texturefile = gfx/interface/goals/GON/gon_ithilien_crisis.dds - } - spriteType = { - name = GFX_goal_gon_ithilien_crisis_shine - texturefile = gfx/interface/goals/GON/gon_ithilien_crisis.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithilien_crisis.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_ithilien_crisis.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_liberate_the_capital_from_the_usurpers - texturefile = gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds - } - spriteType = { - name = GFX_goal_gon_liberate_the_capital_from_the_usurpers_shine - texturefile = gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_liberate_the_capital_from_the_usurpers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_purge_the_aristocracy - texturefile = gfx/interface/goals/GON/gon_purge_the_aristocracy.dds - } - spriteType = { - name = GFX_goal_gon_purge_the_aristocracy_shine - texturefile = gfx/interface/goals/GON/gon_purge_the_aristocracy.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_purge_the_aristocracy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_purge_the_aristocracy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_rally_support_in_enedwaith - texturefile = gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds - } - spriteType = { - name = GFX_goal_gon_rally_support_in_enedwaith_shine - texturefile = gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_rally_support_in_enedwaith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_strengthen_ties_with_angmar - texturefile = gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds - } - spriteType = { - name = GFX_goal_gon_strengthen_ties_with_angmar_shine - texturefile = gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_strengthen_ties_with_angmar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_the_peoples_fleet - texturefile = gfx/interface/goals/GON/gon_the_peoples_fleet.dds - } - spriteType = { - name = GFX_goal_gon_the_peoples_fleet_shine - texturefile = gfx/interface/goals/GON/gon_the_peoples_fleet.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_the_peoples_fleet.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_the_peoples_fleet.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_gon_wed_faramir_to_eowyn - texturefile = gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds - } - spriteType = { - name = GFX_goal_gon_wed_faramir_to_eowyn_shine - texturefile = gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/GON/gon_wed_faramir_to_eowyn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_echoesofeldar - texturefile = gfx/interface/goals/LTH/echoesofeldar.dds - } - spriteType = { - name = GFX_goal_echoesofeldar_shine - texturefile = gfx/interface/goals/LTH/echoesofeldar.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/echoesofeldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/echoesofeldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_abolishtermlimits - texturefile = gfx/interface/goals/LTH/lth_abolishtermlimits.dds - } - spriteType = { - name = GFX_goal_lth_abolishtermlimits_shine - texturefile = gfx/interface/goals/LTH/lth_abolishtermlimits.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_abolishtermlimits.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_abolishtermlimits.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_acceleratetheinevitable - texturefile = gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds - } - spriteType = { - name = GFX_goal_lth_acceleratetheinevitable_shine - texturefile = gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_acceleratetheinevitable.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_acknowledgethemordorthreat - texturefile = gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds - } - spriteType = { - name = GFX_goal_lth_acknowledgethemordorthreat_shine - texturefile = gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_acknowledgethemordorthreat.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_aegisoflight - texturefile = gfx/interface/goals/LTH/lth_aegisoflight.dds - } - spriteType = { - name = GFX_goal_lth_aegisoflight_shine - texturefile = gfx/interface/goals/LTH/lth_aegisoflight.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aegisoflight.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aegisoflight.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_affiliatewithlindon - texturefile = gfx/interface/goals/LTH/lth_affiliatewithlindon.dds - } - spriteType = { - name = GFX_goal_lth_affiliatewithlindon_shine - texturefile = gfx/interface/goals/LTH/lth_affiliatewithlindon.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_affiliatewithlindon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_affiliatewithlindon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_agestureofgoodwill - texturefile = gfx/interface/goals/LTH/lth_agestureofgoodwill.dds - } - spriteType = { - name = GFX_goal_lth_agestureofgoodwill_shine - texturefile = gfx/interface/goals/LTH/lth_agestureofgoodwill.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_agestureofgoodwill.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_agestureofgoodwill.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_aidtotheweary - texturefile = gfx/interface/goals/LTH/lth_aidtotheweary.dds - } - spriteType = { - name = GFX_goal_lth_aidtotheweary_shine - texturefile = gfx/interface/goals/LTH/lth_aidtotheweary.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aidtotheweary.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aidtotheweary.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_alignthenobility - texturefile = gfx/interface/goals/LTH/lth_alignthenobility.dds - } - spriteType = { - name = GFX_goal_lth_alignthenobility_shine - texturefile = gfx/interface/goals/LTH/lth_alignthenobility.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_alignthenobility.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_alignthenobility.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_allianceoflight - texturefile = gfx/interface/goals/LTH/lth_allianceoflight.dds - } - spriteType = { - name = GFX_goal_lth_allianceoflight_shine - texturefile = gfx/interface/goals/LTH/lth_allianceoflight.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_allianceoflight.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_allianceoflight.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_allywithmen - texturefile = gfx/interface/goals/LTH/lth_allywithmen.dds - } - spriteType = { - name = GFX_goal_lth_allywithmen_shine - texturefile = gfx/interface/goals/LTH/lth_allywithmen.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_allywithmen.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_allywithmen.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_amostgenerousoffer - texturefile = gfx/interface/goals/LTH/lth_amostgenerousoffer.dds - } - spriteType = { - name = GFX_goal_lth_amostgenerousoffer_shine - texturefile = gfx/interface/goals/LTH/lth_amostgenerousoffer.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_amostgenerousoffer.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_amostgenerousoffer.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_ancestralechoesintandem - texturefile = gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds - } - spriteType = { - name = GFX_goal_lth_ancestralechoesintandem_shine - texturefile = gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ancestralechoesintandem.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_anecessaryevil - texturefile = gfx/interface/goals/LTH/lth_anecessaryevil.dds - } - spriteType = { - name = GFX_goal_lth_anecessaryevil_shine - texturefile = gfx/interface/goals/LTH/lth_anecessaryevil.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anecessaryevil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anecessaryevil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_anelvenfellowship - texturefile = gfx/interface/goals/LTH/lth_anelvenfellowship.dds - } - spriteType = { - name = GFX_goal_lth_anelvenfellowship_shine - texturefile = gfx/interface/goals/LTH/lth_anelvenfellowship.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anelvenfellowship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anelvenfellowship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_anewbeginning - texturefile = gfx/interface/goals/LTH/lth_anewbeginning.dds - } - spriteType = { - name = GFX_goal_lth_anewbeginning_shine - texturefile = gfx/interface/goals/LTH/lth_anewbeginning.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewbeginning.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewbeginning.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_anewbreed - texturefile = gfx/interface/goals/LTH/lth_anewbreed.dds - } - spriteType = { - name = GFX_goal_lth_anewbreed_shine - texturefile = gfx/interface/goals/LTH/lth_anewbreed.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewbreed.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewbreed.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_anewelvenlanguage - texturefile = gfx/interface/goals/LTH/lth_anewelvenlanguage.dds - } - spriteType = { - name = GFX_goal_lth_anewelvenlanguage_shine - texturefile = gfx/interface/goals/LTH/lth_anewelvenlanguage.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewelvenlanguage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_anewelvenlanguage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_appointedrepresentatives - texturefile = gfx/interface/goals/LTH/lth_appointedrepresentatives.dds - } - spriteType = { - name = GFX_goal_lth_appointedrepresentatives_shine - texturefile = gfx/interface/goals/LTH/lth_appointedrepresentatives.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_appointedrepresentatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_appointedrepresentatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_asharedcause - texturefile = gfx/interface/goals/LTH/lth_asharedcause.dds - } - spriteType = { - name = GFX_goal_lth_asharedcause_shine - texturefile = gfx/interface/goals/LTH/lth_asharedcause.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_asharedcause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_asharedcause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_associatewithnonelves - texturefile = gfx/interface/goals/LTH/lth_associatewithnonelves.dds - } - spriteType = { - name = GFX_goal_lth_associatewithnonelves_shine - texturefile = gfx/interface/goals/LTH/lth_associatewithnonelves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_associatewithnonelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_associatewithnonelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_atanycost - texturefile = gfx/interface/goals/LTH/lth_atanycost.dds - } - spriteType = { - name = GFX_goal_lth_atanycost_shine - texturefile = gfx/interface/goals/LTH/lth_atanycost.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_atanycost.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_atanycost.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_atasteofempire - texturefile = gfx/interface/goals/LTH/lth_atasteofempire.dds - } - spriteType = { - name = GFX_goal_lth_atasteofempire_shine - texturefile = gfx/interface/goals/LTH/lth_atasteofempire.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_atasteofempire.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_atasteofempire.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_aulescraftmanship - texturefile = gfx/interface/goals/LTH/lth_aulescraftmanship.dds - } - spriteType = { - name = GFX_goal_lth_aulescraftmanship_shine - texturefile = gfx/interface/goals/LTH/lth_aulescraftmanship.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aulescraftmanship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_aulescraftmanship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_beaconofhope - texturefile = gfx/interface/goals/LTH/lth_beaconofhope.dds - } - spriteType = { - name = GFX_goal_lth_beaconofhope_shine - texturefile = gfx/interface/goals/LTH/lth_beaconofhope.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_beaconofhope.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_beaconofhope.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_bideourtime - texturefile = gfx/interface/goals/LTH/lth_bideourtime.dds - } - spriteType = { - name = GFX_goal_lth_bideourtime_shine - texturefile = gfx/interface/goals/LTH/lth_bideourtime.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bideourtime.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bideourtime.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_bladesoftheeldar - texturefile = gfx/interface/goals/LTH/lth_bladesoftheeldar.dds - } - spriteType = { - name = GFX_goal_lth_bladesoftheeldar_shine - texturefile = gfx/interface/goals/LTH/lth_bladesoftheeldar.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bladesoftheeldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bladesoftheeldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_bondsofnature - texturefile = gfx/interface/goals/LTH/lth_bondsofnature.dds - } - spriteType = { - name = GFX_goal_lth_bondsofnature_shine - texturefile = gfx/interface/goals/LTH/lth_bondsofnature.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bondsofnature.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_bondsofnature.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_breakthechainsofisolation - texturefile = gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds - } - spriteType = { - name = GFX_goal_lth_breakthechainsofisolation_shine - texturefile = gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_breakthechainsofisolation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_burrythemintheirholes - texturefile = gfx/interface/goals/LTH/lth_burrythemintheirholes.dds - } - spriteType = { - name = GFX_goal_lth_burrythemintheirholes_shine - texturefile = gfx/interface/goals/LTH/lth_burrythemintheirholes.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_burrythemintheirholes.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_burrythemintheirholes.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_celeborncounsel - texturefile = gfx/interface/goals/LTH/lth_celeborncounsel.dds - } - spriteType = { - name = GFX_goal_lth_celeborncounsel_shine - texturefile = gfx/interface/goals/LTH/lth_celeborncounsel.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celeborncounsel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celeborncounsel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_celeborngaladrielaccord - texturefile = gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds - } - spriteType = { - name = GFX_goal_lth_celeborngaladrielaccord_shine - texturefile = gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celeborngaladrielaccord.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_celebornsexile - texturefile = gfx/interface/goals/LTH/lth_celebornsexile.dds - } - spriteType = { - name = GFX_goal_lth_celebornsexile_shine - texturefile = gfx/interface/goals/LTH/lth_celebornsexile.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebornsexile.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebornsexile.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_celebornsreforms - texturefile = gfx/interface/goals/LTH/lth_celebornsreforms.dds - } - spriteType = { - name = GFX_goal_lth_celebornsreforms_shine - texturefile = gfx/interface/goals/LTH/lth_celebornsreforms.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebornsreforms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebornsreforms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_celebrateperendhillegends - texturefile = gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds - } - spriteType = { - name = GFX_goal_lth_celebrateperendhillegends_shine - texturefile = gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_celebrateperendhillegends.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_cleansethetunnels - texturefile = gfx/interface/goals/LTH/lth_cleansethetunnels.dds - } - spriteType = { - name = GFX_goal_lth_cleansethetunnels_shine - texturefile = gfx/interface/goals/LTH/lth_cleansethetunnels.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cleansethetunnels.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cleansethetunnels.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_collectivedefenseclause - texturefile = gfx/interface/goals/LTH/lth_collectivedefenseclause.dds - } - spriteType = { - name = GFX_goal_lth_collectivedefenseclause_shine - texturefile = gfx/interface/goals/LTH/lth_collectivedefenseclause.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_collectivedefenseclause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_collectivedefenseclause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_commemorategondolin - texturefile = gfx/interface/goals/LTH/lth_commemorategondolin.dds - } - spriteType = { - name = GFX_goal_lth_commemorategondolin_shine - texturefile = gfx/interface/goals/LTH/lth_commemorategondolin.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commemorategondolin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commemorategondolin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_commemoratethecelebrantbattle - texturefile = gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds - } - spriteType = { - name = GFX_goal_lth_commemoratethecelebrantbattle_shine - texturefile = gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commemoratethecelebrantbattle.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_commercialnavigation - texturefile = gfx/interface/goals/LTH/lth_commercialnavigation.dds - } - spriteType = { - name = GFX_goal_lth_commercialnavigation_shine - texturefile = gfx/interface/goals/LTH/lth_commercialnavigation.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commercialnavigation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_commercialnavigation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_conscecratecarasgaladhon - texturefile = gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds - } - spriteType = { - name = GFX_goal_lth_conscecratecarasgaladhon_shine - texturefile = gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_conscecratecarasgaladhon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_conscecratecerinamroth - texturefile = gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds - } - spriteType = { - name = GFX_goal_lth_conscecratecerinamroth_shine - texturefile = gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_conscecratecerinamroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_consulttheelves - texturefile = gfx/interface/goals/LTH/lth_consulttheelves.dds - } - spriteType = { - name = GFX_goal_lth_consulttheelves_shine - texturefile = gfx/interface/goals/LTH/lth_consulttheelves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_consulttheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_consulttheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_cooperatewithmirkwood - texturefile = gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds - } - spriteType = { - name = GFX_goal_lth_cooperatewithmirkwood_shine - texturefile = gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cooperatewithmirkwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_cooperationefforts - texturefile = gfx/interface/goals/LTH/lth_cooperationefforts.dds - } - spriteType = { - name = GFX_goal_lth_cooperationefforts_shine - texturefile = gfx/interface/goals/LTH/lth_cooperationefforts.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cooperationefforts.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_cooperationefforts.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_coordinatedresistance - texturefile = gfx/interface/goals/LTH/lth_coordinatedresistance.dds - } - spriteType = { - name = GFX_goal_lth_coordinatedresistance_shine - texturefile = gfx/interface/goals/LTH/lth_coordinatedresistance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_coordinatedresistance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_coordinatedresistance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_coordinatedsanctions - texturefile = gfx/interface/goals/LTH/lth_coordinatedsanctions.dds - } - spriteType = { - name = GFX_goal_lth_coordinatedsanctions_shine - texturefile = gfx/interface/goals/LTH/lth_coordinatedsanctions.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_coordinatedsanctions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_coordinatedsanctions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_culturalexchangeinitiatives - texturefile = gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds - } - spriteType = { - name = GFX_goal_lth_culturalexchangeinitiatives_shine - texturefile = gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_culturalexchangeinitiatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_deepknowledge - texturefile = gfx/interface/goals/LTH/lth_deepknowledge.dds - } - spriteType = { - name = GFX_goal_lth_deepknowledge_shine - texturefile = gfx/interface/goals/LTH/lth_deepknowledge.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_deepknowledge.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_deepknowledge.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_defensiveperimeter - texturefile = gfx/interface/goals/LTH/lth_defensiveperimeter.dds - } - spriteType = { - name = GFX_goal_lth_defensiveperimeter_shine - texturefile = gfx/interface/goals/LTH/lth_defensiveperimeter.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_defensiveperimeter.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_defensiveperimeter.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_deterrence - texturefile = gfx/interface/goals/LTH/lth_deterrence.dds - } - spriteType = { - name = GFX_goal_lth_deterrence_shine - texturefile = gfx/interface/goals/LTH/lth_deterrence.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_deterrence.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_deterrence.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_diorthefair - texturefile = gfx/interface/goals/LTH/lth_diorthefair.dds - } - spriteType = { - name = GFX_goal_lth_diorthefair_shine - texturefile = gfx/interface/goals/LTH/lth_diorthefair.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_diorthefair.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_diorthefair.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_discordinthegoldenwood - texturefile = gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds - } - spriteType = { - name = GFX_goal_lth_discordinthegoldenwood_shine - texturefile = gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_discordinthegoldenwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_discovernewrealms - texturefile = gfx/interface/goals/LTH/lth_discovernewrealms.dds - } - spriteType = { - name = GFX_goal_lth_discovernewrealms_shine - texturefile = gfx/interface/goals/LTH/lth_discovernewrealms.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_discovernewrealms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_discovernewrealms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_dismantlethenazgul - texturefile = gfx/interface/goals/LTH/lth_dismantlethenazgul.dds - } - spriteType = { - name = GFX_goal_lth_dismantlethenazgul_shine - texturefile = gfx/interface/goals/LTH/lth_dismantlethenazgul.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_dismantlethenazgul.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_dismantlethenazgul.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_dreadfulasstormandlightning - texturefile = gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds - } - spriteType = { - name = GFX_goal_lth_dreadfulasstormandlightning_shine - texturefile = gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_dreadfulasstormandlightning.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_eaglesofmanwe - texturefile = gfx/interface/goals/LTH/lth_eaglesofmanwe.dds - } - spriteType = { - name = GFX_goal_lth_eaglesofmanwe_shine - texturefile = gfx/interface/goals/LTH/lth_eaglesofmanwe.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_eaglesofmanwe.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_eaglesofmanwe.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_earendilthemariner - texturefile = gfx/interface/goals/LTH/lth_earendilthemariner.dds - } - spriteType = { - name = GFX_goal_lth_earendilthemariner_shine - texturefile = gfx/interface/goals/LTH/lth_earendilthemariner.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_earendilthemariner.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_earendilthemariner.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_echoesofrivendell - texturefile = gfx/interface/goals/LTH/lth_echoesofrivendell.dds - } - spriteType = { - name = GFX_goal_lth_echoesofrivendell_shine - texturefile = gfx/interface/goals/LTH/lth_echoesofrivendell.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_echoesofrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_echoesofrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_echoesoftheeldendays - texturefile = gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds - } - spriteType = { - name = GFX_goal_lth_echoesoftheeldendays_shine - texturefile = gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_echoesoftheeldendays.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_electedrepresentatives - texturefile = gfx/interface/goals/LTH/lth_electedrepresentatives.dds - } - spriteType = { - name = GFX_goal_lth_electedrepresentatives_shine - texturefile = gfx/interface/goals/LTH/lth_electedrepresentatives.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_electedrepresentatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_electedrepresentatives.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elrondtheperedhil - texturefile = gfx/interface/goals/LTH/lth_elrondtheperedhil.dds - } - spriteType = { - name = GFX_goal_lth_elrondtheperedhil_shine - texturefile = gfx/interface/goals/LTH/lth_elrondtheperedhil.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elrondtheperedhil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elrondtheperedhil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elrosofnumenor - texturefile = gfx/interface/goals/LTH/lth_elrosofnumenor.dds - } - spriteType = { - name = GFX_goal_lth_elrosofnumenor_shine - texturefile = gfx/interface/goals/LTH/lth_elrosofnumenor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elrosofnumenor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elrosofnumenor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elvencavalry - texturefile = gfx/interface/goals/LTH/lth_elvencavalry.dds - } - spriteType = { - name = GFX_goal_lth_elvencavalry_shine - texturefile = gfx/interface/goals/LTH/lth_elvencavalry.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvencavalry.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvencavalry.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elvenforges - texturefile = gfx/interface/goals/LTH/lth_elvenforges.dds - } - spriteType = { - name = GFX_goal_lth_elvenforges_shine - texturefile = gfx/interface/goals/LTH/lth_elvenforges.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenforges.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenforges.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elvenharmony - texturefile = gfx/interface/goals/LTH/lth_elvenharmony.dds - } - spriteType = { - name = GFX_goal_lth_elvenharmony_shine - texturefile = gfx/interface/goals/LTH/lth_elvenharmony.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenharmony.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenharmony.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elvensupremacy - texturefile = gfx/interface/goals/LTH/lth_elvensupremacy.dds - } - spriteType = { - name = GFX_goal_lth_elvensupremacy_shine - texturefile = gfx/interface/goals/LTH/lth_elvensupremacy.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvensupremacy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvensupremacy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_elvenweaponry - texturefile = gfx/interface/goals/LTH/lth_elvenweaponry.dds - } - spriteType = { - name = GFX_goal_lth_elvenweaponry_shine - texturefile = gfx/interface/goals/LTH/lth_elvenweaponry.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenweaponry.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_elvenweaponry.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_empowerhaldir - texturefile = gfx/interface/goals/LTH/lth_empowerhaldir.dds - } - spriteType = { - name = GFX_goal_lth_empowerhaldir_shine - texturefile = gfx/interface/goals/LTH/lth_empowerhaldir.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_empowerhaldir.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_empowerhaldir.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_endurethedarkness - texturefile = gfx/interface/goals/LTH/lth_endurethedarkness.dds - } - spriteType = { - name = GFX_goal_lth_endurethedarkness_shine - texturefile = gfx/interface/goals/LTH/lth_endurethedarkness.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_endurethedarkness.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_endurethedarkness.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_ensurefoodsecurity - texturefile = gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds - } - spriteType = { - name = GFX_goal_lth_ensurefoodsecurity_shine - texturefile = gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ensurefoodsecurity.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_establishagraindole - texturefile = gfx/interface/goals/LTH/lth_establishagraindole.dds - } - spriteType = { - name = GFX_goal_lth_establishagraindole_shine - texturefile = gfx/interface/goals/LTH/lth_establishagraindole.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_establishagraindole.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_establishagraindole.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_eternalwisdom - texturefile = gfx/interface/goals/LTH/lth_eternalwisdom.dds - } - spriteType = { - name = GFX_goal_lth_eternalwisdom_shine - texturefile = gfx/interface/goals/LTH/lth_eternalwisdom.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_eternalwisdom.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_eternalwisdom.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_executivevigour - texturefile = gfx/interface/goals/LTH/lth_executivevigour.dds - } - spriteType = { - name = GFX_goal_lth_executivevigour_shine - texturefile = gfx/interface/goals/LTH/lth_executivevigour.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_executivevigour.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_executivevigour.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_fairastheseaandsun - texturefile = gfx/interface/goals/LTH/lth_fairastheseaandsun.dds - } - spriteType = { - name = GFX_goal_lth_fairastheseaandsun_shine - texturefile = gfx/interface/goals/LTH/lth_fairastheseaandsun.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fairastheseaandsun.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fairastheseaandsun.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_fairasthesunterribleasthestorm - texturefile = gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds - } - spriteType = { - name = GFX_goal_lth_fairasthesunterribleasthestorm_shine - texturefile = gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fairasthesunterribleasthestorm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_fellbeastsofmordor - texturefile = gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds - } - spriteType = { - name = GFX_goal_lth_fellbeastsofmordor_shine - texturefile = gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_fellbeastsofmordor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_foeturnedfriend - texturefile = gfx/interface/goals/LTH/lth_foeturnedfriend.dds - } - spriteType = { - name = GFX_goal_lth_foeturnedfriend_shine - texturefile = gfx/interface/goals/LTH/lth_foeturnedfriend.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_foeturnedfriend.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_foeturnedfriend.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_forcetheissue - texturefile = gfx/interface/goals/LTH/lth_forcetheissue.dds - } - spriteType = { - name = GFX_goal_lth_forcetheissue_shine - texturefile = gfx/interface/goals/LTH/lth_forcetheissue.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forcetheissue.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forcetheissue.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_forgealliances - texturefile = gfx/interface/goals/LTH/lth_forgealliances.dds - } - spriteType = { - name = GFX_goal_lth_forgealliances_shine - texturefile = gfx/interface/goals/LTH/lth_forgealliances.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forgealliances.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forgealliances.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_forsaketheelves - texturefile = gfx/interface/goals/LTH/lth_forsaketheelves.dds - } - spriteType = { - name = GFX_goal_lth_forsaketheelves_shine - texturefile = gfx/interface/goals/LTH/lth_forsaketheelves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forsaketheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_forsaketheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_galadrielsfarewell - texturefile = gfx/interface/goals/LTH/lth_galadrielsfarewell.dds - } - spriteType = { - name = GFX_goal_lth_galadrielsfarewell_shine - texturefile = gfx/interface/goals/LTH/lth_galadrielsfarewell.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsfarewell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsfarewell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_galadrielsmirror - texturefile = gfx/interface/goals/LTH/lth_galadrielsmirror.dds - } - spriteType = { - name = GFX_goal_lth_galadrielsmirror_shine - texturefile = gfx/interface/goals/LTH/lth_galadrielsmirror.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsmirror.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsmirror.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_galadrielspowers - texturefile = gfx/interface/goals/LTH/lth_galadrielspowers.dds - } - spriteType = { - name = GFX_goal_lth_galadrielspowers_shine - texturefile = gfx/interface/goals/LTH/lth_galadrielspowers.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielspowers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielspowers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_galadrielsvision - texturefile = gfx/interface/goals/LTH/lth_galadrielsvision.dds - } - spriteType = { - name = GFX_goal_lth_galadrielsvision_shine - texturefile = gfx/interface/goals/LTH/lth_galadrielsvision.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsvision.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_galadrielsvision.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_gal_mirror - texturefile = gfx/interface/goals/LTH/lth_gal_mirror.dds - } - spriteType = { - name = GFX_goal_lth_gal_mirror_shine - texturefile = gfx/interface/goals/LTH/lth_gal_mirror.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_gal_mirror.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_gal_mirror.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_givesauronthering - texturefile = gfx/interface/goals/LTH/lth_givesauronthering.dds - } - spriteType = { - name = GFX_goal_lth_givesauronthering_shine - texturefile = gfx/interface/goals/LTH/lth_givesauronthering.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_givesauronthering.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_givesauronthering.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_greatestofwarriors - texturefile = gfx/interface/goals/LTH/lth_greatestofwarriors.dds - } - spriteType = { - name = GFX_goal_lth_greatestofwarriors_shine - texturefile = gfx/interface/goals/LTH/lth_greatestofwarriors.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_greatestofwarriors.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_greatestofwarriors.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_guardiansoftheriveranduin - texturefile = gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds - } - spriteType = { - name = GFX_goal_lth_guardiansoftheriveranduin_shine - texturefile = gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansoftheriveranduin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_guardiansofthesilverwood - texturefile = gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds - } - spriteType = { - name = GFX_goal_lth_guardiansofthesilverwood_shine - texturefile = gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansofthesilverwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_guardiansofthewild - texturefile = gfx/interface/goals/LTH/lth_guardiansofthewild.dds - } - spriteType = { - name = GFX_goal_lth_guardiansofthewild_shine - texturefile = gfx/interface/goals/LTH/lth_guardiansofthewild.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansofthewild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_guardiansofthewild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_harmonicascendancy - texturefile = gfx/interface/goals/LTH/lth_harmonicascendancy.dds - } - spriteType = { - name = GFX_goal_lth_harmonicascendancy_shine - texturefile = gfx/interface/goals/LTH/lth_harmonicascendancy.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_harmonicascendancy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_harmonicascendancy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_harmonyofthesindar - texturefile = gfx/interface/goals/LTH/lth_harmonyofthesindar.dds - } - spriteType = { - name = GFX_goal_lth_harmonyofthesindar_shine - texturefile = gfx/interface/goals/LTH/lth_harmonyofthesindar.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_harmonyofthesindar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_harmonyofthesindar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_hegemony - texturefile = gfx/interface/goals/LTH/lth_hegemony.dds - } - spriteType = { - name = GFX_goal_lth_hegemony_shine - texturefile = gfx/interface/goals/LTH/lth_hegemony.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_hegemony.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_hegemony.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_immortalendurance - texturefile = gfx/interface/goals/LTH/lth_immortalendurance.dds - } - spriteType = { - name = GFX_goal_lth_immortalendurance_shine - texturefile = gfx/interface/goals/LTH/lth_immortalendurance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_immortalendurance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_immortalendurance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_integrateorcsintothegaladhrim - texturefile = gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds - } - spriteType = { - name = GFX_goal_lth_integrateorcsintothegaladhrim_shine - texturefile = gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_integrateorcsintothegaladhrim.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_investfocus - texturefile = gfx/interface/goals/LTH/lth_investfocus.dds - } - spriteType = { - name = GFX_goal_lth_investfocus_shine - texturefile = gfx/interface/goals/LTH/lth_investfocus.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_investfocus.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_investfocus.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_invitecirdan - texturefile = gfx/interface/goals/LTH/lth_invitecirdan.dds - } - spriteType = { - name = GFX_goal_lth_invitecirdan_shine - texturefile = gfx/interface/goals/LTH/lth_invitecirdan.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitecirdan.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitecirdan.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_inviteelrond - texturefile = gfx/interface/goals/LTH/lth_inviteelrond.dds - } - spriteType = { - name = GFX_goal_lth_inviteelrond_shine - texturefile = gfx/interface/goals/LTH/lth_inviteelrond.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_inviteelrond.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_inviteelrond.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_invitegaladriel - texturefile = gfx/interface/goals/LTH/lth_invitegaladriel.dds - } - spriteType = { - name = GFX_goal_lth_invitegaladriel_shine - texturefile = gfx/interface/goals/LTH/lth_invitegaladriel.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitegaladriel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitegaladriel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_invitegandalf - texturefile = gfx/interface/goals/LTH/lth_invitegandalf.dds - } - spriteType = { - name = GFX_goal_lth_invitegandalf_shine - texturefile = gfx/interface/goals/LTH/lth_invitegandalf.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitegandalf.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitegandalf.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_invitesaruman - texturefile = gfx/interface/goals/LTH/lth_invitesaruman.dds - } - spriteType = { - name = GFX_goal_lth_invitesaruman_shine - texturefile = gfx/interface/goals/LTH/lth_invitesaruman.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitesaruman.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invitesaruman.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_invokethetaleofgaladrielandeorl - texturefile = gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds - } - spriteType = { - name = GFX_goal_lth_invokethetaleofgaladrielandeorl_shine - texturefile = gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_invokethetaleofgaladrielandeorl.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_labourtaxfornonelves - texturefile = gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds - } - spriteType = { - name = GFX_goal_lth_labourtaxfornonelves_shine - texturefile = gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_labourtaxfornonelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_leadbyexample - texturefile = gfx/interface/goals/LTH/lth_leadbyexample.dds - } - spriteType = { - name = GFX_goal_lth_leadbyexample_shine - texturefile = gfx/interface/goals/LTH/lth_leadbyexample.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_leadbyexample.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_leadbyexample.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_learnfromthestrongest - texturefile = gfx/interface/goals/LTH/lth_learnfromthestrongest.dds - } - spriteType = { - name = GFX_goal_lth_learnfromthestrongest_shine - texturefile = gfx/interface/goals/LTH/lth_learnfromthestrongest.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_learnfromthestrongest.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_learnfromthestrongest.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_legacyofthenoldor - texturefile = gfx/interface/goals/LTH/lth_legacyofthenoldor.dds - } - spriteType = { - name = GFX_goal_lth_legacyofthenoldor_shine - texturefile = gfx/interface/goals/LTH/lth_legacyofthenoldor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_legacyofthenoldor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_legacyofthenoldor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_liftthelawofisolation - texturefile = gfx/interface/goals/LTH/lth_liftthelawofisolation.dds - } - spriteType = { - name = GFX_goal_lth_liftthelawofisolation_shine - texturefile = gfx/interface/goals/LTH/lth_liftthelawofisolation.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_liftthelawofisolation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_liftthelawofisolation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_limitedintervention - texturefile = gfx/interface/goals/LTH/lth_limitedintervention.dds - } - spriteType = { - name = GFX_goal_lth_limitedintervention_shine - texturefile = gfx/interface/goals/LTH/lth_limitedintervention.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_limitedintervention.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_limitedintervention.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_localautonomy - texturefile = gfx/interface/goals/LTH/lth_localautonomy.dds - } - spriteType = { - name = GFX_goal_lth_localautonomy_shine - texturefile = gfx/interface/goals/LTH/lth_localautonomy.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_localautonomy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_localautonomy.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_lorekeepersguild - texturefile = gfx/interface/goals/LTH/lth_lorekeepersguild.dds - } - spriteType = { - name = GFX_goal_lth_lorekeepersguild_shine - texturefile = gfx/interface/goals/LTH/lth_lorekeepersguild.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_lorekeepersguild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_lorekeepersguild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_lothlorienarchers - texturefile = gfx/interface/goals/LTH/lth_lothlorienarchers.dds - } - spriteType = { - name = GFX_goal_lth_lothlorienarchers_shine - texturefile = gfx/interface/goals/LTH/lth_lothlorienarchers.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_lothlorienarchers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_lothlorienarchers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_maintainalliances - texturefile = gfx/interface/goals/LTH/lth_maintainalliances.dds - } - spriteType = { - name = GFX_goal_lth_maintainalliances_shine - texturefile = gfx/interface/goals/LTH/lth_maintainalliances.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_maintainalliances.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_maintainalliances.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_maintainstabilityinthewest - texturefile = gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds - } - spriteType = { - name = GFX_goal_lth_maintainstabilityinthewest_shine - texturefile = gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_maintainstabilityinthewest.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_mallorntreearchiotecture - texturefile = gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds - } - spriteType = { - name = GFX_goal_lth_mallorntreearchiotecture_shine - texturefile = gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mallorntreearchiotecture.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_marchinunison - texturefile = gfx/interface/goals/LTH/lth_marchinunison.dds - } - spriteType = { - name = GFX_goal_lth_marchinunison_shine - texturefile = gfx/interface/goals/LTH/lth_marchinunison.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_marchinunison.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_marchinunison.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_marchwardensoflothlorien - texturefile = gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds - } - spriteType = { - name = GFX_goal_lth_marchwardensoflothlorien_shine - texturefile = gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_marchwardensoflothlorien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_martialalliance - texturefile = gfx/interface/goals/LTH/lth_martialalliance.dds - } - spriteType = { - name = GFX_goal_lth_martialalliance_shine - texturefile = gfx/interface/goals/LTH/lth_martialalliance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_martialalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_martialalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_memberexpansion - texturefile = gfx/interface/goals/LTH/lth_memberexpansion.dds - } - spriteType = { - name = GFX_goal_lth_memberexpansion_shine - texturefile = gfx/interface/goals/LTH/lth_memberexpansion.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_memberexpansion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_memberexpansion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_mendtheschism - texturefile = gfx/interface/goals/LTH/lth_mendtheschism.dds - } - spriteType = { - name = GFX_goal_lth_mendtheschism_shine - texturefile = gfx/interface/goals/LTH/lth_mendtheschism.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mendtheschism.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mendtheschism.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_meritbasedadvancement - texturefile = gfx/interface/goals/LTH/lth_meritbasedadvancement.dds - } - spriteType = { - name = GFX_goal_lth_meritbasedadvancement_shine - texturefile = gfx/interface/goals/LTH/lth_meritbasedadvancement.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_meritbasedadvancement.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_meritbasedadvancement.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_metalworkandjewellery - texturefile = gfx/interface/goals/LTH/lth_metalworkandjewellery.dds - } - spriteType = { - name = GFX_goal_lth_metalworkandjewellery_shine - texturefile = gfx/interface/goals/LTH/lth_metalworkandjewellery.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_metalworkandjewellery.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_metalworkandjewellery.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_migrationtreaties - texturefile = gfx/interface/goals/LTH/lth_migrationtreaties.dds - } - spriteType = { - name = GFX_goal_lth_migrationtreaties_shine - texturefile = gfx/interface/goals/LTH/lth_migrationtreaties.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_migrationtreaties.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_migrationtreaties.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_minglewiththemortals - texturefile = gfx/interface/goals/LTH/lth_minglewiththemortals.dds - } - spriteType = { - name = GFX_goal_lth_minglewiththemortals_shine - texturefile = gfx/interface/goals/LTH/lth_minglewiththemortals.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_minglewiththemortals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_minglewiththemortals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_mirrorupgrade - texturefile = gfx/interface/goals/LTH/lth_mirrorupgrade.dds - } - spriteType = { - name = GFX_goal_lth_mirrorupgrade_shine - texturefile = gfx/interface/goals/LTH/lth_mirrorupgrade.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mirrorupgrade.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_mirrorupgrade.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_nenyasprotection - texturefile = gfx/interface/goals/LTH/lth_nenyasprotection.dds - } - spriteType = { - name = GFX_goal_lth_nenyasprotection_shine - texturefile = gfx/interface/goals/LTH/lth_nenyasprotection.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nenyasprotection.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nenyasprotection.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_nonelvencitizenship - texturefile = gfx/interface/goals/LTH/lth_nonelvencitizenship.dds - } - spriteType = { - name = GFX_goal_lth_nonelvencitizenship_shine - texturefile = gfx/interface/goals/LTH/lth_nonelvencitizenship.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nonelvencitizenship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nonelvencitizenship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_northboundinvasion - texturefile = gfx/interface/goals/LTH/lth_northboundinvasion.dds - } - spriteType = { - name = GFX_goal_lth_northboundinvasion_shine - texturefile = gfx/interface/goals/LTH/lth_northboundinvasion.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_northboundinvasion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_northboundinvasion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_nurturingthehalfelven - texturefile = gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds - } - spriteType = { - name = GFX_goal_lth_nurturingthehalfelven_shine - texturefile = gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_nurturingthehalfelven.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_offerpassagetothehalflings - texturefile = gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds - } - spriteType = { - name = GFX_goal_lth_offerpassagetothehalflings_shine - texturefile = gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_offerpassagetothehalflings.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_organizetributaries - texturefile = gfx/interface/goals/LTH/lth_organizetributaries.dds - } - spriteType = { - name = GFX_goal_lth_organizetributaries_shine - texturefile = gfx/interface/goals/LTH/lth_organizetributaries.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_organizetributaries.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_organizetributaries.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_ourowninitiative - texturefile = gfx/interface/goals/LTH/lth_ourowninitiative.dds - } - spriteType = { - name = GFX_goal_lth_ourowninitiative_shine - texturefile = gfx/interface/goals/LTH/lth_ourowninitiative.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ourowninitiative.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ourowninitiative.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_patrolsandriverwardens - texturefile = gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds - } - spriteType = { - name = GFX_goal_lth_patrolsandriverwardens_shine - texturefile = gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_patrolsandriverwardens.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no + name = GFX_goal_angmar_unaligned + texturefile = gfx/interface/goals/ANG/angmar_unaligned.dds + } + + spriteType = { + name = GFX_goal_mordor_deal + texturefile = gfx/interface/goals/ANG/mordor_deal.dds + } + + spriteType = { + name = GFX_goal_mordor_flag + texturefile = gfx/interface/goals/ANG/mordor_flag.dds + } + + spriteType = { + name = GFX_goal_witch_king + texturefile = gfx/interface/goals/ANG/witch_king.dds + } + + spriteType = { + name = GFX_goal_arnor_unite_by_force + texturefile = gfx/interface/goals/ART/arnor_unite_by_force.dds + } + + spriteType = { + name = GFX_goal_rangers_of_the_north + texturefile = gfx/interface/goals/ART/rangers_of_the_north.dds + } + + spriteType = { + name = GFX_goal_entwood_ent_council + texturefile = gfx/interface/goals/ENT/entwood_ent_council.dds + } + + spriteType = { + name = GFX_goal_entwood_flag + texturefile = gfx/interface/goals/ENT/entwood_flag.dds + } + + spriteType = { + name = GFX_goal_entwood_forest_nature + texturefile = gfx/interface/goals/ENT/entwood_forest_nature.dds + } + + spriteType = { + name = GFX_goal_entwood_treebeard + texturefile = gfx/interface/goals/ENT/entwood_treebeard.dds + } + + spriteType = { + name = GFX_goal_ent_throwing_rock + texturefile = gfx/interface/goals/ENT/ent_throwing_rock.dds + } + + spriteType = { + name = GFX_goal_dwarves_soldiers_army + texturefile = gfx/interface/goals/ERE/dwarves_soldiers_army.dds + } + + spriteType = { + name = GFX_goal_generic_anvil + texturefile = gfx/interface/goals/Generic/generic_anvil.dds + } + + spriteType = { + name = GFX_goal_generic_gondor_research + texturefile = gfx/interface/goals/Generic/generic_gondor_research.dds + } + + spriteType = { + name = GFX_goal_generic_industry_I + texturefile = gfx/interface/goals/Generic/generic_industry_I.dds + } + + spriteType = { + name = GFX_goal_generic_windmill + texturefile = gfx/interface/goals/Generic/generic_windmill.dds + } + + spriteType = { + name = GFX_goal_resource_wood + texturefile = gfx/interface/goals/Generic/resource_wood.dds + } + + spriteType = { + name = GFX_goal_support_belligerent + texturefile = gfx/interface/goals/Generic/support_belligerent.dds + } + + spriteType = { + name = GFX_goal_support_cooperative + texturefile = gfx/interface/goals/Generic/support_cooperative.dds + } + + spriteType = { + name = GFX_goal_support_revolutionary + texturefile = gfx/interface/goals/Generic/support_revolutionary.dds + } + + spriteType = { + name = GFX_goal_support_unaligned + texturefile = gfx/interface/goals/Generic/support_unaligned.dds + } + + spriteType = { + name = GFX_goal_arnor + texturefile = gfx/interface/goals/GON/arnor.dds + } + + spriteType = { + name = GFX_goal_gondor + texturefile = gfx/interface/goals/GON/gondor.dds + } + + spriteType = { + name = GFX_goal_gondor_army_of_the_dead_ghosts + texturefile = gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds + } + + spriteType = { + name = GFX_goal_gondor_boromir + texturefile = gfx/interface/goals/GON/gondor_boromir.dds + } + + spriteType = { + name = GFX_goal_gondor_denethor + texturefile = gfx/interface/goals/GON/gondor_denethor.dds + } + + spriteType = { + name = GFX_goal_gondor_dol_amroth_flag + texturefile = gfx/interface/goals/GON/gondor_dol_amroth_flag.dds + } + + spriteType = { + name = GFX_goal_gondor_dol_amroth_propaganda + texturefile = gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds + } + + spriteType = { + name = GFX_goal_gondor_faramir + texturefile = gfx/interface/goals/GON/gondor_faramir.dds + } + + spriteType = { + name = GFX_goal_gondor_king_aragorn + texturefile = gfx/interface/goals/GON/gondor_king_aragorn.dds + } + + spriteType = { + name = GFX_goal_gondor_light_the_beacons + texturefile = gfx/interface/goals/GON/gondor_light_the_beacons.dds + } + + spriteType = { + name = GFX_goal_gon_ensure_popular_support_peasant_farmer + texturefile = gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds + } + + spriteType = { + name = GFX_goal_gon_faramir_eowyn_wedding + texturefile = gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds + } + + spriteType = { + name = GFX_goal_gon_gondor_angmar_deal + texturefile = gfx/interface/goals/GON/gon_gondor_angmar_deal.dds + } + + spriteType = { + name = GFX_goal_gon_gondor_enedwaith_deal + texturefile = gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds + } + + spriteType = { + name = GFX_goal_gon_gondor_flag_with_denethor_portrait + texturefile = gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds + } + + spriteType = { + name = GFX_goal_gon_gondor_lothlorien_deal + texturefile = gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds + } + + spriteType = { + name = GFX_goal_gon_gondor_needs_no_king_crown_broken + texturefile = gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds + } + + spriteType = { + name = GFX_goal_gon_isildur_crown_defamed + texturefile = gfx/interface/goals/GON/gon_isildur_crown_defamed.dds + } + + spriteType = { + name = GFX_goal_gon_isildur_crown_with_map + texturefile = gfx/interface/goals/GON/gon_isildur_crown_with_map.dds + } + + spriteType = { + name = GFX_goal_gon_ithilien_crisis_white_tree_on_fire + texturefile = gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds + } + + spriteType = { + name = GFX_goal_gon_ithilien_defensive_planning + texturefile = gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds + } + + spriteType = { + name = GFX_goal_gon_ithilien_soldier_of_gondor_shield + texturefile = gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds + } + + spriteType = { + name = GFX_goal_gon_orc_contained_ithilien_measures + texturefile = gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds + } + + spriteType = { + name = GFX_goal_gon_pitchfork_and_torch_revolt + texturefile = gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds + } + + spriteType = { + name = GFX_goal_gon_the_peoples_fleet_ship + texturefile = gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds + } + + spriteType = { + name = GFX_goal_gundabad_flag + texturefile = gfx/interface/goals/GUN/gundabad_flag.dds + } + + spriteType = { + name = GFX_goal_army_uruk_hai + texturefile = gfx/interface/goals/ISE/army_uruk_hai.dds + } + + spriteType = { + name = GFX_goal_burn_fangorn_forest + texturefile = gfx/interface/goals/ISE/burn_fangorn_forest.dds + } + + spriteType = { + name = GFX_goal_imprisend_gandalf + texturefile = gfx/interface/goals/ISE/imprisend_gandalf.dds + } + + spriteType = { + name = GFX_goal_ise_palantir_covered_up + texturefile = gfx/interface/goals/ISE/ise_palantir_covered_up.dds + } + + spriteType = { + name = GFX_goal_ise_the_white_hand_flag + texturefile = gfx/interface/goals/ISE/ise_the_white_hand_flag.dds + } + + spriteType = { + name = GFX_goal_meet_with_gandalf + texturefile = gfx/interface/goals/ISE/meet_with_gandalf.dds + } + + spriteType = { + name = GFX_goal_orthanc_destroyed + texturefile = gfx/interface/goals/ISE/orthanc_destroyed.dds + } + + spriteType = { + name = GFX_goal_saruman_enedwaith_tribes + texturefile = gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds + } + + spriteType = { + name = GFX_goal_saruman_with_palantir + texturefile = gfx/interface/goals/ISE/saruman_with_palantir.dds + } + + spriteType = { + name = GFX_goal_lth_adminstration + texturefile = gfx/interface/goals/LTH/lth_adminstration.dds + } + + spriteType = { + name = GFX_goal_lth_ancient_archives + texturefile = gfx/interface/goals/LTH/lth_ancient_archives.dds + } + + spriteType = { + name = GFX_goal_lth_anduin_flag + texturefile = gfx/interface/goals/LTH/lth_anduin_flag.dds + } + + spriteType = { + name = GFX_goal_lth_attack_dol_guldur + texturefile = gfx/interface/goals/LTH/lth_attack_dol_guldur.dds + } + + spriteType = { + name = GFX_goal_lth_aule_the_blacksmith + texturefile = gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds + } + + spriteType = { + name = GFX_goal_lth_balrog_durins_bane + texturefile = gfx/interface/goals/LTH/lth_balrog_durins_bane.dds + } + + spriteType = { + name = GFX_goal_lth_borders_migration_treaty + texturefile = gfx/interface/goals/LTH/lth_borders_migration_treaty.dds + } + + spriteType = { + name = GFX_goal_lth_burdens_of_leadership + texturefile = gfx/interface/goals/LTH/lth_burdens_of_leadership.dds + } + + spriteType = { + name = GFX_goal_lth_caras_galadhon + texturefile = gfx/interface/goals/LTH/lth_caras_galadhon.dds + } + + spriteType = { + name = GFX_goal_lth_celeborn + texturefile = gfx/interface/goals/LTH/lth_celeborn.dds + } + + spriteType = { + name = GFX_goal_lth_celeborn_edicts + texturefile = gfx/interface/goals/LTH/lth_celeborn_edicts.dds + } + + spriteType = { + name = GFX_goal_lth_celeborn_reforms + texturefile = gfx/interface/goals/LTH/lth_celeborn_reforms.dds + } + + spriteType = { + name = GFX_goal_lth_celeborn_supreme_leader + texturefile = gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds + } + + spriteType = { + name = GFX_goal_lth_celebrate_trumpets_message + texturefile = gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds + } + + spriteType = { + name = GFX_goal_lth_cerin_amroth + texturefile = gfx/interface/goals/LTH/lth_cerin_amroth.dds + } + + spriteType = { + name = GFX_goal_lth_cleanse_orcs_from_moria + texturefile = gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds + } + + spriteType = { + name = GFX_goal_lth_collect_taxes + texturefile = gfx/interface/goals/LTH/lth_collect_taxes.dds + } + + spriteType = { + name = GFX_goal_lth_contain_mordor + texturefile = gfx/interface/goals/LTH/lth_contain_mordor.dds + } + + spriteType = { + name = GFX_goal_lth_cooperation_and_stability + texturefile = gfx/interface/goals/LTH/lth_cooperation_and_stability.dds + } + + spriteType = { + name = GFX_goal_lth_coordinated_defense + texturefile = gfx/interface/goals/LTH/lth_coordinated_defense.dds + } + + spriteType = { + name = GFX_goal_lth_coordinated_sactions + texturefile = gfx/interface/goals/LTH/lth_coordinated_sactions.dds + } + + spriteType = { + name = GFX_goal_lth_council_of_elrond + texturefile = gfx/interface/goals/LTH/lth_council_of_elrond.dds + } + + spriteType = { + name = GFX_goal_lth_council_of_quendi + texturefile = gfx/interface/goals/LTH/lth_council_of_quendi.dds + } + + spriteType = { + name = GFX_goal_lth_defense_deal + texturefile = gfx/interface/goals/LTH/lth_defense_deal.dds + } + + spriteType = { + name = GFX_goal_lth_defense_guardians + texturefile = gfx/interface/goals/LTH/lth_defense_guardians.dds + } + + spriteType = { + name = GFX_goal_lth_defensive_alliance + texturefile = gfx/interface/goals/LTH/lth_defensive_alliance.dds + } + + spriteType = { + name = GFX_goal_lth_defensive_perimeter_castle + texturefile = gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds + } + + spriteType = { + name = GFX_goal_lth_demand_tribute + texturefile = gfx/interface/goals/LTH/lth_demand_tribute.dds + } + + spriteType = { + name = GFX_goal_lth_depart_to_valinor_preemptive + texturefile = gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds + } + + spriteType = { + name = GFX_goal_lth_desperate_last_stand + texturefile = gfx/interface/goals/LTH/lth_desperate_last_stand.dds + } + + spriteType = { + name = GFX_goal_lth_deterrence_castle + texturefile = gfx/interface/goals/LTH/lth_deterrence_castle.dds + } + + spriteType = { + name = GFX_goal_lth_diplomacy_focus + texturefile = gfx/interface/goals/LTH/lth_diplomacy_focus.dds + } + + spriteType = { + name = GFX_goal_lth_discord_lecture + texturefile = gfx/interface/goals/LTH/lth_discord_lecture.dds + } + + spriteType = { + name = GFX_goal_lth_dissolve_elven_nobility + texturefile = gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds + } + + spriteType = { + name = GFX_goal_lth_dol_guldur_flag + texturefile = gfx/interface/goals/LTH/lth_dol_guldur_flag.dds + } + + spriteType = { + name = GFX_goal_lth_dove_breaking_free + texturefile = gfx/interface/goals/LTH/lth_dove_breaking_free.dds + } + + spriteType = { + name = GFX_goal_lth_dwarf_elf_handshake + texturefile = gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds + } + + spriteType = { + name = GFX_goal_lth_elden_days_tree + texturefile = gfx/interface/goals/LTH/lth_elden_days_tree.dds + } + + spriteType = { + name = GFX_goal_lth_election_ballot + texturefile = gfx/interface/goals/LTH/lth_election_ballot.dds + } + + spriteType = { + name = GFX_goal_lth_elf_kneeling_to_orc + texturefile = gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds + } + + spriteType = { + name = GFX_goal_lth_elf_shaking_hands_with_orc + texturefile = gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds + } + + spriteType = { + name = GFX_goal_lth_elite_special_forces + texturefile = gfx/interface/goals/LTH/lth_elite_special_forces.dds + } + + spriteType = { + name = GFX_goal_lth_elven_alliance + texturefile = gfx/interface/goals/LTH/lth_elven_alliance.dds + } + + spriteType = { + name = GFX_goal_lth_elven_aristocrats + texturefile = gfx/interface/goals/LTH/lth_elven_aristocrats.dds + } + + spriteType = { + name = GFX_goal_lth_elven_army + texturefile = gfx/interface/goals/LTH/lth_elven_army.dds + } + + spriteType = { + name = GFX_goal_lth_elven_army_dark + texturefile = gfx/interface/goals/LTH/lth_elven_army_dark.dds + } + + spriteType = { + name = GFX_goal_lth_elven_army_training + texturefile = gfx/interface/goals/LTH/lth_elven_army_training.dds + } + + spriteType = { + name = GFX_goal_lth_elven_cavalry + texturefile = gfx/interface/goals/LTH/lth_elven_cavalry.dds + } + + spriteType = { + name = GFX_goal_lth_elven_diplomacy_and_influence + texturefile = gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds + } + + spriteType = { + name = GFX_goal_lth_elven_dwarf_relations + texturefile = gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds + } + + spriteType = { + name = GFX_goal_lth_elven_factions_divided + texturefile = gfx/interface/goals/LTH/lth_elven_factions_divided.dds + } + + spriteType = { + name = GFX_goal_lth_elven_factions_united + texturefile = gfx/interface/goals/LTH/lth_elven_factions_united.dds + } + + spriteType = { + name = GFX_goal_lth_elven_lords_consult + texturefile = gfx/interface/goals/LTH/lth_elven_lords_consult.dds + } + + spriteType = { + name = GFX_goal_lth_elven_party_celebrations + texturefile = gfx/interface/goals/LTH/lth_elven_party_celebrations.dds + } + + spriteType = { + name = GFX_goal_lth_elven_riders_naith + texturefile = gfx/interface/goals/LTH/lth_elven_riders_naith.dds + } + + spriteType = { + name = GFX_goal_lth_elven_supremacy + texturefile = gfx/interface/goals/LTH/lth_elven_supremacy.dds + } + + spriteType = { + name = GFX_goal_lth_elven_sword_and_bow + texturefile = gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds + } + + spriteType = { + name = GFX_goal_lth_elven_warrior_spear + texturefile = gfx/interface/goals/LTH/lth_elven_warrior_spear.dds + } + + spriteType = { + name = GFX_goal_lth_elves_gala_cele_beacon_of_hope + texturefile = gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds + } + + spriteType = { + name = GFX_goal_lth_elves_men_handshake + texturefile = gfx/interface/goals/LTH/lth_elves_men_handshake.dds + } + + spriteType = { + name = GFX_goal_lth_elves_orcs_debate + texturefile = gfx/interface/goals/LTH/lth_elves_orcs_debate.dds + } + + spriteType = { + name = GFX_goal_lth_elves_shaking_hands + texturefile = gfx/interface/goals/LTH/lth_elves_shaking_hands.dds + } + + spriteType = { + name = GFX_goal_lth_emissaries_guild + texturefile = gfx/interface/goals/LTH/lth_emissaries_guild.dds + } + + spriteType = { + name = GFX_goal_lth_endure_the_darkness + texturefile = gfx/interface/goals/LTH/lth_endure_the_darkness.dds + } + + spriteType = { + name = GFX_goal_lth_equal_union + texturefile = gfx/interface/goals/LTH/lth_equal_union.dds + } + + spriteType = { + name = GFX_goal_lth_erebor_skull + texturefile = gfx/interface/goals/LTH/lth_erebor_skull.dds + } + + spriteType = { + name = GFX_goal_lth_eternal_dominion + texturefile = gfx/interface/goals/LTH/lth_eternal_dominion.dds + } + + spriteType = { + name = GFX_goal_lth_eternal_wisdom + texturefile = gfx/interface/goals/LTH/lth_eternal_wisdom.dds + } + + spriteType = { + name = GFX_goal_lth_evil_galadriel + texturefile = gfx/interface/goals/LTH/lth_evil_galadriel.dds + } + + spriteType = { + name = GFX_goal_lth_evil_galadriel_unleashed + texturefile = gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds + } + + spriteType = { + name = GFX_goal_lth_executive_vigour + texturefile = gfx/interface/goals/LTH/lth_executive_vigour.dds + } + + spriteType = { + name = GFX_goal_lth_extend_citizenship + texturefile = gfx/interface/goals/LTH/lth_extend_citizenship.dds + } + + spriteType = { + name = GFX_goal_lth_fate_of_mortals_death + texturefile = gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds + } + + spriteType = { + name = GFX_goal_lth_fellowship_of_ring + texturefile = gfx/interface/goals/LTH/lth_fellowship_of_ring.dds + } + + spriteType = { + name = GFX_goal_lth_festival_of_unity + texturefile = gfx/interface/goals/LTH/lth_festival_of_unity.dds + } + + spriteType = { + name = GFX_goal_lth_food_resource_storage + texturefile = gfx/interface/goals/LTH/lth_food_resource_storage.dds + } + + spriteType = { + name = GFX_goal_lth_forsake_elves_kneeling + texturefile = gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds + } + + spriteType = { + name = GFX_goal_lth_fortifications_castle + texturefile = gfx/interface/goals/LTH/lth_fortifications_castle.dds + } + + spriteType = { + name = GFX_goal_lth_friendly_skeleton + texturefile = gfx/interface/goals/LTH/lth_friendly_skeleton.dds + } + + spriteType = { + name = GFX_goal_lth_frodo_valinor + texturefile = gfx/interface/goals/LTH/lth_frodo_valinor.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel + texturefile = gfx/interface/goals/LTH/lth_galadriel.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_and_eorl_rohan + texturefile = gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_and_sauron_alliance + texturefile = gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_celeborn_accord + texturefile = gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy + texturefile = gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_edicts + texturefile = gfx/interface/goals/LTH/lth_galadriel_edicts.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_fair_as_the_sea + texturefile = gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_hourglass_immortality + texturefile = gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_mirror + texturefile = gfx/interface/goals/LTH/lth_galadriel_mirror.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_powers + texturefile = gfx/interface/goals/LTH/lth_galadriel_powers.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_queen + texturefile = gfx/interface/goals/LTH/lth_galadriel_queen.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_resisting_darkness + texturefile = gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale + texturefile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds + } + + spriteType = { + name = GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf + texturefile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds + } + + spriteType = { + name = GFX_goal_lth_generic_archers + texturefile = gfx/interface/goals/LTH/lth_generic_archers.dds + } + + spriteType = { + name = GFX_goal_lth_glowing_elven_sword_blade + texturefile = gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds + } + + spriteType = { + name = GFX_goal_lth_gondor_skull + texturefile = gfx/interface/goals/LTH/lth_gondor_skull.dds + } + + spriteType = { + name = GFX_goal_lth_grain_dole + texturefile = gfx/interface/goals/LTH/lth_grain_dole.dds + } + + spriteType = { + name = GFX_goal_lth_grey_company_warriors + texturefile = gfx/interface/goals/LTH/lth_grey_company_warriors.dds + } + + spriteType = { + name = GFX_goal_lth_haldir_elves_ring_fellowship + texturefile = gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_beren_luthien + texturefile = gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_cooperation + texturefile = gfx/interface/goals/LTH/lth_halfelves_cooperation.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_dior + texturefile = gfx/interface/goals/LTH/lth_halfelves_dior.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_earendil + texturefile = gfx/interface/goals/LTH/lth_halfelves_earendil.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_elrond + texturefile = gfx/interface/goals/LTH/lth_halfelves_elrond.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_elros + texturefile = gfx/interface/goals/LTH/lth_halfelves_elros.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_emblem + texturefile = gfx/interface/goals/LTH/lth_halfelves_emblem.dds + } + + spriteType = { + name = GFX_goal_lth_halfelves_peredhil_legends_trumpets + texturefile = gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds + } + + spriteType = { + name = GFX_goal_lth_handshake_cooperation + texturefile = gfx/interface/goals/LTH/lth_handshake_cooperation.dds + } + + spriteType = { + name = GFX_goal_lth_hands_asking_for_help_aid_weary + texturefile = gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds + } + + spriteType = { + name = GFX_goal_lth_hand_grabbing_crown + texturefile = gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds + } + + spriteType = { + name = GFX_goal_lth_hand_taking_ring + texturefile = gfx/interface/goals/LTH/lth_hand_taking_ring.dds + } + + spriteType = { + name = GFX_goal_lth_hand_with_flower_nature + texturefile = gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds + } + + spriteType = { + name = GFX_goal_lth_harmony_unity + texturefile = gfx/interface/goals/LTH/lth_harmony_unity.dds + } + + spriteType = { + name = GFX_goal_lth_hegemony_crown + texturefile = gfx/interface/goals/LTH/lth_hegemony_crown.dds + } + + spriteType = { + name = GFX_goal_lth_hidden_elven_realm + texturefile = gfx/interface/goals/LTH/lth_hidden_elven_realm.dds + } + + spriteType = { + name = GFX_goal_lth_invasion_northbound + texturefile = gfx/interface/goals/LTH/lth_invasion_northbound.dds + } + + spriteType = { + name = GFX_goal_lth_investment + texturefile = gfx/interface/goals/LTH/lth_investment.dds + } + + spriteType = { + name = GFX_goal_lth_keep_elves_safe + texturefile = gfx/interface/goals/LTH/lth_keep_elves_safe.dds + } + + spriteType = { + name = GFX_goal_lth_knowledge_books_guild + texturefile = gfx/interface/goals/LTH/lth_knowledge_books_guild.dds + } + + spriteType = { + name = GFX_goal_lth_labour_blacksmith + texturefile = gfx/interface/goals/LTH/lth_labour_blacksmith.dds + } + + spriteType = { + name = GFX_goal_lth_last_eldar + texturefile = gfx/interface/goals/LTH/lth_last_eldar.dds + } + + spriteType = { + name = GFX_goal_lth_leave_to_valinor + texturefile = gfx/interface/goals/LTH/lth_leave_to_valinor.dds + } + + spriteType = { + name = GFX_goal_lth_library_caras_galadhon + texturefile = gfx/interface/goals/LTH/lth_library_caras_galadhon.dds + } + + spriteType = { + name = GFX_goal_lth_limited_intervention + texturefile = gfx/interface/goals/LTH/lth_limited_intervention.dds + } + + spriteType = { + name = GFX_goal_lth_lindon_cirdan + texturefile = gfx/interface/goals/LTH/lth_lindon_cirdan.dds + } + + spriteType = { + name = GFX_goal_lth_local_autonomy + texturefile = gfx/interface/goals/LTH/lth_local_autonomy.dds + } + + spriteType = { + name = GFX_goal_lth_locked_up_borders_sealed + texturefile = gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_anduin_deal + texturefile = gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_erebor_deal + texturefile = gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_flag + texturefile = gfx/interface/goals/LTH/lth_lothlorien_flag.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_gondor_deal + texturefile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_gondor_deal_2 + texturefile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_moria_deal + texturefile = gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rivendell_isengard_union + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rohan_deal + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rohan_ties + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds + } + + spriteType = { + name = GFX_goal_lth_mallorn_tree_planning + texturefile = gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds + } + + spriteType = { + name = GFX_goal_lth_map_measures + texturefile = gfx/interface/goals/LTH/lth_map_measures.dds + } + + spriteType = { + name = GFX_goal_lth_meritocracy_advancement + texturefile = gfx/interface/goals/LTH/lth_meritocracy_advancement.dds + } + + spriteType = { + name = GFX_goal_lth_mirror_enchanted_basin + texturefile = gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds + } + + spriteType = { + name = GFX_goal_lth_mirror_upgrade + texturefile = gfx/interface/goals/LTH/lth_mirror_upgrade.dds + } + + spriteType = { + name = GFX_goal_lth_moria_flag + texturefile = gfx/interface/goals/LTH/lth_moria_flag.dds + } + + spriteType = { + name = GFX_goal_lth_mortal_skeleton_pleading + texturefile = gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_elven_warrior + texturefile = gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_emblem + texturefile = gfx/interface/goals/LTH/lth_nandor_emblem.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_haldir + texturefile = gfx/interface/goals/LTH/lth_nandor_haldir.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_hands + texturefile = gfx/interface/goals/LTH/lth_nandor_hands.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_mallorn_trees + texturefile = gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_map + texturefile = gfx/interface/goals/LTH/lth_nandor_map.dds + } + + spriteType = { + name = GFX_goal_lth_nandor_nimrodel_song + texturefile = gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds + } + + spriteType = { + name = GFX_goal_lth_nature_eagles + texturefile = gfx/interface/goals/LTH/lth_nature_eagles.dds + } + + spriteType = { + name = GFX_goal_lth_nature_fellbeast + texturefile = gfx/interface/goals/LTH/lth_nature_fellbeast.dds + } + + spriteType = { + name = GFX_goal_lth_nature_forest_between + texturefile = gfx/interface/goals/LTH/lth_nature_forest_between.dds + } + + spriteType = { + name = GFX_goal_lth_nature_great_beasts + texturefile = gfx/interface/goals/LTH/lth_nature_great_beasts.dds + } + + spriteType = { + name = GFX_goal_lth_nature_spiders + texturefile = gfx/interface/goals/LTH/lth_nature_spiders.dds + } + + spriteType = { + name = GFX_goal_lth_nature_spiders_of_ungoliant + texturefile = gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds + } + + spriteType = { + name = GFX_goal_lth_nature_treebeard + texturefile = gfx/interface/goals/LTH/lth_nature_treebeard.dds + } + + spriteType = { + name = GFX_goal_lth_nazghul_ringwraith_on_fire + texturefile = gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds + } + + spriteType = { + name = GFX_goal_lth_nenya_enigma + texturefile = gfx/interface/goals/LTH/lth_nenya_enigma.dds + } + + spriteType = { + name = GFX_goal_lth_nenya_one_ring_merge + texturefile = gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds + } + + spriteType = { + name = GFX_goal_lth_nenya_ring_enchantments + texturefile = gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_commemorate_gondolin + texturefile = gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_elven_warrior + texturefile = gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_emblem + texturefile = gfx/interface/goals/LTH/lth_noldor_emblem.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_galadriel + texturefile = gfx/interface/goals/LTH/lth_noldor_galadriel.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_golden_book_open_knowledge + texturefile = gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_metalwork + texturefile = gfx/interface/goals/LTH/lth_noldor_metalwork.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_purity + texturefile = gfx/interface/goals/LTH/lth_noldor_purity.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_queens_guard + texturefile = gfx/interface/goals/LTH/lth_noldor_queens_guard.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_reawakening + texturefile = gfx/interface/goals/LTH/lth_noldor_reawakening.dds + } + + spriteType = { + name = GFX_goal_lth_noldor_silmarils + texturefile = gfx/interface/goals/LTH/lth_noldor_silmarils.dds + } + + spriteType = { + name = GFX_goal_lth_oath_of_feanor + texturefile = gfx/interface/goals/LTH/lth_oath_of_feanor.dds + } + + spriteType = { + name = GFX_goal_lth_one_ring_shadow + texturefile = gfx/interface/goals/LTH/lth_one_ring_shadow.dds + } + + spriteType = { + name = GFX_goal_lth_open_book + texturefile = gfx/interface/goals/LTH/lth_open_book.dds + } + + spriteType = { + name = GFX_goal_lth_open_books_culture + texturefile = gfx/interface/goals/LTH/lth_open_books_culture.dds + } + + spriteType = { + name = GFX_goal_lth_orc_bound_by_chains + texturefile = gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds + } + + spriteType = { + name = GFX_goal_lth_orc_contained_resistance + texturefile = gfx/interface/goals/LTH/lth_orc_contained_resistance.dds + } + + spriteType = { + name = GFX_goal_lth_orc_prisoner_vivisection + texturefile = gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds + } + + spriteType = { + name = GFX_goal_lth_orc_servitude + texturefile = gfx/interface/goals/LTH/lth_orc_servitude.dds + } + + spriteType = { + name = GFX_goal_lth_orc_warrior + texturefile = gfx/interface/goals/LTH/lth_orc_warrior.dds + } + + spriteType = { + name = GFX_goal_lth_other_people_association + texturefile = gfx/interface/goals/LTH/lth_other_people_association.dds + } + + spriteType = { + name = GFX_goal_lth_peasantry + texturefile = gfx/interface/goals/LTH/lth_peasantry.dds + } + + spriteType = { + name = GFX_goal_lth_play_for_time_hourglass + texturefile = gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds } spriteType = { name = GFX_goal_lth_powers_of_nenya texturefile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds } + + spriteType = { + name = GFX_goal_lth_proposals_and_resolutions + texturefile = gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds + } + + spriteType = { + name = GFX_goal_lth_protect_at_any_cost + texturefile = gfx/interface/goals/LTH/lth_protect_at_any_cost.dds + } + + spriteType = { + name = GFX_goal_lth_provincial_councils + texturefile = gfx/interface/goals/LTH/lth_provincial_councils.dds + } + + spriteType = { + name = GFX_goal_lth_raised_fist_blue + texturefile = gfx/interface/goals/LTH/lth_raised_fist_blue.dds + } + + spriteType = { + name = GFX_goal_lth_remove_borders + texturefile = gfx/interface/goals/LTH/lth_remove_borders.dds + } + + spriteType = { + name = GFX_goal_lth_research_cooperation + texturefile = gfx/interface/goals/LTH/lth_research_cooperation.dds + } + + spriteType = { + name = GFX_goal_lth_revolutionary_flag_lothlorien + texturefile = gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds + } + + spriteType = { + name = GFX_goal_lth_ring_nenya + texturefile = gfx/interface/goals/LTH/lth_ring_nenya.dds + } + + spriteType = { + name = GFX_goal_lth_ring_nenya_archive + texturefile = gfx/interface/goals/LTH/lth_ring_nenya_archive.dds + } + + spriteType = { + name = GFX_goal_lth_river_anduin + texturefile = gfx/interface/goals/LTH/lth_river_anduin.dds + } + + spriteType = { + name = GFX_goal_lth_river_ships + texturefile = gfx/interface/goals/LTH/lth_river_ships.dds + } + + spriteType = { + name = GFX_goal_lth_river_ships_navigation + texturefile = gfx/interface/goals/LTH/lth_river_ships_navigation.dds + } + + spriteType = { + name = GFX_goal_lth_sacred_mallorn_trees + texturefile = gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds + } + + spriteType = { + name = GFX_goal_lth_safeguard_food_bread + texturefile = gfx/interface/goals/LTH/lth_safeguard_food_bread.dds + } + + spriteType = { + name = GFX_goal_lth_safe_haven_defense + texturefile = gfx/interface/goals/LTH/lth_safe_haven_defense.dds + } + + spriteType = { + name = GFX_goal_lth_sauron_eye_contained_war + texturefile = gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds + } + + spriteType = { + name = GFX_goal_lth_sauron_unleashed_with_ring + texturefile = gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds + } + + spriteType = { + name = GFX_goal_lth_schism_celeborn_exiled + texturefile = gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds + } + + spriteType = { + name = GFX_goal_lth_schism_galadriels_farewell + texturefile = gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds + } + + spriteType = { + name = GFX_goal_lth_schism_mended + texturefile = gfx/interface/goals/LTH/lth_schism_mended.dds + } + + spriteType = { + name = GFX_goal_lth_schism_separated + texturefile = gfx/interface/goals/LTH/lth_schism_separated.dds + } + + spriteType = { + name = GFX_goal_lth_scribe_knowledge + texturefile = gfx/interface/goals/LTH/lth_scribe_knowledge.dds + } + + spriteType = { + name = GFX_goal_lth_select_advisors + texturefile = gfx/interface/goals/LTH/lth_select_advisors.dds + } + + spriteType = { + name = GFX_goal_lth_shared_cause_hands + texturefile = gfx/interface/goals/LTH/lth_shared_cause_hands.dds + } + + spriteType = { + name = GFX_goal_lth_shared_research_knowledge + texturefile = gfx/interface/goals/LTH/lth_shared_research_knowledge.dds + } + + spriteType = { + name = GFX_goal_lth_shattered_crown_red + texturefile = gfx/interface/goals/LTH/lth_shattered_crown_red.dds + } + + spriteType = { + name = GFX_goal_lth_shield_aegis_of_light + texturefile = gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds + } + + spriteType = { + name = GFX_goal_lth_silverthorn_arrows + texturefile = gfx/interface/goals/LTH/lth_silverthorn_arrows.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_celeborn + texturefile = gfx/interface/goals/LTH/lth_sindar_celeborn.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_crown_of_doriath + texturefile = gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_emblem + texturefile = gfx/interface/goals/LTH/lth_sindar_emblem.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_lothlorien_lindon_treaty + texturefile = gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_melian + texturefile = gfx/interface/goals/LTH/lth_sindar_melian.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_noldor_deal + texturefile = gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_pathstalkers + texturefile = gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds + } + + spriteType = { + name = GFX_goal_lth_sindar_thingol + texturefile = gfx/interface/goals/LTH/lth_sindar_thingol.dds + } + + spriteType = { + name = GFX_goal_lth_skulls_with_helmets + texturefile = gfx/interface/goals/LTH/lth_skulls_with_helmets.dds + } + + spriteType = { + name = GFX_goal_lth_taming_the_wild + texturefile = gfx/interface/goals/LTH/lth_taming_the_wild.dds + } + + spriteType = { + name = GFX_goal_lth_target_lindon_cirdan + texturefile = gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds + } + + spriteType = { + name = GFX_goal_lth_target_mirkwood_thranduil + texturefile = gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds + } + + spriteType = { + name = GFX_goal_lth_target_rivendell_elrond + texturefile = gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds + } + + spriteType = { + name = GFX_goal_lth_tax_collection_reformed + texturefile = gfx/interface/goals/LTH/lth_tax_collection_reformed.dds + } + + spriteType = { + name = GFX_goal_lth_territorial_defense + texturefile = gfx/interface/goals/LTH/lth_territorial_defense.dds + } + + spriteType = { + name = GFX_goal_lth_territorial_integration + texturefile = gfx/interface/goals/LTH/lth_territorial_integration.dds + } + + spriteType = { + name = GFX_goal_lth_thranduil_diplomatic_pressure + texturefile = gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds + } + + spriteType = { + name = GFX_goal_lth_torn_treaty_paper + texturefile = gfx/interface/goals/LTH/lth_torn_treaty_paper.dds + } + + spriteType = { + name = GFX_goal_lth_total_isolation_tower + texturefile = gfx/interface/goals/LTH/lth_total_isolation_tower.dds + } + + spriteType = { + name = GFX_goal_lth_trade_agreements + texturefile = gfx/interface/goals/LTH/lth_trade_agreements.dds + } + + spriteType = { + name = GFX_goal_lth_treaty_executive_power + texturefile = gfx/interface/goals/LTH/lth_treaty_executive_power.dds + } + + spriteType = { + name = GFX_goal_lth_treaty_invitation + texturefile = gfx/interface/goals/LTH/lth_treaty_invitation.dds + } + + spriteType = { + name = GFX_goal_lth_twilight_garden + texturefile = gfx/interface/goals/LTH/lth_twilight_garden.dds + } + + spriteType = { + name = GFX_goal_lth_twin_hearts + texturefile = gfx/interface/goals/LTH/lth_twin_hearts.dds + } + + spriteType = { + name = GFX_goal_lth_untreaded_path + texturefile = gfx/interface/goals/LTH/lth_untreaded_path.dds + } + + spriteType = { + name = GFX_goal_lth_urban_councils + texturefile = gfx/interface/goals/LTH/lth_urban_councils.dds + } + + spriteType = { + name = GFX_goal_lth_uruk_hai_orc + texturefile = gfx/interface/goals/LTH/lth_uruk_hai_orc.dds + } + + spriteType = { + name = GFX_goal_lth_vales_of_anduin_offer_chain + texturefile = gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds + } + + spriteType = { + name = GFX_goal_lth_waters_of_healing + texturefile = gfx/interface/goals/LTH/lth_waters_of_healing.dds + } + + spriteType = { + name = GFX_goal_lth_weapons_research + texturefile = gfx/interface/goals/LTH/lth_weapons_research.dds + } + + spriteType = { + name = GFX_goal_lth_weapon_sword_forging + texturefile = gfx/interface/goals/LTH/lth_weapon_sword_forging.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_eagles + texturefile = gfx/interface/goals/LTH/lth_white_council_eagles.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_elrond + texturefile = gfx/interface/goals/LTH/lth_white_council_elrond.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_fleet + texturefile = gfx/interface/goals/LTH/lth_white_council_fleet.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_galadriel + texturefile = gfx/interface/goals/LTH/lth_white_council_galadriel.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_gandalf + texturefile = gfx/interface/goals/LTH/lth_white_council_gandalf.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_meeting + texturefile = gfx/interface/goals/LTH/lth_white_council_meeting.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_saruman + texturefile = gfx/interface/goals/LTH/lth_white_council_saruman.dds + } + + spriteType = { + name = GFX_goal_lth_white_council_saruman_with_palantir + texturefile = gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds + } + + spriteType = { + name = GFX_goal_lth_yavanna + texturefile = gfx/interface/goals/LTH/lth_yavanna.dds + } + + spriteType = { + name = GFX_goal_mir_deal_with_the_spiders + texturefile = gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds + } + + spriteType = { + name = GFX_goal_mir_radagast_the_brown + texturefile = gfx/interface/goals/MIR/mir_radagast_the_brown.dds + } + + spriteType = { + name = GFX_goal_mir_spider_anarchy + texturefile = gfx/interface/goals/MIR/mir_spider_anarchy.dds + } + + spriteType = { + name = GFX_goal_mir_thranduil + texturefile = gfx/interface/goals/MIR/mir_thranduil.dds + } + + spriteType = { + name = GFX_goal_moa_balrog + texturefile = gfx/interface/goals/MOA/moa_balrog.dds + } + + spriteType = { + name = GFX_goal_mor_azog_orc_revolt + texturefile = gfx/interface/goals/MOR/mor_azog_orc_revolt.dds + } + + spriteType = { + name = GFX_goal_mor_dark_dol_guldur_fortress + texturefile = gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds + } + + spriteType = { + name = GFX_goal_mor_dol_guldur_flag + texturefile = gfx/interface/goals/MOR/mor_dol_guldur_flag.dds + } + + spriteType = { + name = GFX_goal_mor_encroach_on_ithilien + texturefile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds + } + + spriteType = { + name = GFX_goal_mor_erebor_flag + texturefile = gfx/interface/goals/MOR/mor_erebor_flag.dds + } + + spriteType = { + name = GFX_goal_mor_escalate_the_attacks + texturefile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds + } + + spriteType = { + name = GFX_goal_mor_golum + texturefile = gfx/interface/goals/MOR/mor_golum.dds + } + + spriteType = { + name = GFX_goal_mor_grapes + texturefile = gfx/interface/goals/MOR/mor_grapes.dds + } + + spriteType = { + name = GFX_goal_mor_ithilien_encroach_landgrab + texturefile = gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds + } + + spriteType = { + name = GFX_goal_mor_meat_back_skulls_knife + texturefile = gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds + } + + spriteType = { + name = GFX_goal_mor_mordor_landscape + texturefile = gfx/interface/goals/MOR/mor_mordor_landscape.dds + } + + spriteType = { + name = GFX_goal_mor_nazgul_ringwraiths + texturefile = gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds + } + + spriteType = { + name = GFX_goal_mor_second_wave + texturefile = gfx/interface/goals/MOR/mor_second_wave.dds + } + + spriteType = { + name = GFX_goal_mor_servant_of_melkor_morgoth + texturefile = gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds + } + + spriteType = { + name = GFX_goal_mor_tower_of_barad_dur + texturefile = gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds + } + + spriteType = { + name = GFX_goal_mor_troll_warriors + texturefile = gfx/interface/goals/MOR/mor_troll_warriors.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_dale + texturefile = gfx/interface/goals/MOR/mor_wargoal_dale.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_dorwinion + texturefile = gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_erebor + texturefile = gfx/interface/goals/MOR/mor_wargoal_erebor.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_gondor + texturefile = gfx/interface/goals/MOR/mor_wargoal_gondor.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_harad + texturefile = gfx/interface/goals/MOR/mor_wargoal_harad.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_rhun + texturefile = gfx/interface/goals/MOR/mor_wargoal_rhun.dds + } + + spriteType = { + name = GFX_goal_mor_wargoal_rohan + texturefile = gfx/interface/goals/MOR/mor_wargoal_rohan.dds + } + + spriteType = { + name = GFX_goal_sauron_eye + texturefile = gfx/interface/goals/MOR/sauron_eye.dds + } + + spriteType = { + name = GFX_goal_skull_treaty + texturefile = gfx/interface/goals/MOR/skull_treaty.dds + } + + spriteType = { + name = GFX_goal_stop_melkor_worship + texturefile = gfx/interface/goals/MOR/stop_melkor_worship.dds + } + + spriteType = { + name = GFX_goal_the_one_ring + texturefile = gfx/interface/goals/MOR/the_one_ring.dds + } + + spriteType = { + name = GFX_goal_union_of_working_orc_class + texturefile = gfx/interface/goals/MOR/union_of_working_orc_class.dds + } + + spriteType = { + name = GFX_goal_unleash_sauron + texturefile = gfx/interface/goals/MOR/unleash_sauron.dds + } + + spriteType = { + name = GFX_goal_rhu_dale_flag + texturefile = gfx/interface/goals/RHU/rhu_dale_flag.dds + } + + spriteType = { + name = GFX_goal_rhu_dorwinion_flag + texturefile = gfx/interface/goals/RHU/rhu_dorwinion_flag.dds + } + + spriteType = { + name = GFX_goal_rhu_nazghul_ringwraith_khamul + texturefile = gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds + } + + spriteType = { + name = GFX_goal_rhu_rhun_civil_war + texturefile = gfx/interface/goals/RHU/rhu_rhun_civil_war.dds + } + + spriteType = { + name = GFX_goal_rhu_the_blue_wizards + texturefile = gfx/interface/goals/RHU/rhu_the_blue_wizards.dds + } + + spriteType = { + name = GFX_goal_rhu_wargoal_mordor + texturefile = gfx/interface/goals/RHU/rhu_wargoal_mordor.dds + } + + spriteType = { + name = GFX_goal_riv_council_of_elrond + texturefile = gfx/interface/goals/RIV/riv_council_of_elrond.dds + } + + spriteType = { + name = GFX_goal_riv_elrond + texturefile = gfx/interface/goals/RIV/riv_elrond.dds + } + + spriteType = { + name = GFX_goal_riv_elrond_ring_vilya + texturefile = gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds + } + + spriteType = { + name = GFX_goal_riv_reforge_blade_of_narsil + texturefile = gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds + } + + spriteType = { + name = GFX_goal_roh_allow_gandalf_into_rohan + texturefile = gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds + } + + spriteType = { + name = GFX_goal_roh_edoras + texturefile = gfx/interface/goals/ROH/roh_edoras.dds + } + + spriteType = { + name = GFX_goal_roh_eomer + texturefile = gfx/interface/goals/ROH/roh_eomer.dds + } + + spriteType = { + name = GFX_goal_roh_eowyn_sorrow + texturefile = gfx/interface/goals/ROH/roh_eowyn_sorrow.dds + } + + spriteType = { + name = GFX_goal_roh_grima_wormtongue + texturefile = gfx/interface/goals/ROH/roh_grima_wormtongue.dds + } + + spriteType = { + name = GFX_goal_roh_helms_deep + texturefile = gfx/interface/goals/ROH/roh_helms_deep.dds + } + + spriteType = { + name = GFX_goal_roh_helms_deep_weakness + texturefile = gfx/interface/goals/ROH/roh_helms_deep_weakness.dds + } + + spriteType = { + name = GFX_goal_roh_rohan_flag + texturefile = gfx/interface/goals/ROH/roh_rohan_flag.dds + } + + spriteType = { + name = GFX_goal_roh_sick_theoden + texturefile = gfx/interface/goals/ROH/roh_sick_theoden.dds + } + + spriteType = { + name = GFX_goal_roh_theodred + texturefile = gfx/interface/goals/ROH/roh_theodred.dds + } + + spriteType = { + name = GFX_goal_roh_trust_gandalf + texturefile = gfx/interface/goals/ROH/roh_trust_gandalf.dds + } + + spriteType = { + name = GFX_goal_roh_trust_saruman + texturefile = gfx/interface/goals/ROH/roh_trust_saruman.dds + } + + spriteType = { + name = GFX_goal_a_land_of_mountains + texturefile = gfx/interface/goals/vanilla/a_land_of_mountains.dds + } + + spriteType = { + name = GFX_goal_focus_research + texturefile = gfx/interface/goals/vanilla/focus_research.dds + } + + spriteType = { + name = GFX_goal_focus_research2 + texturefile = gfx/interface/goals/vanilla/focus_research2.dds + } + + spriteType = { + name = GFX_goal_generic_alcohol_bottles + texturefile = gfx/interface/goals/vanilla/generic_alcohol_bottles.dds + } + + spriteType = { + name = GFX_goal_generic_annex_country + texturefile = gfx/interface/goals/vanilla/generic_annex_country.dds + } + + spriteType = { + name = GFX_goal_generic_annex_country_2 + texturefile = gfx/interface/goals/vanilla/generic_annex_country_2.dds + } + + spriteType = { + name = GFX_goal_generic_anti_revolutionary + texturefile = gfx/interface/goals/vanilla/generic_anti_revolutionary.dds + } + + spriteType = { + name = GFX_goal_generic_aristocracy + texturefile = gfx/interface/goals/vanilla/generic_aristocracy.dds + } + + spriteType = { + name = GFX_goal_generic_arrows + texturefile = gfx/interface/goals/vanilla/generic_arrows.dds + } + + spriteType = { + name = GFX_goal_generic_bird + texturefile = gfx/interface/goals/vanilla/generic_bird.dds + } + + spriteType = { + name = GFX_goal_generic_camel_corps + texturefile = gfx/interface/goals/vanilla/generic_camel_corps.dds + } + + spriteType = { + name = GFX_goal_generic_coastal_fort + texturefile = gfx/interface/goals/vanilla/generic_coastal_fort.dds + } + + spriteType = { + name = GFX_goal_generic_coins_money + texturefile = gfx/interface/goals/vanilla/generic_coins_money.dds + } + + spriteType = { + name = GFX_goal_generic_common_people_peasantry + texturefile = gfx/interface/goals/vanilla/generic_common_people_peasantry.dds + } + + spriteType = { + name = GFX_goal_generic_concessions + texturefile = gfx/interface/goals/vanilla/generic_concessions.dds + } + + spriteType = { + name = GFX_goal_generic_conspiracy_dagger + texturefile = gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds + } + + spriteType = { + name = GFX_goal_generic_crown_smashed + texturefile = gfx/interface/goals/vanilla/generic_crown_smashed.dds + } + + spriteType = { + name = GFX_goal_generic_diplomatic_treaty + texturefile = gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds + } + + spriteType = { + name = GFX_goal_generic_farmland + texturefile = gfx/interface/goals/vanilla/generic_farmland.dds + } + spriteType = { - name = GFX_goal_lth_powers_of_nenya_shine - texturefile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_preemptivemeasures - texturefile = gfx/interface/goals/LTH/lth_preemptivemeasures.dds - } - spriteType = { - name = GFX_goal_lth_preemptivemeasures_shine - texturefile = gfx/interface/goals/LTH/lth_preemptivemeasures.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preemptivemeasures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preemptivemeasures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_preemtptivedepartures - texturefile = gfx/interface/goals/LTH/lth_preemtptivedepartures.dds - } - spriteType = { - name = GFX_goal_lth_preemtptivedepartures_shine - texturefile = gfx/interface/goals/LTH/lth_preemtptivedepartures.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preemtptivedepartures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preemtptivedepartures.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_preservationofknowledge - texturefile = gfx/interface/goals/LTH/lth_preservationofknowledge.dds - } - spriteType = { - name = GFX_goal_lth_preservationofknowledge_shine - texturefile = gfx/interface/goals/LTH/lth_preservationofknowledge.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preservationofknowledge.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_preservationofknowledge.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_pressurethranduil - texturefile = gfx/interface/goals/LTH/lth_pressurethranduil.dds - } - spriteType = { - name = GFX_goal_lth_pressurethranduil_shine - texturefile = gfx/interface/goals/LTH/lth_pressurethranduil.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_pressurethranduil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_pressurethranduil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_princessofthenoldor - texturefile = gfx/interface/goals/LTH/lth_princessofthenoldor.dds - } - spriteType = { - name = GFX_goal_lth_princessofthenoldor_shine - texturefile = gfx/interface/goals/LTH/lth_princessofthenoldor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_princessofthenoldor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_princessofthenoldor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_prisonervivisections - texturefile = gfx/interface/goals/LTH/lth_prisonervivisections.dds - } - spriteType = { - name = GFX_goal_lth_prisonervivisections_shine - texturefile = gfx/interface/goals/LTH/lth_prisonervivisections.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_prisonervivisections.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_prisonervivisections.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_proposalsandresolutions - texturefile = gfx/interface/goals/LTH/lth_proposalsandresolutions.dds - } - spriteType = { - name = GFX_goal_lth_proposalsandresolutions_shine - texturefile = gfx/interface/goals/LTH/lth_proposalsandresolutions.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_proposalsandresolutions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_proposalsandresolutions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_provincialcouncils - texturefile = gfx/interface/goals/LTH/lth_provincialcouncils.dds - } - spriteType = { - name = GFX_goal_lth_provincialcouncils_shine - texturefile = gfx/interface/goals/LTH/lth_provincialcouncils.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_provincialcouncils.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_provincialcouncils.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_publiccelebrations - texturefile = gfx/interface/goals/LTH/lth_publiccelebrations.dds - } - spriteType = { - name = GFX_goal_lth_publiccelebrations_shine - texturefile = gfx/interface/goals/LTH/lth_publiccelebrations.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_publiccelebrations.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_publiccelebrations.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_purityandbrilliance - texturefile = gfx/interface/goals/LTH/lth_purityandbrilliance.dds - } - spriteType = { - name = GFX_goal_lth_purityandbrilliance_shine - texturefile = gfx/interface/goals/LTH/lth_purityandbrilliance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_purityandbrilliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_purityandbrilliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_queenofthedawn - texturefile = gfx/interface/goals/LTH/lth_queenofthedawn.dds - } - spriteType = { - name = GFX_goal_lth_queenofthedawn_shine - texturefile = gfx/interface/goals/LTH/lth_queenofthedawn.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_queenofthedawn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_queenofthedawn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_reassertcelebornslodrship - texturefile = gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds - } - spriteType = { - name = GFX_goal_lth_reassertcelebornslodrship_shine - texturefile = gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reassertcelebornslodrship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_reformmilitaryleadership - texturefile = gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds - } - spriteType = { - name = GFX_goal_lth_reformmilitaryleadership_shine - texturefile = gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reformmilitaryleadership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_reformtaxcollection - texturefile = gfx/interface/goals/LTH/lth_reformtaxcollection.dds - } - spriteType = { - name = GFX_goal_lth_reformtaxcollection_shine - texturefile = gfx/interface/goals/LTH/lth_reformtaxcollection.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reformtaxcollection.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_reformtaxcollection.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_refugeofdoriath - texturefile = gfx/interface/goals/LTH/lth_refugeofdoriath.dds - } - spriteType = { - name = GFX_goal_lth_refugeofdoriath_shine - texturefile = gfx/interface/goals/LTH/lth_refugeofdoriath.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_refugeofdoriath.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_refugeofdoriath.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_requestaseatonelrondscouncil - texturefile = gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds - } - spriteType = { - name = GFX_goal_lth_requestaseatonelrondscouncil_shine - texturefile = gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_requestaseatonelrondscouncil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_researchcooperation - texturefile = gfx/interface/goals/LTH/lth_researchcooperation.dds - } - spriteType = { - name = GFX_goal_lth_researchcooperation_shine - texturefile = gfx/interface/goals/LTH/lth_researchcooperation.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_researchcooperation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_researchcooperation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_resistthedarkness - texturefile = gfx/interface/goals/LTH/lth_resistthedarkness.dds - } - spriteType = { - name = GFX_goal_lth_resistthedarkness_shine - texturefile = gfx/interface/goals/LTH/lth_resistthedarkness.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_resistthedarkness.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_resistthedarkness.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_resourcestorage - texturefile = gfx/interface/goals/LTH/lth_resourcestorage.dds - } - spriteType = { - name = GFX_goal_lth_resourcestorage_shine - texturefile = gfx/interface/goals/LTH/lth_resourcestorage.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_resourcestorage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_resourcestorage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_revivethewhitecouncil - texturefile = gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds - } - spriteType = { - name = GFX_goal_lth_revivethewhitecouncil_shine - texturefile = gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_revivethewhitecouncil.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_ridersofthenaith - texturefile = gfx/interface/goals/LTH/lth_ridersofthenaith.dds - } - spriteType = { - name = GFX_goal_lth_ridersofthenaith_shine - texturefile = gfx/interface/goals/LTH/lth_ridersofthenaith.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ridersofthenaith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ridersofthenaith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_ringenchantments - texturefile = gfx/interface/goals/LTH/lth_ringenchantments.dds - } - spriteType = { - name = GFX_goal_lth_ringenchantments_shine - texturefile = gfx/interface/goals/LTH/lth_ringenchantments.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ringenchantments.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_ringenchantments.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sacredtreesofthenhail - texturefile = gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds - } - spriteType = { - name = GFX_goal_lth_sacredtreesofthenhail_shine - texturefile = gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sacredtreesofthenhail.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_safeguardtheelves - texturefile = gfx/interface/goals/LTH/lth_safeguardtheelves.dds - } - spriteType = { - name = GFX_goal_lth_safeguardtheelves_shine - texturefile = gfx/interface/goals/LTH/lth_safeguardtheelves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_safeguardtheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_safeguardtheelves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_safehaven - texturefile = gfx/interface/goals/LTH/lth_safehaven.dds - } - spriteType = { - name = GFX_goal_lth_safehaven_shine - texturefile = gfx/interface/goals/LTH/lth_safehaven.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_safehaven.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_safehaven.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sealtheborders - texturefile = gfx/interface/goals/LTH/lth_sealtheborders.dds - } - spriteType = { - name = GFX_goal_lth_sealtheborders_shine - texturefile = gfx/interface/goals/LTH/lth_sealtheborders.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sealtheborders.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sealtheborders.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_seizetheonering - texturefile = gfx/interface/goals/LTH/lth_seizetheonering.dds - } - spriteType = { - name = GFX_goal_lth_seizetheonering_shine - texturefile = gfx/interface/goals/LTH/lth_seizetheonering.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_seizetheonering.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_seizetheonering.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_selectiveempowerement - texturefile = gfx/interface/goals/LTH/lth_selectiveempowerement.dds - } - spriteType = { - name = GFX_goal_lth_selectiveempowerement_shine - texturefile = gfx/interface/goals/LTH/lth_selectiveempowerement.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_selectiveempowerement.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_selectiveempowerement.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sendadelegationtoerebor - texturefile = gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds - } - spriteType = { - name = GFX_goal_lth_sendadelegationtoerebor_shine - texturefile = gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendadelegationtoerebor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sendadelegationtogondor - texturefile = gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds - } - spriteType = { - name = GFX_goal_lth_sendadelegationtogondor_shine - texturefile = gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendadelegationtogondor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sendaidtohelmsdeep - texturefile = gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds - } - spriteType = { - name = GFX_goal_lth_sendaidtohelmsdeep_shine - texturefile = gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendaidtohelmsdeep.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sendaidtominastirith - texturefile = gfx/interface/goals/LTH/lth_sendaidtominastirith.dds - } - spriteType = { - name = GFX_goal_lth_sendaidtominastirith_shine - texturefile = gfx/interface/goals/LTH/lth_sendaidtominastirith.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendaidtominastirith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sendaidtominastirith.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_senddelegationtomoria - texturefile = gfx/interface/goals/LTH/lth_senddelegationtomoria.dds - } - spriteType = { - name = GFX_goal_lth_senddelegationtomoria_shine - texturefile = gfx/interface/goals/LTH/lth_senddelegationtomoria.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_senddelegationtomoria.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_senddelegationtomoria.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sentinelsofcerinamroth - texturefile = gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds - } - spriteType = { - name = GFX_goal_lth_sentinelsofcerinamroth_shine - texturefile = gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sentinelsofcerinamroth.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sharedtrainingprograms - texturefile = gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds - } - spriteType = { - name = GFX_goal_lth_sharedtrainingprograms_shine - texturefile = gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sharedtrainingprograms.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_silvanelitewarriors - texturefile = gfx/interface/goals/LTH/lth_silvanelitewarriors.dds - } - spriteType = { - name = GFX_goal_lth_silvanelitewarriors_shine - texturefile = gfx/interface/goals/LTH/lth_silvanelitewarriors.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_silvanelitewarriors.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_silvanelitewarriors.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_silverthornarrows - texturefile = gfx/interface/goals/LTH/lth_silverthornarrows.dds - } - spriteType = { - name = GFX_goal_lth_silverthornarrows_shine - texturefile = gfx/interface/goals/LTH/lth_silverthornarrows.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_silverthornarrows.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_silverthornarrows.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_sindarpathstalkers - texturefile = gfx/interface/goals/LTH/lth_sindarpathstalkers.dds - } - spriteType = { - name = GFX_goal_lth_sindarpathstalkers_shine - texturefile = gfx/interface/goals/LTH/lth_sindarpathstalkers.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sindarpathstalkers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_sindarpathstalkers.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_skysoilandwater - texturefile = gfx/interface/goals/LTH/lth_skysoilandwater.dds - } - spriteType = { - name = GFX_goal_lth_skysoilandwater_shine - texturefile = gfx/interface/goals/LTH/lth_skysoilandwater.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_skysoilandwater.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_skysoilandwater.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_spidersofungoliant - texturefile = gfx/interface/goals/LTH/lth_spidersofungoliant.dds - } - spriteType = { - name = GFX_goal_lth_spidersofungoliant_shine - texturefile = gfx/interface/goals/LTH/lth_spidersofungoliant.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_spidersofungoliant.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_spidersofungoliant.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_standardizedweaponsresearch - texturefile = gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds - } - spriteType = { - name = GFX_goal_lth_standardizedweaponsresearch_shine - texturefile = gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_standardizedweaponsresearch.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_strengthenfortifications - texturefile = gfx/interface/goals/LTH/lth_strengthenfortifications.dds - } - spriteType = { - name = GFX_goal_lth_strengthenfortifications_shine - texturefile = gfx/interface/goals/LTH/lth_strengthenfortifications.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_strengthenfortifications.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_strengthenfortifications.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_supportmordorsenemies - texturefile = gfx/interface/goals/LTH/lth_supportmordorsenemies.dds - } - spriteType = { - name = GFX_goal_lth_supportmordorsenemies_shine - texturefile = gfx/interface/goals/LTH/lth_supportmordorsenemies.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportmordorsenemies.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportmordorsenemies.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_supportofthegreateagles - texturefile = gfx/interface/goals/LTH/lth_supportofthegreateagles.dds - } - spriteType = { - name = GFX_goal_lth_supportofthegreateagles_shine - texturefile = gfx/interface/goals/LTH/lth_supportofthegreateagles.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportofthegreateagles.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportofthegreateagles.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_supportthefellowship - texturefile = gfx/interface/goals/LTH/lth_supportthefellowship.dds - } - spriteType = { - name = GFX_goal_lth_supportthefellowship_shine - texturefile = gfx/interface/goals/LTH/lth_supportthefellowship.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportthefellowship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportthefellowship.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_supportthegreycompany - texturefile = gfx/interface/goals/LTH/lth_supportthegreycompany.dds - } - spriteType = { - name = GFX_goal_lth_supportthegreycompany_shine - texturefile = gfx/interface/goals/LTH/lth_supportthegreycompany.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportthegreycompany.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_supportthegreycompany.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tacklethedwarves - texturefile = gfx/interface/goals/LTH/lth_tacklethedwarves.dds - } - spriteType = { - name = GFX_goal_lth_tacklethedwarves_shine - texturefile = gfx/interface/goals/LTH/lth_tacklethedwarves.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tacklethedwarves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tacklethedwarves.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tackletherealmsofmen - texturefile = gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds - } - spriteType = { - name = GFX_goal_lth_tackletherealmsofmen_shine - texturefile = gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tackletherealmsofmen.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tamingthewild - texturefile = gfx/interface/goals/LTH/lth_tamingthewild.dds - } - spriteType = { - name = GFX_goal_lth_tamingthewild_shine - texturefile = gfx/interface/goals/LTH/lth_tamingthewild.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tamingthewild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tamingthewild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_territorialadministration - texturefile = gfx/interface/goals/LTH/lth_territorialadministration.dds - } - spriteType = { - name = GFX_goal_lth_territorialadministration_shine - texturefile = gfx/interface/goals/LTH/lth_territorialadministration.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialadministration.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialadministration.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_territorialdefense - texturefile = gfx/interface/goals/LTH/lth_territorialdefense.dds - } - spriteType = { - name = GFX_goal_lth_territorialdefense_shine - texturefile = gfx/interface/goals/LTH/lth_territorialdefense.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialdefense.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialdefense.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_territorialintegration - texturefile = gfx/interface/goals/LTH/lth_territorialintegration.dds - } - spriteType = { - name = GFX_goal_lth_territorialintegration_shine - texturefile = gfx/interface/goals/LTH/lth_territorialintegration.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialintegration.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_territorialintegration.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thearchivesofagespast - texturefile = gfx/interface/goals/LTH/lth_thearchivesofagespast.dds - } - spriteType = { - name = GFX_goal_lth_thearchivesofagespast_shine - texturefile = gfx/interface/goals/LTH/lth_thearchivesofagespast.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thearchivesofagespast.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thearchivesofagespast.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theburdensofleadership - texturefile = gfx/interface/goals/LTH/lth_theburdensofleadership.dds - } - spriteType = { - name = GFX_goal_lth_theburdensofleadership_shine - texturefile = gfx/interface/goals/LTH/lth_theburdensofleadership.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theburdensofleadership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theburdensofleadership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thecallofvalinor - texturefile = gfx/interface/goals/LTH/lth_thecallofvalinor.dds - } - spriteType = { - name = GFX_goal_lth_thecallofvalinor_shine - texturefile = gfx/interface/goals/LTH/lth_thecallofvalinor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thecallofvalinor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thecallofvalinor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thechildrenofluthien - texturefile = gfx/interface/goals/LTH/lth_thechildrenofluthien.dds - } - spriteType = { - name = GFX_goal_lth_thechildrenofluthien_shine - texturefile = gfx/interface/goals/LTH/lth_thechildrenofluthien.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thechildrenofluthien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thechildrenofluthien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thecouncilofquendi - texturefile = gfx/interface/goals/LTH/lth_thecouncilofquendi.dds - } - spriteType = { - name = GFX_goal_lth_thecouncilofquendi_shine - texturefile = gfx/interface/goals/LTH/lth_thecouncilofquendi.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thecouncilofquendi.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thecouncilofquendi.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thedissolutionoftheelvennobility - texturefile = gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds - } - spriteType = { - name = GFX_goal_lth_thedissolutionoftheelvennobility_shine - texturefile = gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thedissolutionoftheelvennobility.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theelvenalliance - texturefile = gfx/interface/goals/LTH/lth_theelvenalliance.dds - } - spriteType = { - name = GFX_goal_lth_theelvenalliance_shine - texturefile = gfx/interface/goals/LTH/lth_theelvenalliance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theelvenalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theelvenalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theelvenfleet - texturefile = gfx/interface/goals/LTH/lth_theelvenfleet.dds - } - spriteType = { - name = GFX_goal_lth_theelvenfleet_shine - texturefile = gfx/interface/goals/LTH/lth_theelvenfleet.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theelvenfleet.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theelvenfleet.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theemissariesguild - texturefile = gfx/interface/goals/LTH/lth_theemissariesguild.dds - } - spriteType = { - name = GFX_goal_lth_theemissariesguild_shine - texturefile = gfx/interface/goals/LTH/lth_theemissariesguild.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theemissariesguild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theemissariesguild.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theenigmaofnenya - texturefile = gfx/interface/goals/LTH/lth_theenigmaofnenya.dds - } - spriteType = { - name = GFX_goal_lth_theenigmaofnenya_shine - texturefile = gfx/interface/goals/LTH/lth_theenigmaofnenya.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theenigmaofnenya.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theenigmaofnenya.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theeternaldominion - texturefile = gfx/interface/goals/LTH/lth_theeternaldominion.dds - } - spriteType = { - name = GFX_goal_lth_theeternaldominion_shine - texturefile = gfx/interface/goals/LTH/lth_theeternaldominion.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theeternaldominion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theeternaldominion.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thefateofmortals - texturefile = gfx/interface/goals/LTH/lth_thefateofmortals.dds - } - spriteType = { - name = GFX_goal_lth_thefateofmortals_shine - texturefile = gfx/interface/goals/LTH/lth_thefateofmortals.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefateofmortals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefateofmortals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thefestivalofunity - texturefile = gfx/interface/goals/LTH/lth_thefestivalofunity.dds - } - spriteType = { - name = GFX_goal_lth_thefestivalofunity_shine - texturefile = gfx/interface/goals/LTH/lth_thefestivalofunity.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefestivalofunity.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefestivalofunity.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theforestbetween - texturefile = gfx/interface/goals/LTH/lth_theforestbetween.dds - } - spriteType = { - name = GFX_goal_lth_theforestbetween_shine - texturefile = gfx/interface/goals/LTH/lth_theforestbetween.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theforestbetween.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theforestbetween.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thefortressofdolguldur - texturefile = gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds - } - spriteType = { - name = GFX_goal_lth_thefortressofdolguldur_shine - texturefile = gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thefortressofdolguldur.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thegiftofservitude - texturefile = gfx/interface/goals/LTH/lth_thegiftofservitude.dds - } - spriteType = { - name = GFX_goal_lth_thegiftofservitude_shine - texturefile = gfx/interface/goals/LTH/lth_thegiftofservitude.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegiftofservitude.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegiftofservitude.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thegirdleofmelian - texturefile = gfx/interface/goals/LTH/lth_thegirdleofmelian.dds - } - spriteType = { - name = GFX_goal_lth_thegirdleofmelian_shine - texturefile = gfx/interface/goals/LTH/lth_thegirdleofmelian.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegirdleofmelian.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegirdleofmelian.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thegreatbeasts - texturefile = gfx/interface/goals/LTH/lth_thegreatbeasts.dds - } - spriteType = { - name = GFX_goal_lth_thegreatbeasts_shine - texturefile = gfx/interface/goals/LTH/lth_thegreatbeasts.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegreatbeasts.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegreatbeasts.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thegreatschism - texturefile = gfx/interface/goals/LTH/lth_thegreatschism.dds - } - spriteType = { - name = GFX_goal_lth_thegreatschism_shine - texturefile = gfx/interface/goals/LTH/lth_thegreatschism.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegreatschism.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thegreatschism.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thehiddenrealm - texturefile = gfx/interface/goals/LTH/lth_thehiddenrealm.dds - } - spriteType = { - name = GFX_goal_lth_thehiddenrealm_shine - texturefile = gfx/interface/goals/LTH/lth_thehiddenrealm.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thehiddenrealm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thehiddenrealm.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theinfluenceofrivendell - texturefile = gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds - } - spriteType = { - name = GFX_goal_lth_theinfluenceofrivendell_shine - texturefile = gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theinfluenceofrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thelasteldar - texturefile = gfx/interface/goals/LTH/lth_thelasteldar.dds - } - spriteType = { - name = GFX_goal_lth_thelasteldar_shine - texturefile = gfx/interface/goals/LTH/lth_thelasteldar.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelasteldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelasteldar.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thelaststand - texturefile = gfx/interface/goals/LTH/lth_thelaststand.dds - } - spriteType = { - name = GFX_goal_lth_thelaststand_shine - texturefile = gfx/interface/goals/LTH/lth_thelaststand.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelaststand.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelaststand.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thelibraryofcarasgaladhon - texturefile = gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds - } - spriteType = { - name = GFX_goal_lth_thelibraryofcarasgaladhon_shine - texturefile = gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thelibraryofcarasgaladhon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theminesofmoria - texturefile = gfx/interface/goals/LTH/lth_theminesofmoria.dds - } - spriteType = { - name = GFX_goal_lth_theminesofmoria_shine - texturefile = gfx/interface/goals/LTH/lth_theminesofmoria.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theminesofmoria.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theminesofmoria.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thenandorheritage - texturefile = gfx/interface/goals/LTH/lth_thenandorheritage.dds - } - spriteType = { - name = GFX_goal_lth_thenandorheritage_shine - texturefile = gfx/interface/goals/LTH/lth_thenandorheritage.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thenandorheritage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thenandorheritage.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theneworder - texturefile = gfx/interface/goals/LTH/lth_theneworder.dds - } - spriteType = { - name = GFX_goal_lth_theneworder_shine - texturefile = gfx/interface/goals/LTH/lth_theneworder.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theneworder.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theneworder.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thenoldorelite - texturefile = gfx/interface/goals/LTH/lth_thenoldorelite.dds - } - spriteType = { - name = GFX_goal_lth_thenoldorelite_shine - texturefile = gfx/interface/goals/LTH/lth_thenoldorelite.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thenoldorelite.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thenoldorelite.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theoathoffeanor - texturefile = gfx/interface/goals/LTH/lth_theoathoffeanor.dds - } - spriteType = { - name = GFX_goal_lth_theoathoffeanor_shine - texturefile = gfx/interface/goals/LTH/lth_theoathoffeanor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theoathoffeanor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theoathoffeanor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theonodrimoffangorn - texturefile = gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds - } - spriteType = { - name = GFX_goal_lth_theonodrimoffangorn_shine - texturefile = gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theonodrimoffangorn.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theopendoorsedict - texturefile = gfx/interface/goals/LTH/lth_theopendoorsedict.dds - } - spriteType = { - name = GFX_goal_lth_theopendoorsedict_shine - texturefile = gfx/interface/goals/LTH/lth_theopendoorsedict.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theopendoorsedict.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theopendoorsedict.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theorcrightsdebate - texturefile = gfx/interface/goals/LTH/lth_theorcrightsdebate.dds - } - spriteType = { - name = GFX_goal_lth_theorcrightsdebate_shine - texturefile = gfx/interface/goals/LTH/lth_theorcrightsdebate.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theorcrightsdebate.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theorcrightsdebate.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thepeasantassembly - texturefile = gfx/interface/goals/LTH/lth_thepeasantassembly.dds - } - spriteType = { - name = GFX_goal_lth_thepeasantassembly_shine - texturefile = gfx/interface/goals/LTH/lth_thepeasantassembly.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thepeasantassembly.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thepeasantassembly.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thepriviledgeofmembership - texturefile = gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds - } - spriteType = { - name = GFX_goal_lth_thepriviledgeofmembership_shine - texturefile = gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thepriviledgeofmembership.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thequeensguard - texturefile = gfx/interface/goals/LTH/lth_thequeensguard.dds - } - spriteType = { - name = GFX_goal_lth_thequeensguard_shine - texturefile = gfx/interface/goals/LTH/lth_thequeensguard.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thequeensguard.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thequeensguard.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thereawakening - texturefile = gfx/interface/goals/LTH/lth_thereawakening.dds - } - spriteType = { - name = GFX_goal_lth_thereawakening_shine - texturefile = gfx/interface/goals/LTH/lth_thereawakening.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thereawakening.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thereawakening.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thesentinelnetwork - texturefile = gfx/interface/goals/LTH/lth_thesentinelnetwork.dds - } - spriteType = { - name = GFX_goal_lth_thesentinelnetwork_shine - texturefile = gfx/interface/goals/LTH/lth_thesentinelnetwork.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesentinelnetwork.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesentinelnetwork.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theshadowswhisper - texturefile = gfx/interface/goals/LTH/lth_theshadowswhisper.dds - } - spriteType = { - name = GFX_goal_lth_theshadowswhisper_shine - texturefile = gfx/interface/goals/LTH/lth_theshadowswhisper.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theshadowswhisper.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theshadowswhisper.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thesongofnimrodel - texturefile = gfx/interface/goals/LTH/lth_thesongofnimrodel.dds - } - spriteType = { - name = GFX_goal_lth_thesongofnimrodel_shine - texturefile = gfx/interface/goals/LTH/lth_thesongofnimrodel.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesongofnimrodel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesongofnimrodel.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thesupremeleader - texturefile = gfx/interface/goals/LTH/lth_thesupremeleader.dds - } - spriteType = { - name = GFX_goal_lth_thesupremeleader_shine - texturefile = gfx/interface/goals/LTH/lth_thesupremeleader.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesupremeleader.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thesupremeleader.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thetwilightgarden - texturefile = gfx/interface/goals/LTH/lth_thetwilightgarden.dds - } - spriteType = { - name = GFX_goal_lth_thetwilightgarden_shine - texturefile = gfx/interface/goals/LTH/lth_thetwilightgarden.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thetwilightgarden.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thetwilightgarden.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thetwinheartsoflothlorien - texturefile = gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds - } - spriteType = { - name = GFX_goal_lth_thetwinheartsoflothlorien_shine - texturefile = gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thetwinheartsoflothlorien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theunholyalliance - texturefile = gfx/interface/goals/LTH/lth_theunholyalliance.dds - } - spriteType = { - name = GFX_goal_lth_theunholyalliance_shine - texturefile = gfx/interface/goals/LTH/lth_theunholyalliance.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theunholyalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theunholyalliance.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_theuntreadedpath - texturefile = gfx/interface/goals/LTH/lth_theuntreadedpath.dds - } - spriteType = { - name = GFX_goal_lth_theuntreadedpath_shine - texturefile = gfx/interface/goals/LTH/lth_theuntreadedpath.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theuntreadedpath.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_theuntreadedpath.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_thewizardswisdom - texturefile = gfx/interface/goals/LTH/lth_thewizardswisdom.dds - } - spriteType = { - name = GFX_goal_lth_thewizardswisdom_shine - texturefile = gfx/interface/goals/LTH/lth_thewizardswisdom.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thewizardswisdom.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_thewizardswisdom.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tieswiththerohirrim - texturefile = gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds - } - spriteType = { - name = GFX_goal_lth_tieswiththerohirrim_shine - texturefile = gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tieswiththerohirrim.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_totalisoltation - texturefile = gfx/interface/goals/LTH/lth_totalisoltation.dds - } - spriteType = { - name = GFX_goal_lth_totalisoltation_shine - texturefile = gfx/interface/goals/LTH/lth_totalisoltation.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_totalisoltation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_totalisoltation.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_trackdowndurinsbane - texturefile = gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds - } - spriteType = { - name = GFX_goal_lth_trackdowndurinsbane_shine - texturefile = gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_trackdowndurinsbane.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tradeagreements - texturefile = gfx/interface/goals/LTH/lth_tradeagreements.dds - } - spriteType = { - name = GFX_goal_lth_tradeagreements_shine - texturefile = gfx/interface/goals/LTH/lth_tradeagreements.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tradeagreements.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tradeagreements.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_turnlindon - texturefile = gfx/interface/goals/LTH/lth_turnlindon.dds - } - spriteType = { - name = GFX_goal_lth_turnlindon_shine - texturefile = gfx/interface/goals/LTH/lth_turnlindon.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnlindon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnlindon.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_turnmirkwood - texturefile = gfx/interface/goals/LTH/lth_turnmirkwood.dds - } - spriteType = { - name = GFX_goal_lth_turnmirkwood_shine - texturefile = gfx/interface/goals/LTH/lth_turnmirkwood.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnmirkwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnmirkwood.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_turnrivendell - texturefile = gfx/interface/goals/LTH/lth_turnrivendell.dds - } - spriteType = { - name = GFX_goal_lth_turnrivendell_shine - texturefile = gfx/interface/goals/LTH/lth_turnrivendell.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_turnrivendell.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_tworingsbecomethone - texturefile = gfx/interface/goals/LTH/lth_tworingsbecomethone.dds - } - spriteType = { - name = GFX_goal_lth_tworingsbecomethone_shine - texturefile = gfx/interface/goals/LTH/lth_tworingsbecomethone.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tworingsbecomethone.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_tworingsbecomethone.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_unionofequals - texturefile = gfx/interface/goals/LTH/lth_unionofequals.dds - } - spriteType = { - name = GFX_goal_lth_unionofequals_shine - texturefile = gfx/interface/goals/LTH/lth_unionofequals.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unionofequals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unionofequals.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_unitethecause - texturefile = gfx/interface/goals/LTH/lth_unitethecause.dds - } - spriteType = { - name = GFX_goal_lth_unitethecause_shine - texturefile = gfx/interface/goals/LTH/lth_unitethecause.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unitethecause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unitethecause.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_unitethefactions - texturefile = gfx/interface/goals/LTH/lth_unitethefactions.dds - } - spriteType = { - name = GFX_goal_lth_unitethefactions_shine - texturefile = gfx/interface/goals/LTH/lth_unitethefactions.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unitethefactions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unitethefactions.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_unityindivision - texturefile = gfx/interface/goals/LTH/lth_unityindivision.dds - } - spriteType = { - name = GFX_goal_lth_unityindivision_shine - texturefile = gfx/interface/goals/LTH/lth_unityindivision.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unityindivision.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unityindivision.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_unlikelyallies - texturefile = gfx/interface/goals/LTH/lth_unlikelyallies.dds - } - spriteType = { - name = GFX_goal_lth_unlikelyallies_shine - texturefile = gfx/interface/goals/LTH/lth_unlikelyallies.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unlikelyallies.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_unlikelyallies.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_urbancouncils - texturefile = gfx/interface/goals/LTH/lth_urbancouncils.dds - } - spriteType = { - name = GFX_goal_lth_urbancouncils_shine - texturefile = gfx/interface/goals/LTH/lth_urbancouncils.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_urbancouncils.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_urbancouncils.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_valesofanduin - texturefile = gfx/interface/goals/LTH/lth_valesofanduin.dds - } - spriteType = { - name = GFX_goal_lth_valesofanduin_shine - texturefile = gfx/interface/goals/LTH/lth_valesofanduin.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_valesofanduin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_valesofanduin.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_wanderersofnandor - texturefile = gfx/interface/goals/LTH/lth_wanderersofnandor.dds - } - spriteType = { - name = GFX_goal_lth_wanderersofnandor_shine - texturefile = gfx/interface/goals/LTH/lth_wanderersofnandor.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wanderersofnandor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wanderersofnandor.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_watersofhealing - texturefile = gfx/interface/goals/LTH/lth_watersofhealing.dds - } - spriteType = { - name = GFX_goal_lth_watersofhealing_shine - texturefile = gfx/interface/goals/LTH/lth_watersofhealing.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_watersofhealing.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_watersofhealing.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_wisdomofeluthingol - texturefile = gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds - } - spriteType = { - name = GFX_goal_lth_wisdomofeluthingol_shine - texturefile = gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wisdomofeluthingol.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_wrathoftheforests - texturefile = gfx/interface/goals/LTH/lth_wrathoftheforests.dds - } - spriteType = { - name = GFX_goal_lth_wrathoftheforests_shine - texturefile = gfx/interface/goals/LTH/lth_wrathoftheforests.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wrathoftheforests.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_wrathoftheforests.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_lth_yavannasblessings - texturefile = gfx/interface/goals/LTH/lth_yavannasblessings.dds - } - spriteType = { - name = GFX_goal_lth_yavannasblessings_shine - texturefile = gfx/interface/goals/LTH/lth_yavannasblessings.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_yavannasblessings.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/LTH/lth_yavannasblessings.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } - - spriteType = { - name = GFX_goal_GFX_goal_skull_treaty - texturefile = gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds - } - spriteType = { - name = GFX_goal_GFX_goal_skull_treaty_shine - texturefile = gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/MOR/GFX_goal_skull_treaty.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no + name = GFX_goal_generic_fight_beasts + texturefile = gfx/interface/goals/vanilla/generic_fight_beasts.dds } spriteType = { - name = GFX_goal_mor_encroach_on_ithilien - texturefile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds + name = GFX_goal_generic_fishermen + texturefile = gfx/interface/goals/vanilla/generic_fishermen.dds } + spriteType = { - name = GFX_goal_mor_encroach_on_ithilien_shine - texturefile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no + name = GFX_goal_generic_flooding + texturefile = gfx/interface/goals/vanilla/generic_flooding.dds } spriteType = { - name = GFX_goal_mor_escalate_the_attacks - texturefile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds + name = GFX_goal_generic_gold_money + texturefile = gfx/interface/goals/vanilla/generic_gold_money.dds } + spriteType = { - name = GFX_goal_mor_escalate_the_attacks_shine - texturefile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no + name = GFX_goal_generic_gold_standard + texturefile = gfx/interface/goals/vanilla/generic_gold_standard.dds } spriteType = { - name = GFX_goal_mor_second_wave - texturefile = gfx/interface/goals/MOR/mor_second_wave.dds + name = GFX_goal_generic_guild + texturefile = gfx/interface/goals/vanilla/generic_guild.dds } + spriteType = { - name = GFX_goal_mor_second_wave_shine - texturefile = gfx/interface/goals/MOR/mor_second_wave.dds - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_second_wave.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = gfx/interface/goals/MOR/mor_second_wave.dds - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no + name = GFX_goal_generic_home_defense + texturefile = gfx/interface/goals/vanilla/generic_home_defense.dds + } + + spriteType = { + name = GFX_goal_generic_horse_studs + texturefile = gfx/interface/goals/vanilla/generic_horse_studs.dds + } + + spriteType = { + name = GFX_goal_generic_improve_the_administration + texturefile = gfx/interface/goals/vanilla/generic_improve_the_administration.dds + } + + spriteType = { + name = GFX_goal_generic_industry_merge + texturefile = gfx/interface/goals/vanilla/generic_industry_merge.dds + } + + spriteType = { + name = GFX_goal_generic_jaeger_emblem + texturefile = gfx/interface/goals/vanilla/generic_jaeger_emblem.dds + } + + spriteType = { + name = GFX_goal_generic_knock_over_flag + texturefile = gfx/interface/goals/vanilla/generic_knock_over_flag.dds + } + + spriteType = { + name = GFX_goal_generic_land_reclamation_resource_extraction + texturefile = gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds + } + + spriteType = { + name = GFX_goal_generic_large_knife + texturefile = gfx/interface/goals/vanilla/generic_large_knife.dds + } + + spriteType = { + name = GFX_goal_generic_levy + texturefile = gfx/interface/goals/vanilla/generic_levy.dds + } + + spriteType = { + name = GFX_goal_generic_lion + texturefile = gfx/interface/goals/vanilla/generic_lion.dds + } + + spriteType = { + name = GFX_goal_generic_love_natrue + texturefile = gfx/interface/goals/vanilla/generic_love_natrue.dds + } + + spriteType = { + name = GFX_goal_generic_medicine + texturefile = gfx/interface/goals/vanilla/generic_medicine.dds + } + + spriteType = { + name = GFX_goal_generic_men_at_arms + texturefile = gfx/interface/goals/vanilla/generic_men_at_arms.dds + } + + spriteType = { + name = GFX_goal_generic_mining_industry + texturefile = gfx/interface/goals/vanilla/generic_mining_industry.dds + } + + spriteType = { + name = GFX_goal_generic_monarchy_1 + texturefile = gfx/interface/goals/vanilla/generic_monarchy_1.dds + } + + spriteType = { + name = GFX_goal_generic_monarchy_2 + texturefile = gfx/interface/goals/vanilla/generic_monarchy_2.dds + } + + spriteType = { + name = GFX_goal_generic_nature_trees + texturefile = gfx/interface/goals/vanilla/generic_nature_trees.dds + } + + spriteType = { + name = GFX_goal_generic_naval_crown_2 + texturefile = gfx/interface/goals/vanilla/generic_naval_crown_2.dds + } + + spriteType = { + name = GFX_goal_generic_naval_emblem + texturefile = gfx/interface/goals/vanilla/generic_naval_emblem.dds + } + + spriteType = { + name = GFX_goal_generic_naval_emblem_crown + texturefile = gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds + } + + spriteType = { + name = GFX_goal_generic_naval_war_crown + texturefile = gfx/interface/goals/vanilla/generic_naval_war_crown.dds + } + + spriteType = { + name = GFX_goal_generic_peace_dove + texturefile = gfx/interface/goals/vanilla/generic_peace_dove.dds + } + + spriteType = { + name = GFX_goal_generic_peasantry_welfare + texturefile = gfx/interface/goals/vanilla/generic_peasantry_welfare.dds + } + + spriteType = { + name = GFX_goal_generic_population_growth + texturefile = gfx/interface/goals/vanilla/generic_population_growth.dds + } + + spriteType = { + name = GFX_goal_generic_prisoner_king_crown + texturefile = gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds + } + + spriteType = { + name = GFX_goal_generic_provoke_border_clashes + texturefile = gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds + } + + spriteType = { + name = GFX_goal_generic_revolutionary_chains + texturefile = gfx/interface/goals/vanilla/generic_revolutionary_chains.dds + } + + spriteType = { + name = GFX_goal_generic_royal_wedding + texturefile = gfx/interface/goals/vanilla/generic_royal_wedding.dds + } + + spriteType = { + name = GFX_goal_generic_rural_trade_farming + texturefile = gfx/interface/goals/vanilla/generic_rural_trade_farming.dds + } + + spriteType = { + name = GFX_goal_generic_sabres + texturefile = gfx/interface/goals/vanilla/generic_sabres.dds + } + + spriteType = { + name = GFX_goal_generic_self_management + texturefile = gfx/interface/goals/vanilla/generic_self_management.dds + } + + spriteType = { + name = GFX_goal_generic_skull_death_nor_dishonor + texturefile = gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds + } + + spriteType = { + name = GFX_goal_generic_spear_and_sabre + texturefile = gfx/interface/goals/vanilla/generic_spear_and_sabre.dds + } + + spriteType = { + name = GFX_goal_generic_special_forces + texturefile = gfx/interface/goals/vanilla/generic_special_forces.dds + } + + spriteType = { + name = GFX_goal_generic_spy_agency_eye + texturefile = gfx/interface/goals/vanilla/generic_spy_agency_eye.dds + } + + spriteType = { + name = GFX_goal_generic_strike_at_democracy1 + texturefile = gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds + } + + spriteType = { + name = GFX_goal_generic_submission_puppet + texturefile = gfx/interface/goals/vanilla/generic_submission_puppet.dds + } + + spriteType = { + name = GFX_goal_generic_support_crown + texturefile = gfx/interface/goals/vanilla/generic_support_crown.dds + } + + spriteType = { + name = GFX_goal_generic_suppression_oppression + texturefile = gfx/interface/goals/vanilla/generic_suppression_oppression.dds + } + + spriteType = { + name = GFX_goal_generic_torchbearer + texturefile = gfx/interface/goals/vanilla/generic_torchbearer.dds + } + + spriteType = { + name = GFX_goal_generic_trade_devalue_currency + texturefile = gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds + } + + spriteType = { + name = GFX_goal_generic_treaty + texturefile = gfx/interface/goals/vanilla/generic_treaty.dds + } + + spriteType = { + name = GFX_goal_generic_treaty_torn + texturefile = gfx/interface/goals/vanilla/generic_treaty_torn.dds + } + + spriteType = { + name = GFX_goal_generic_unknown + texturefile = gfx/interface/goals/vanilla/generic_unknown.dds + } + + spriteType = { + name = GFX_goal_generic_urban_city + texturefile = gfx/interface/goals/vanilla/generic_urban_city.dds + } + + spriteType = { + name = GFX_goal_generic_voting_ballot_locked + texturefile = gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds + } + + spriteType = { + name = GFX_goal_generic_workers_and_farmers_rise_peasantry + texturefile = gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds + } + + spriteType = { + name = GFX_goal_goal_anschluss + texturefile = gfx/interface/goals/vanilla/goal_anschluss.dds + } + + spriteType = { + name = GFX_goal_goal_demand_sudetenland + texturefile = gfx/interface/goals/vanilla/goal_demand_sudetenland.dds + } + + spriteType = { + name = GFX_goal_goal_generic_air_doctrine + texturefile = gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds + } + + spriteType = { + name = GFX_goal_goal_generic_alliance + texturefile = gfx/interface/goals/vanilla/goal_generic_alliance.dds + } + + spriteType = { + name = GFX_goal_goal_generic_army_doctrines + texturefile = gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds + } + + spriteType = { + name = GFX_goal_goal_generic_attack_allies + texturefile = gfx/interface/goals/vanilla/goal_generic_attack_allies.dds + } + + spriteType = { + name = GFX_goal_goal_generic_CAS + texturefile = gfx/interface/goals/vanilla/goal_generic_CAS.dds + } + + spriteType = { + name = GFX_goal_goal_generic_cavalry + texturefile = gfx/interface/goals/vanilla/goal_generic_cavalry.dds + } + + spriteType = { + name = GFX_goal_goal_generic_dangerous_deal + texturefile = gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds + } + + spriteType = { + name = GFX_goal_goal_generic_defence + texturefile = gfx/interface/goals/vanilla/goal_generic_defence.dds + } + + spriteType = { + name = GFX_goal_goal_generic_demand_territory + texturefile = gfx/interface/goals/vanilla/goal_generic_demand_territory.dds + } + + spriteType = { + name = GFX_goal_goal_generic_forceful_treaty + texturefile = gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds + } + + spriteType = { + name = GFX_goal_goal_generic_improve_relations + texturefile = gfx/interface/goals/vanilla/goal_generic_improve_relations.dds + } + + spriteType = { + name = GFX_goal_goal_generic_major_alliance + texturefile = gfx/interface/goals/vanilla/goal_generic_major_alliance.dds + } + + spriteType = { + name = GFX_goal_goal_generic_major_war + texturefile = gfx/interface/goals/vanilla/goal_generic_major_war.dds + } + + spriteType = { + name = GFX_goal_goal_generic_military_deal + texturefile = gfx/interface/goals/vanilla/goal_generic_military_deal.dds + } + + spriteType = { + name = GFX_goal_goal_generic_more_territorial_claims + texturefile = gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds + } + + spriteType = { + name = GFX_goal_goal_generic_national_unity + texturefile = gfx/interface/goals/vanilla/goal_generic_national_unity.dds + } + + spriteType = { + name = GFX_goal_goal_generic_navy_doctrines_tactics + texturefile = gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds + } + + spriteType = { + name = GFX_goal_goal_generic_neutrality_focus + texturefile = gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds + } + + spriteType = { + name = GFX_goal_goal_generic_occypy_states_coastal + texturefile = gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds + } + + spriteType = { + name = GFX_goal_goal_generic_occypy_states_ongoing_war + texturefile = gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds + } + + spriteType = { + name = GFX_goal_goal_generic_political_pressure + texturefile = gfx/interface/goals/vanilla/goal_generic_political_pressure.dds + } + + spriteType = { + name = GFX_goal_goal_generic_position_armies + texturefile = gfx/interface/goals/vanilla/goal_generic_position_armies.dds + } + + spriteType = { + name = GFX_goal_goal_generic_positive_trade_relations + texturefile = gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds + } + + spriteType = { + name = GFX_goal_goal_generic_scientific_exchange + texturefile = gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds + } + + spriteType = { + name = GFX_goal_goal_generic_secret_weapon + texturefile = gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds + } + + spriteType = { + name = GFX_goal_goal_generic_territory_or_war + texturefile = gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds + } + + spriteType = { + name = GFX_goal_goal_generic_trade + texturefile = gfx/interface/goals/vanilla/goal_generic_trade.dds + } + + spriteType = { + name = GFX_goal_goal_molotov_ribbentrop_pact + texturefile = gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds + } + + spriteType = { + name = GFX_goal_goal_tfv_generic_tech_sharing + texturefile = gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds + } + + spriteType = { + name = GFX_goal_goal_tfv_strengthen_commonwealth_ties + texturefile = gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds + } + + spriteType = { + name = GFX_goal_goal_tripartite_pact + texturefile = gfx/interface/goals/vanilla/goal_tripartite_pact.dds + } + + spriteType = { + name = GFX_goal_support_the_left_right + texturefile = gfx/interface/goals/vanilla/support_the_left_right.dds } } diff --git a/interface/auto_generated/newseventpictures.gfx b/interface/auto_generated/lotr_newsevents.gfx similarity index 76% rename from interface/auto_generated/newseventpictures.gfx rename to interface/auto_generated/lotr_newsevents.gfx index 982c7a619..eb8768dd9 100644 --- a/interface/auto_generated/newseventpictures.gfx +++ b/interface/auto_generated/lotr_newsevents.gfx @@ -1,24 +1,19 @@ spriteTypes = { # This file was auto-generated by the GFX-Maker.py - spriteType = { name = "GFX_news_event_3rd_breakfast" texturefile = "gfx/event_pictures/news_events/news_event_3rd_breakfast.dds" } spriteType = { name = "GFX_news_event_angmar" texturefile = "gfx/event_pictures/news_events/news_event_angmar.dds" } + spriteType = { name = "GFX_news_event_angmar_carn_dum" texturefile = "gfx/event_pictures/news_events/news_event_angmar_carn_dum.dds" } spriteType = { name = "GFX_news_event_balrog" texturefile = "gfx/event_pictures/news_events/news_event_balrog.dds" } spriteType = { name = "GFX_news_event_bilbo" texturefile = "gfx/event_pictures/news_events/news_event_bilbo.dds" } spriteType = { name = "GFX_news_event_boromir_dead" texturefile = "gfx/event_pictures/news_events/news_event_boromir_dead.dds" } - spriteType = { name = "GFX_news_event_carn_dum" texturefile = "gfx/event_pictures/news_events/news_event_carn_dum.dds" } spriteType = { name = "GFX_news_event_celeborn" texturefile = "gfx/event_pictures/news_events/news_event_celeborn.dds" } - spriteType = { name = "GFX_news_event_coronation" texturefile = "gfx/event_pictures/news_events/news_event_coronation.dds" } - spriteType = { name = "GFX_news_event_council" texturefile = "gfx/event_pictures/news_events/news_event_council.dds" } - spriteType = { name = "GFX_news_event_dagorlad" texturefile = "gfx/event_pictures/news_events/news_event_dagorlad.dds" } - spriteType = { name = "GFX_news_event_dead_army" texturefile = "gfx/event_pictures/news_events/news_event_dead_army.dds" } - spriteType = { name = "GFX_news_event_denethor_suicide" texturefile = "gfx/event_pictures/news_events/news_event_denethor_suicide.dds" } + spriteType = { name = "GFX_news_event_council_of_elrond" texturefile = "gfx/event_pictures/news_events/news_event_council_of_elrond.dds" } + spriteType = { name = "GFX_news_event_dagorlad_nazgul" texturefile = "gfx/event_pictures/news_events/news_event_dagorlad_nazgul.dds" } spriteType = { name = "GFX_news_event_diplomacy" texturefile = "gfx/event_pictures/news_events/news_event_diplomacy.dds" } spriteType = { name = "GFX_news_event_dolguldur" texturefile = "gfx/event_pictures/news_events/news_event_dolguldur.dds" } spriteType = { name = "GFX_news_event_dwarves" texturefile = "gfx/event_pictures/news_events/news_event_dwarves.dds" } spriteType = { name = "GFX_news_event_elrond" texturefile = "gfx/event_pictures/news_events/news_event_elrond.dds" } spriteType = { name = "GFX_news_event_enedwaith_saruman" texturefile = "gfx/event_pictures/news_events/news_event_enedwaith_saruman.dds" } spriteType = { name = "GFX_news_event_ents" texturefile = "gfx/event_pictures/news_events/news_event_ents.dds" } - spriteType = { name = "GFX_news_event_eye" texturefile = "gfx/event_pictures/news_events/news_event_eye.dds" } spriteType = { name = "GFX_news_event_faramir_dead" texturefile = "gfx/event_pictures/news_events/news_event_faramir_dead.dds" } spriteType = { name = "GFX_news_event_fs_000" texturefile = "gfx/event_pictures/news_events/news_event_fs_000.dds" } spriteType = { name = "GFX_news_event_fs_001" texturefile = "gfx/event_pictures/news_events/news_event_fs_001.dds" } @@ -50,33 +45,38 @@ spriteTypes = { spriteType = { name = "GFX_news_event_gandalf_saruman_alliance" texturefile = "gfx/event_pictures/news_events/news_event_gandalf_saruman_alliance.dds" } spriteType = { name = "GFX_news_event_gandalf_saruman_fight" texturefile = "gfx/event_pictures/news_events/news_event_gandalf_saruman_fight.dds" } spriteType = { name = "GFX_news_event_gondor_army" texturefile = "gfx/event_pictures/news_events/news_event_gondor_army.dds" } - spriteType = { name = "GFX_news_event_grima_eowyn_marriage" texturefile = "gfx/event_pictures/news_events/news_event_grima_eowyn_marriage.dds" } - spriteType = { name = "GFX_news_event_grima_exiled" texturefile = "gfx/event_pictures/news_events/news_event_grima_exiled.dds" } + spriteType = { name = "GFX_news_event_gondor_coronation" texturefile = "gfx/event_pictures/news_events/news_event_gondor_coronation.dds" } + spriteType = { name = "GFX_news_event_gon_dead_army" texturefile = "gfx/event_pictures/news_events/news_event_gon_dead_army.dds" } + spriteType = { name = "GFX_news_event_gon_denethor_suicide" texturefile = "gfx/event_pictures/news_events/news_event_gon_denethor_suicide.dds" } spriteType = { name = "GFX_news_event_harad" texturefile = "gfx/event_pictures/news_events/news_event_harad.dds" } spriteType = { name = "GFX_news_event_harad_war" texturefile = "gfx/event_pictures/news_events/news_event_harad_war.dds" } - spriteType = { name = "GFX_news_event_helmsdeep_breached" texturefile = "gfx/event_pictures/news_events/news_event_helmsdeep_breached.dds" } + spriteType = { name = "GFX_news_event_hobbit_party" texturefile = "gfx/event_pictures/news_events/news_event_hobbit_party.dds" } spriteType = { name = "GFX_news_event_major_death" texturefile = "gfx/event_pictures/news_events/news_event_major_death.dds" } - spriteType = { name = "GFX_news_event_mirkwood" texturefile = "gfx/event_pictures/news_events/news_event_mirkwood.dds" } + spriteType = { name = "GFX_news_event_mirkwood_army" texturefile = "gfx/event_pictures/news_events/news_event_mirkwood_army.dds" } spriteType = { name = "GFX_news_event_moria_overrun" texturefile = "gfx/event_pictures/news_events/news_event_moria_overrun.dds" } spriteType = { name = "GFX_news_event_rangers" texturefile = "gfx/event_pictures/news_events/news_event_rangers.dds" } spriteType = { name = "GFX_news_event_redhorn_storm" texturefile = "gfx/event_pictures/news_events/news_event_redhorn_storm.dds" } - spriteType = { name = "GFX_news_event_rhun" texturefile = "gfx/event_pictures/news_events/news_event_rhun.dds" } + spriteType = { name = "GFX_news_event_rhun_army" texturefile = "gfx/event_pictures/news_events/news_event_rhun_army.dds" } spriteType = { name = "GFX_news_event_ring_boromir" texturefile = "gfx/event_pictures/news_events/news_event_ring_boromir.dds" } spriteType = { name = "GFX_news_event_ring_destroyed" texturefile = "gfx/event_pictures/news_events/news_event_ring_destroyed.dds" } spriteType = { name = "GFX_news_event_ring_isengard" texturefile = "gfx/event_pictures/news_events/news_event_ring_isengard.dds" } spriteType = { name = "GFX_news_event_ring_lorien_intercept" texturefile = "gfx/event_pictures/news_events/news_event_ring_lorien_intercept.dds" } spriteType = { name = "GFX_news_event_ring_lorien_take" texturefile = "gfx/event_pictures/news_events/news_event_ring_lorien_take.dds" } spriteType = { name = "GFX_news_event_ring_shire" texturefile = "gfx/event_pictures/news_events/news_event_ring_shire.dds" } + spriteType = { name = "GFX_news_event_roh_grima_eowyn_marriage" texturefile = "gfx/event_pictures/news_events/news_event_roh_grima_eowyn_marriage.dds" } + spriteType = { name = "GFX_news_event_roh_grima_exiled" texturefile = "gfx/event_pictures/news_events/news_event_roh_grima_exiled.dds" } + spriteType = { name = "GFX_news_event_roh_helmsdeep_breached" texturefile = "gfx/event_pictures/news_events/news_event_roh_helmsdeep_breached.dds" } + spriteType = { name = "GFX_news_event_roh_theoden_dead" texturefile = "gfx/event_pictures/news_events/news_event_roh_theoden_dead.dds" } + spriteType = { name = "GFX_news_event_roh_theoden_ill" texturefile = "gfx/event_pictures/news_events/news_event_roh_theoden_ill.dds" } + spriteType = { name = "GFX_news_event_roh_theodred_dead" texturefile = "gfx/event_pictures/news_events/news_event_roh_theodred_dead.dds" } spriteType = { name = "GFX_news_event_sailaway" texturefile = "gfx/event_pictures/news_events/news_event_sailaway.dds" } spriteType = { name = "GFX_news_event_saruman" texturefile = "gfx/event_pictures/news_events/news_event_saruman.dds" } spriteType = { name = "GFX_news_event_sauron" texturefile = "gfx/event_pictures/news_events/news_event_sauron.dds" } + spriteType = { name = "GFX_news_event_sauron_eye" texturefile = "gfx/event_pictures/news_events/news_event_sauron_eye.dds" } spriteType = { name = "GFX_news_event_ships" texturefile = "gfx/event_pictures/news_events/news_event_ships.dds" } spriteType = { name = "GFX_news_event_shire" texturefile = "gfx/event_pictures/news_events/news_event_shire.dds" } spriteType = { name = "GFX_news_event_spiders" texturefile = "gfx/event_pictures/news_events/news_event_spiders.dds" } spriteType = { name = "GFX_news_event_surrender" texturefile = "gfx/event_pictures/news_events/news_event_surrender.dds" } - spriteType = { name = "GFX_news_event_theoden_dead" texturefile = "gfx/event_pictures/news_events/news_event_theoden_dead.dds" } - spriteType = { name = "GFX_news_event_theoden_ill" texturefile = "gfx/event_pictures/news_events/news_event_theoden_ill.dds" } - spriteType = { name = "GFX_news_event_theodred" texturefile = "gfx/event_pictures/news_events/news_event_theodred.dds" } spriteType = { name = "GFX_news_event_uprising" texturefile = "gfx/event_pictures/news_events/news_event_uprising.dds" } - spriteType = { name = "GFX_news_event_witch" texturefile = "gfx/event_pictures/news_events/news_event_witch.dds" } + spriteType = { name = "GFX_news_event_witch_king_angmar" texturefile = "gfx/event_pictures/news_events/news_event_witch_king_angmar.dds" } } diff --git a/interface/auto_generated/lotr_shines.gfx b/interface/auto_generated/lotr_shines.gfx new file mode 100644 index 000000000..59d6c819f --- /dev/null +++ b/interface/auto_generated/lotr_shines.gfx @@ -0,0 +1,14604 @@ +spriteTypes = { + # This file was auto-generated by the GFX-Maker.py + spriteType = { + name = GFX_goal_angmar_unaligned_shine + texturefile = gfx/interface/goals/ANG/angmar_unaligned.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ANG/angmar_unaligned.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ANG/angmar_unaligned.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mordor_deal_shine + texturefile = gfx/interface/goals/ANG/mordor_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ANG/mordor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ANG/mordor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mordor_flag_shine + texturefile = gfx/interface/goals/ANG/mordor_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ANG/mordor_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ANG/mordor_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_witch_king_shine + texturefile = gfx/interface/goals/ANG/witch_king.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ANG/witch_king.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ANG/witch_king.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_arnor_unite_by_force_shine + texturefile = gfx/interface/goals/ART/arnor_unite_by_force.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ART/arnor_unite_by_force.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ART/arnor_unite_by_force.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rangers_of_the_north_shine + texturefile = gfx/interface/goals/ART/rangers_of_the_north.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ART/rangers_of_the_north.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ART/rangers_of_the_north.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_entwood_ent_council_shine + texturefile = gfx/interface/goals/ENT/entwood_ent_council.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_ent_council.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_ent_council.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_entwood_flag_shine + texturefile = gfx/interface/goals/ENT/entwood_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_entwood_forest_nature_shine + texturefile = gfx/interface/goals/ENT/entwood_forest_nature.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_forest_nature.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_forest_nature.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_entwood_treebeard_shine + texturefile = gfx/interface/goals/ENT/entwood_treebeard.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_treebeard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ENT/entwood_treebeard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_ent_throwing_rock_shine + texturefile = gfx/interface/goals/ENT/ent_throwing_rock.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ENT/ent_throwing_rock.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ENT/ent_throwing_rock.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_dwarves_soldiers_army_shine + texturefile = gfx/interface/goals/ERE/dwarves_soldiers_army.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ERE/dwarves_soldiers_army.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ERE/dwarves_soldiers_army.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_anvil_shine + texturefile = gfx/interface/goals/Generic/generic_anvil.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_anvil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_anvil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_gondor_research_shine + texturefile = gfx/interface/goals/Generic/generic_gondor_research.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_gondor_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_gondor_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_industry_I_shine + texturefile = gfx/interface/goals/Generic/generic_industry_I.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_industry_I.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_industry_I.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_windmill_shine + texturefile = gfx/interface/goals/Generic/generic_windmill.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_windmill.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/generic_windmill.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_resource_wood_shine + texturefile = gfx/interface/goals/Generic/resource_wood.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/resource_wood.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/resource_wood.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_support_belligerent_shine + texturefile = gfx/interface/goals/Generic/support_belligerent.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_belligerent.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_belligerent.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_support_cooperative_shine + texturefile = gfx/interface/goals/Generic/support_cooperative.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_cooperative.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_cooperative.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_support_revolutionary_shine + texturefile = gfx/interface/goals/Generic/support_revolutionary.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_revolutionary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_revolutionary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_support_unaligned_shine + texturefile = gfx/interface/goals/Generic/support_unaligned.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_unaligned.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/Generic/support_unaligned.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_arnor_shine + texturefile = gfx/interface/goals/GON/arnor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/arnor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/arnor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_shine + texturefile = gfx/interface/goals/GON/gondor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_army_of_the_dead_ghosts_shine + texturefile = gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_army_of_the_dead_ghosts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_boromir_shine + texturefile = gfx/interface/goals/GON/gondor_boromir.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_boromir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_boromir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_denethor_shine + texturefile = gfx/interface/goals/GON/gondor_denethor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_denethor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_denethor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_dol_amroth_flag_shine + texturefile = gfx/interface/goals/GON/gondor_dol_amroth_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_dol_amroth_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_dol_amroth_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_dol_amroth_propaganda_shine + texturefile = gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_dol_amroth_propaganda.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_faramir_shine + texturefile = gfx/interface/goals/GON/gondor_faramir.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_faramir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_faramir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_king_aragorn_shine + texturefile = gfx/interface/goals/GON/gondor_king_aragorn.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_king_aragorn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_king_aragorn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gondor_light_the_beacons_shine + texturefile = gfx/interface/goals/GON/gondor_light_the_beacons.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_light_the_beacons.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gondor_light_the_beacons.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_ensure_popular_support_peasant_farmer_shine + texturefile = gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ensure_popular_support_peasant_farmer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_faramir_eowyn_wedding_shine + texturefile = gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_faramir_eowyn_wedding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_gondor_angmar_deal_shine + texturefile = gfx/interface/goals/GON/gon_gondor_angmar_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_angmar_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_angmar_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_gondor_enedwaith_deal_shine + texturefile = gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_enedwaith_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_gondor_flag_with_denethor_portrait_shine + texturefile = gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_flag_with_denethor_portrait.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_gondor_lothlorien_deal_shine + texturefile = gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_lothlorien_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_gondor_needs_no_king_crown_broken_shine + texturefile = gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_gondor_needs_no_king_crown_broken.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_isildur_crown_defamed_shine + texturefile = gfx/interface/goals/GON/gon_isildur_crown_defamed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_isildur_crown_defamed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_isildur_crown_defamed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_isildur_crown_with_map_shine + texturefile = gfx/interface/goals/GON/gon_isildur_crown_with_map.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_isildur_crown_with_map.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_isildur_crown_with_map.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_ithilien_crisis_white_tree_on_fire_shine + texturefile = gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_crisis_white_tree_on_fire.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_ithilien_defensive_planning_shine + texturefile = gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_defensive_planning.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_ithilien_soldier_of_gondor_shield_shine + texturefile = gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_ithilien_soldier_of_gondor_shield.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_orc_contained_ithilien_measures_shine + texturefile = gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_orc_contained_ithilien_measures.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_pitchfork_and_torch_revolt_shine + texturefile = gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_pitchfork_and_torch_revolt.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gon_the_peoples_fleet_ship_shine + texturefile = gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GON/gon_the_peoples_fleet_ship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_gundabad_flag_shine + texturefile = gfx/interface/goals/GUN/gundabad_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/GUN/gundabad_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/GUN/gundabad_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_army_uruk_hai_shine + texturefile = gfx/interface/goals/ISE/army_uruk_hai.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/army_uruk_hai.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/army_uruk_hai.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_burn_fangorn_forest_shine + texturefile = gfx/interface/goals/ISE/burn_fangorn_forest.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/burn_fangorn_forest.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/burn_fangorn_forest.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_imprisend_gandalf_shine + texturefile = gfx/interface/goals/ISE/imprisend_gandalf.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/imprisend_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/imprisend_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_ise_palantir_covered_up_shine + texturefile = gfx/interface/goals/ISE/ise_palantir_covered_up.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/ise_palantir_covered_up.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/ise_palantir_covered_up.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_ise_the_white_hand_flag_shine + texturefile = gfx/interface/goals/ISE/ise_the_white_hand_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/ise_the_white_hand_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/ise_the_white_hand_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_meet_with_gandalf_shine + texturefile = gfx/interface/goals/ISE/meet_with_gandalf.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/meet_with_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/meet_with_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_orthanc_destroyed_shine + texturefile = gfx/interface/goals/ISE/orthanc_destroyed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/orthanc_destroyed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/orthanc_destroyed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_saruman_enedwaith_tribes_shine + texturefile = gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/saruman_enedwaith_tribes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_saruman_with_palantir_shine + texturefile = gfx/interface/goals/ISE/saruman_with_palantir.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ISE/saruman_with_palantir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ISE/saruman_with_palantir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_adminstration_shine + texturefile = gfx/interface/goals/LTH/lth_adminstration.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_adminstration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_adminstration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_ancient_archives_shine + texturefile = gfx/interface/goals/LTH/lth_ancient_archives.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ancient_archives.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ancient_archives.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_anduin_flag_shine + texturefile = gfx/interface/goals/LTH/lth_anduin_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_anduin_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_anduin_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_attack_dol_guldur_shine + texturefile = gfx/interface/goals/LTH/lth_attack_dol_guldur.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_attack_dol_guldur.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_attack_dol_guldur.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_aule_the_blacksmith_shine + texturefile = gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_aule_the_blacksmith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_balrog_durins_bane_shine + texturefile = gfx/interface/goals/LTH/lth_balrog_durins_bane.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_balrog_durins_bane.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_balrog_durins_bane.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_borders_migration_treaty_shine + texturefile = gfx/interface/goals/LTH/lth_borders_migration_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_borders_migration_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_borders_migration_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_burdens_of_leadership_shine + texturefile = gfx/interface/goals/LTH/lth_burdens_of_leadership.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_burdens_of_leadership.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_burdens_of_leadership.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_caras_galadhon_shine + texturefile = gfx/interface/goals/LTH/lth_caras_galadhon.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_caras_galadhon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_caras_galadhon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_celeborn_shine + texturefile = gfx/interface/goals/LTH/lth_celeborn.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_celeborn_edicts_shine + texturefile = gfx/interface/goals/LTH/lth_celeborn_edicts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_edicts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_edicts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_celeborn_reforms_shine + texturefile = gfx/interface/goals/LTH/lth_celeborn_reforms.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_reforms.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_reforms.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_celeborn_supreme_leader_shine + texturefile = gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celeborn_supreme_leader.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_celebrate_trumpets_message_shine + texturefile = gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_celebrate_trumpets_message.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_cerin_amroth_shine + texturefile = gfx/interface/goals/LTH/lth_cerin_amroth.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cerin_amroth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cerin_amroth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_cleanse_orcs_from_moria_shine + texturefile = gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cleanse_orcs_from_moria.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_collect_taxes_shine + texturefile = gfx/interface/goals/LTH/lth_collect_taxes.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_collect_taxes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_collect_taxes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_contain_mordor_shine + texturefile = gfx/interface/goals/LTH/lth_contain_mordor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_contain_mordor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_contain_mordor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_cooperation_and_stability_shine + texturefile = gfx/interface/goals/LTH/lth_cooperation_and_stability.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cooperation_and_stability.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_cooperation_and_stability.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_coordinated_defense_shine + texturefile = gfx/interface/goals/LTH/lth_coordinated_defense.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_coordinated_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_coordinated_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_coordinated_sactions_shine + texturefile = gfx/interface/goals/LTH/lth_coordinated_sactions.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_coordinated_sactions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_coordinated_sactions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_council_of_elrond_shine + texturefile = gfx/interface/goals/LTH/lth_council_of_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_council_of_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_council_of_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_council_of_quendi_shine + texturefile = gfx/interface/goals/LTH/lth_council_of_quendi.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_council_of_quendi.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_council_of_quendi.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_defense_deal_shine + texturefile = gfx/interface/goals/LTH/lth_defense_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defense_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defense_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_defense_guardians_shine + texturefile = gfx/interface/goals/LTH/lth_defense_guardians.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defense_guardians.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defense_guardians.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_defensive_alliance_shine + texturefile = gfx/interface/goals/LTH/lth_defensive_alliance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defensive_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defensive_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_defensive_perimeter_castle_shine + texturefile = gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_defensive_perimeter_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_demand_tribute_shine + texturefile = gfx/interface/goals/LTH/lth_demand_tribute.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_demand_tribute.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_demand_tribute.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_depart_to_valinor_preemptive_shine + texturefile = gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_depart_to_valinor_preemptive.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_desperate_last_stand_shine + texturefile = gfx/interface/goals/LTH/lth_desperate_last_stand.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_desperate_last_stand.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_desperate_last_stand.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_deterrence_castle_shine + texturefile = gfx/interface/goals/LTH/lth_deterrence_castle.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_deterrence_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_deterrence_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_diplomacy_focus_shine + texturefile = gfx/interface/goals/LTH/lth_diplomacy_focus.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_diplomacy_focus.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_diplomacy_focus.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_discord_lecture_shine + texturefile = gfx/interface/goals/LTH/lth_discord_lecture.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_discord_lecture.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_discord_lecture.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_dissolve_elven_nobility_shine + texturefile = gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dissolve_elven_nobility.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_dol_guldur_flag_shine + texturefile = gfx/interface/goals/LTH/lth_dol_guldur_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dol_guldur_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dol_guldur_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_dove_breaking_free_shine + texturefile = gfx/interface/goals/LTH/lth_dove_breaking_free.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dove_breaking_free.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dove_breaking_free.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_dwarf_elf_handshake_shine + texturefile = gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_dwarf_elf_handshake.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elden_days_tree_shine + texturefile = gfx/interface/goals/LTH/lth_elden_days_tree.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elden_days_tree.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elden_days_tree.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_election_ballot_shine + texturefile = gfx/interface/goals/LTH/lth_election_ballot.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_election_ballot.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_election_ballot.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elf_kneeling_to_orc_shine + texturefile = gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elf_kneeling_to_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elf_shaking_hands_with_orc_shine + texturefile = gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elf_shaking_hands_with_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elite_special_forces_shine + texturefile = gfx/interface/goals/LTH/lth_elite_special_forces.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elite_special_forces.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elite_special_forces.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_alliance_shine + texturefile = gfx/interface/goals/LTH/lth_elven_alliance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_aristocrats_shine + texturefile = gfx/interface/goals/LTH/lth_elven_aristocrats.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_aristocrats.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_aristocrats.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_army_shine + texturefile = gfx/interface/goals/LTH/lth_elven_army.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_army_dark_shine + texturefile = gfx/interface/goals/LTH/lth_elven_army_dark.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army_dark.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army_dark.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_army_training_shine + texturefile = gfx/interface/goals/LTH/lth_elven_army_training.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army_training.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_army_training.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_cavalry_shine + texturefile = gfx/interface/goals/LTH/lth_elven_cavalry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_cavalry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_cavalry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_diplomacy_and_influence_shine + texturefile = gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_diplomacy_and_influence.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_dwarf_relations_shine + texturefile = gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_dwarf_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_factions_divided_shine + texturefile = gfx/interface/goals/LTH/lth_elven_factions_divided.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_factions_divided.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_factions_divided.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_factions_united_shine + texturefile = gfx/interface/goals/LTH/lth_elven_factions_united.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_factions_united.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_factions_united.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_lords_consult_shine + texturefile = gfx/interface/goals/LTH/lth_elven_lords_consult.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_lords_consult.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_lords_consult.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_party_celebrations_shine + texturefile = gfx/interface/goals/LTH/lth_elven_party_celebrations.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_party_celebrations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_party_celebrations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_riders_naith_shine + texturefile = gfx/interface/goals/LTH/lth_elven_riders_naith.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_riders_naith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_riders_naith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_supremacy_shine + texturefile = gfx/interface/goals/LTH/lth_elven_supremacy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_supremacy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_supremacy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_sword_and_bow_shine + texturefile = gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_sword_and_bow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elven_warrior_spear_shine + texturefile = gfx/interface/goals/LTH/lth_elven_warrior_spear.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_warrior_spear.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elven_warrior_spear.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elves_gala_cele_beacon_of_hope_shine + texturefile = gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_gala_cele_beacon_of_hope.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elves_men_handshake_shine + texturefile = gfx/interface/goals/LTH/lth_elves_men_handshake.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_men_handshake.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_men_handshake.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elves_orcs_debate_shine + texturefile = gfx/interface/goals/LTH/lth_elves_orcs_debate.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_orcs_debate.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_orcs_debate.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_elves_shaking_hands_shine + texturefile = gfx/interface/goals/LTH/lth_elves_shaking_hands.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_shaking_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_elves_shaking_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_emissaries_guild_shine + texturefile = gfx/interface/goals/LTH/lth_emissaries_guild.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_emissaries_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_emissaries_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_endure_the_darkness_shine + texturefile = gfx/interface/goals/LTH/lth_endure_the_darkness.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_endure_the_darkness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_endure_the_darkness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_equal_union_shine + texturefile = gfx/interface/goals/LTH/lth_equal_union.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_equal_union.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_equal_union.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_erebor_skull_shine + texturefile = gfx/interface/goals/LTH/lth_erebor_skull.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_erebor_skull.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_erebor_skull.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_eternal_dominion_shine + texturefile = gfx/interface/goals/LTH/lth_eternal_dominion.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_eternal_dominion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_eternal_dominion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_eternal_wisdom_shine + texturefile = gfx/interface/goals/LTH/lth_eternal_wisdom.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_eternal_wisdom.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_eternal_wisdom.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_evil_galadriel_shine + texturefile = gfx/interface/goals/LTH/lth_evil_galadriel.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_evil_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_evil_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_evil_galadriel_unleashed_shine + texturefile = gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_evil_galadriel_unleashed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_executive_vigour_shine + texturefile = gfx/interface/goals/LTH/lth_executive_vigour.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_executive_vigour.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_executive_vigour.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_extend_citizenship_shine + texturefile = gfx/interface/goals/LTH/lth_extend_citizenship.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_extend_citizenship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_extend_citizenship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_fate_of_mortals_death_shine + texturefile = gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fate_of_mortals_death.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_fellowship_of_ring_shine + texturefile = gfx/interface/goals/LTH/lth_fellowship_of_ring.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fellowship_of_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fellowship_of_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_festival_of_unity_shine + texturefile = gfx/interface/goals/LTH/lth_festival_of_unity.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_festival_of_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_festival_of_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_food_resource_storage_shine + texturefile = gfx/interface/goals/LTH/lth_food_resource_storage.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_food_resource_storage.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_food_resource_storage.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_forsake_elves_kneeling_shine + texturefile = gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_forsake_elves_kneeling.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_fortifications_castle_shine + texturefile = gfx/interface/goals/LTH/lth_fortifications_castle.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fortifications_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_fortifications_castle.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_friendly_skeleton_shine + texturefile = gfx/interface/goals/LTH/lth_friendly_skeleton.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_friendly_skeleton.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_friendly_skeleton.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_frodo_valinor_shine + texturefile = gfx/interface/goals/LTH/lth_frodo_valinor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_frodo_valinor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_frodo_valinor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_and_eorl_rohan_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_and_eorl_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_and_sauron_alliance_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_and_sauron_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_celeborn_accord_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_celeborn_accord.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_celeborn_harmonic_ascendancy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_edicts_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_edicts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_edicts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_edicts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_fair_as_the_sea_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_fair_as_the_sea.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_hourglass_immortality_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_hourglass_immortality.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_mirror_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_mirror.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_mirror.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_mirror.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_powers_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_powers.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_powers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_powers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_queen_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_queen.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_queen.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_queen.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_resisting_darkness_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_resisting_darkness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_beorn_vale.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf_shine + texturefile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_galadriel_shaking_hands_with_thranduil_elf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_generic_archers_shine + texturefile = gfx/interface/goals/LTH/lth_generic_archers.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_generic_archers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_generic_archers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_glowing_elven_sword_blade_shine + texturefile = gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_glowing_elven_sword_blade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_gondor_skull_shine + texturefile = gfx/interface/goals/LTH/lth_gondor_skull.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_gondor_skull.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_gondor_skull.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_grain_dole_shine + texturefile = gfx/interface/goals/LTH/lth_grain_dole.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_grain_dole.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_grain_dole.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_grey_company_warriors_shine + texturefile = gfx/interface/goals/LTH/lth_grey_company_warriors.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_grey_company_warriors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_grey_company_warriors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_haldir_elves_ring_fellowship_shine + texturefile = gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_haldir_elves_ring_fellowship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_beren_luthien_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_beren_luthien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_cooperation_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_cooperation.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_dior_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_dior.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_dior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_dior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_earendil_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_earendil.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_earendil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_earendil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_elrond_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_elros_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_elros.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_elros.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_elros.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_emblem_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_halfelves_peredhil_legends_trumpets_shine + texturefile = gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_halfelves_peredhil_legends_trumpets.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_handshake_cooperation_shine + texturefile = gfx/interface/goals/LTH/lth_handshake_cooperation.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_handshake_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_handshake_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hands_asking_for_help_aid_weary_shine + texturefile = gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hands_asking_for_help_aid_weary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hand_grabbing_crown_shine + texturefile = gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_grabbing_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hand_taking_ring_shine + texturefile = gfx/interface/goals/LTH/lth_hand_taking_ring.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_taking_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_taking_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hand_with_flower_nature_shine + texturefile = gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hand_with_flower_nature.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_harmony_unity_shine + texturefile = gfx/interface/goals/LTH/lth_harmony_unity.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_harmony_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_harmony_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hegemony_crown_shine + texturefile = gfx/interface/goals/LTH/lth_hegemony_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hegemony_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hegemony_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_hidden_elven_realm_shine + texturefile = gfx/interface/goals/LTH/lth_hidden_elven_realm.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hidden_elven_realm.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_hidden_elven_realm.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_invasion_northbound_shine + texturefile = gfx/interface/goals/LTH/lth_invasion_northbound.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_invasion_northbound.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_invasion_northbound.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_investment_shine + texturefile = gfx/interface/goals/LTH/lth_investment.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_investment.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_investment.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_keep_elves_safe_shine + texturefile = gfx/interface/goals/LTH/lth_keep_elves_safe.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_keep_elves_safe.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_keep_elves_safe.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_knowledge_books_guild_shine + texturefile = gfx/interface/goals/LTH/lth_knowledge_books_guild.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_knowledge_books_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_knowledge_books_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_labour_blacksmith_shine + texturefile = gfx/interface/goals/LTH/lth_labour_blacksmith.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_labour_blacksmith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_labour_blacksmith.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_last_eldar_shine + texturefile = gfx/interface/goals/LTH/lth_last_eldar.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_last_eldar.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_last_eldar.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_leave_to_valinor_shine + texturefile = gfx/interface/goals/LTH/lth_leave_to_valinor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_leave_to_valinor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_leave_to_valinor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_library_caras_galadhon_shine + texturefile = gfx/interface/goals/LTH/lth_library_caras_galadhon.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_library_caras_galadhon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_library_caras_galadhon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_limited_intervention_shine + texturefile = gfx/interface/goals/LTH/lth_limited_intervention.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_limited_intervention.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_limited_intervention.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lindon_cirdan_shine + texturefile = gfx/interface/goals/LTH/lth_lindon_cirdan.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lindon_cirdan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lindon_cirdan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_local_autonomy_shine + texturefile = gfx/interface/goals/LTH/lth_local_autonomy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_local_autonomy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_local_autonomy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_locked_up_borders_sealed_shine + texturefile = gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_locked_up_borders_sealed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_anduin_deal_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_anduin_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_erebor_deal_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_erebor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_flag_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_gondor_deal_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_gondor_deal_2_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_gondor_deal_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_moria_deal_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_moria_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rivendell_isengard_union_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rivendell_isengard_union.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rohan_deal_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rohan_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_lothlorien_rohan_ties_shine + texturefile = gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_lothlorien_rohan_ties.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_mallorn_tree_planning_shine + texturefile = gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mallorn_tree_planning.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_map_measures_shine + texturefile = gfx/interface/goals/LTH/lth_map_measures.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_map_measures.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_map_measures.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_meritocracy_advancement_shine + texturefile = gfx/interface/goals/LTH/lth_meritocracy_advancement.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_meritocracy_advancement.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_meritocracy_advancement.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_mirror_enchanted_basin_shine + texturefile = gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mirror_enchanted_basin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_mirror_upgrade_shine + texturefile = gfx/interface/goals/LTH/lth_mirror_upgrade.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mirror_upgrade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mirror_upgrade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_moria_flag_shine + texturefile = gfx/interface/goals/LTH/lth_moria_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_moria_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_moria_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_mortal_skeleton_pleading_shine + texturefile = gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_mortal_skeleton_pleading.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_elven_warrior_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_elven_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_emblem_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_haldir_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_haldir.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_haldir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_haldir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_hands_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_hands.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_mallorn_trees_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_mallorn_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_map_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_map.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_map.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_map.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nandor_nimrodel_song_shine + texturefile = gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nandor_nimrodel_song.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_eagles_shine + texturefile = gfx/interface/goals/LTH/lth_nature_eagles.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_eagles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_eagles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_fellbeast_shine + texturefile = gfx/interface/goals/LTH/lth_nature_fellbeast.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_fellbeast.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_fellbeast.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_forest_between_shine + texturefile = gfx/interface/goals/LTH/lth_nature_forest_between.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_forest_between.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_forest_between.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_great_beasts_shine + texturefile = gfx/interface/goals/LTH/lth_nature_great_beasts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_great_beasts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_great_beasts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_spiders_shine + texturefile = gfx/interface/goals/LTH/lth_nature_spiders.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_spiders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_spiders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_spiders_of_ungoliant_shine + texturefile = gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_spiders_of_ungoliant.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nature_treebeard_shine + texturefile = gfx/interface/goals/LTH/lth_nature_treebeard.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_treebeard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nature_treebeard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nazghul_ringwraith_on_fire_shine + texturefile = gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nazghul_ringwraith_on_fire.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nenya_enigma_shine + texturefile = gfx/interface/goals/LTH/lth_nenya_enigma.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_enigma.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_enigma.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nenya_one_ring_merge_shine + texturefile = gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_one_ring_merge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_nenya_ring_enchantments_shine + texturefile = gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_nenya_ring_enchantments.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_commemorate_gondolin_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_commemorate_gondolin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_elven_warrior_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_elven_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_emblem_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_galadriel_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_galadriel.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_golden_book_open_knowledge_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_golden_book_open_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_metalwork_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_metalwork.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_metalwork.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_metalwork.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_purity_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_purity.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_purity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_purity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_queens_guard_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_queens_guard.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_queens_guard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_queens_guard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_reawakening_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_reawakening.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_reawakening.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_reawakening.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_noldor_silmarils_shine + texturefile = gfx/interface/goals/LTH/lth_noldor_silmarils.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_silmarils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_noldor_silmarils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_oath_of_feanor_shine + texturefile = gfx/interface/goals/LTH/lth_oath_of_feanor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_oath_of_feanor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_oath_of_feanor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_one_ring_shadow_shine + texturefile = gfx/interface/goals/LTH/lth_one_ring_shadow.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_one_ring_shadow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_one_ring_shadow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_open_book_shine + texturefile = gfx/interface/goals/LTH/lth_open_book.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_open_book.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_open_book.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_open_books_culture_shine + texturefile = gfx/interface/goals/LTH/lth_open_books_culture.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_open_books_culture.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_open_books_culture.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_orc_bound_by_chains_shine + texturefile = gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_bound_by_chains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_orc_contained_resistance_shine + texturefile = gfx/interface/goals/LTH/lth_orc_contained_resistance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_contained_resistance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_contained_resistance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_orc_prisoner_vivisection_shine + texturefile = gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_prisoner_vivisection.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_orc_servitude_shine + texturefile = gfx/interface/goals/LTH/lth_orc_servitude.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_servitude.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_servitude.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_orc_warrior_shine + texturefile = gfx/interface/goals/LTH/lth_orc_warrior.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_orc_warrior.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_other_people_association_shine + texturefile = gfx/interface/goals/LTH/lth_other_people_association.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_other_people_association.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_other_people_association.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_peasantry_shine + texturefile = gfx/interface/goals/LTH/lth_peasantry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_play_for_time_hourglass_shine + texturefile = gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_play_for_time_hourglass.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_powers_of_nenya_shine + texturefile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_powers_of_nenya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_proposals_and_resolutions_shine + texturefile = gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_proposals_and_resolutions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_protect_at_any_cost_shine + texturefile = gfx/interface/goals/LTH/lth_protect_at_any_cost.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_protect_at_any_cost.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_protect_at_any_cost.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_provincial_councils_shine + texturefile = gfx/interface/goals/LTH/lth_provincial_councils.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_provincial_councils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_provincial_councils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_raised_fist_blue_shine + texturefile = gfx/interface/goals/LTH/lth_raised_fist_blue.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_raised_fist_blue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_raised_fist_blue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_remove_borders_shine + texturefile = gfx/interface/goals/LTH/lth_remove_borders.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_remove_borders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_remove_borders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_research_cooperation_shine + texturefile = gfx/interface/goals/LTH/lth_research_cooperation.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_research_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_research_cooperation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_revolutionary_flag_lothlorien_shine + texturefile = gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_revolutionary_flag_lothlorien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_ring_nenya_shine + texturefile = gfx/interface/goals/LTH/lth_ring_nenya.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ring_nenya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ring_nenya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_ring_nenya_archive_shine + texturefile = gfx/interface/goals/LTH/lth_ring_nenya_archive.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ring_nenya_archive.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_ring_nenya_archive.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_river_anduin_shine + texturefile = gfx/interface/goals/LTH/lth_river_anduin.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_anduin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_anduin.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_river_ships_shine + texturefile = gfx/interface/goals/LTH/lth_river_ships.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_ships.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_ships.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_river_ships_navigation_shine + texturefile = gfx/interface/goals/LTH/lth_river_ships_navigation.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_ships_navigation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_river_ships_navigation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sacred_mallorn_trees_shine + texturefile = gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sacred_mallorn_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_safeguard_food_bread_shine + texturefile = gfx/interface/goals/LTH/lth_safeguard_food_bread.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_safeguard_food_bread.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_safeguard_food_bread.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_safe_haven_defense_shine + texturefile = gfx/interface/goals/LTH/lth_safe_haven_defense.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_safe_haven_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_safe_haven_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sauron_eye_contained_war_shine + texturefile = gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sauron_eye_contained_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sauron_unleashed_with_ring_shine + texturefile = gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sauron_unleashed_with_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_schism_celeborn_exiled_shine + texturefile = gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_celeborn_exiled.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_schism_galadriels_farewell_shine + texturefile = gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_galadriels_farewell.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_schism_mended_shine + texturefile = gfx/interface/goals/LTH/lth_schism_mended.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_mended.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_mended.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_schism_separated_shine + texturefile = gfx/interface/goals/LTH/lth_schism_separated.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_separated.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_schism_separated.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_scribe_knowledge_shine + texturefile = gfx/interface/goals/LTH/lth_scribe_knowledge.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_scribe_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_scribe_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_select_advisors_shine + texturefile = gfx/interface/goals/LTH/lth_select_advisors.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_select_advisors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_select_advisors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_shared_cause_hands_shine + texturefile = gfx/interface/goals/LTH/lth_shared_cause_hands.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shared_cause_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shared_cause_hands.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_shared_research_knowledge_shine + texturefile = gfx/interface/goals/LTH/lth_shared_research_knowledge.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shared_research_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shared_research_knowledge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_shattered_crown_red_shine + texturefile = gfx/interface/goals/LTH/lth_shattered_crown_red.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shattered_crown_red.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shattered_crown_red.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_shield_aegis_of_light_shine + texturefile = gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_shield_aegis_of_light.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_silverthorn_arrows_shine + texturefile = gfx/interface/goals/LTH/lth_silverthorn_arrows.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_silverthorn_arrows.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_silverthorn_arrows.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_celeborn_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_celeborn.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_celeborn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_celeborn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_crown_of_doriath_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_crown_of_doriath.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_emblem_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_lothlorien_lindon_treaty_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_lothlorien_lindon_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_melian_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_melian.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_melian.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_melian.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_noldor_deal_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_noldor_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_pathstalkers_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_pathstalkers.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_sindar_thingol_shine + texturefile = gfx/interface/goals/LTH/lth_sindar_thingol.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_thingol.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_sindar_thingol.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_skulls_with_helmets_shine + texturefile = gfx/interface/goals/LTH/lth_skulls_with_helmets.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_skulls_with_helmets.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_skulls_with_helmets.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_taming_the_wild_shine + texturefile = gfx/interface/goals/LTH/lth_taming_the_wild.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_taming_the_wild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_taming_the_wild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_target_lindon_cirdan_shine + texturefile = gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_lindon_cirdan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_target_mirkwood_thranduil_shine + texturefile = gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_mirkwood_thranduil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_target_rivendell_elrond_shine + texturefile = gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_target_rivendell_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_tax_collection_reformed_shine + texturefile = gfx/interface/goals/LTH/lth_tax_collection_reformed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_tax_collection_reformed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_tax_collection_reformed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_territorial_defense_shine + texturefile = gfx/interface/goals/LTH/lth_territorial_defense.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_territorial_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_territorial_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_territorial_integration_shine + texturefile = gfx/interface/goals/LTH/lth_territorial_integration.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_territorial_integration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_territorial_integration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_thranduil_diplomatic_pressure_shine + texturefile = gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_thranduil_diplomatic_pressure.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_torn_treaty_paper_shine + texturefile = gfx/interface/goals/LTH/lth_torn_treaty_paper.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_torn_treaty_paper.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_torn_treaty_paper.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_total_isolation_tower_shine + texturefile = gfx/interface/goals/LTH/lth_total_isolation_tower.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_total_isolation_tower.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_total_isolation_tower.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_trade_agreements_shine + texturefile = gfx/interface/goals/LTH/lth_trade_agreements.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_trade_agreements.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_trade_agreements.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_treaty_executive_power_shine + texturefile = gfx/interface/goals/LTH/lth_treaty_executive_power.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_treaty_executive_power.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_treaty_executive_power.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_treaty_invitation_shine + texturefile = gfx/interface/goals/LTH/lth_treaty_invitation.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_treaty_invitation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_treaty_invitation.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_twilight_garden_shine + texturefile = gfx/interface/goals/LTH/lth_twilight_garden.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_twilight_garden.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_twilight_garden.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_twin_hearts_shine + texturefile = gfx/interface/goals/LTH/lth_twin_hearts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_twin_hearts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_twin_hearts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_untreaded_path_shine + texturefile = gfx/interface/goals/LTH/lth_untreaded_path.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_untreaded_path.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_untreaded_path.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_urban_councils_shine + texturefile = gfx/interface/goals/LTH/lth_urban_councils.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_urban_councils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_urban_councils.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_uruk_hai_orc_shine + texturefile = gfx/interface/goals/LTH/lth_uruk_hai_orc.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_uruk_hai_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_uruk_hai_orc.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_vales_of_anduin_offer_chain_shine + texturefile = gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_vales_of_anduin_offer_chain.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_waters_of_healing_shine + texturefile = gfx/interface/goals/LTH/lth_waters_of_healing.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_waters_of_healing.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_waters_of_healing.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_weapons_research_shine + texturefile = gfx/interface/goals/LTH/lth_weapons_research.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_weapons_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_weapons_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_weapon_sword_forging_shine + texturefile = gfx/interface/goals/LTH/lth_weapon_sword_forging.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_weapon_sword_forging.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_weapon_sword_forging.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_eagles_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_eagles.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_eagles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_eagles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_elrond_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_fleet_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_fleet.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_fleet.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_fleet.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_galadriel_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_galadriel.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_galadriel.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_gandalf_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_gandalf.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_meeting_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_meeting.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_meeting.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_meeting.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_saruman_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_saruman.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_saruman.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_saruman.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_white_council_saruman_with_palantir_shine + texturefile = gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_white_council_saruman_with_palantir.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_lth_yavanna_shine + texturefile = gfx/interface/goals/LTH/lth_yavanna.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_yavanna.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/LTH/lth_yavanna.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mir_deal_with_the_spiders_shine + texturefile = gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_deal_with_the_spiders.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mir_radagast_the_brown_shine + texturefile = gfx/interface/goals/MIR/mir_radagast_the_brown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_radagast_the_brown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_radagast_the_brown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mir_spider_anarchy_shine + texturefile = gfx/interface/goals/MIR/mir_spider_anarchy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_spider_anarchy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_spider_anarchy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mir_thranduil_shine + texturefile = gfx/interface/goals/MIR/mir_thranduil.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_thranduil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MIR/mir_thranduil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_moa_balrog_shine + texturefile = gfx/interface/goals/MOA/moa_balrog.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOA/moa_balrog.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOA/moa_balrog.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_azog_orc_revolt_shine + texturefile = gfx/interface/goals/MOR/mor_azog_orc_revolt.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_azog_orc_revolt.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_azog_orc_revolt.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_dark_dol_guldur_fortress_shine + texturefile = gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_dark_dol_guldur_fortress.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_dol_guldur_flag_shine + texturefile = gfx/interface/goals/MOR/mor_dol_guldur_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_dol_guldur_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_dol_guldur_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_encroach_on_ithilien_shine + texturefile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_encroach_on_ithilien.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_erebor_flag_shine + texturefile = gfx/interface/goals/MOR/mor_erebor_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_erebor_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_erebor_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_escalate_the_attacks_shine + texturefile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_escalate_the_attacks.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_golum_shine + texturefile = gfx/interface/goals/MOR/mor_golum.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_golum.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_golum.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_grapes_shine + texturefile = gfx/interface/goals/MOR/mor_grapes.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_grapes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_grapes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_ithilien_encroach_landgrab_shine + texturefile = gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_ithilien_encroach_landgrab.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_meat_back_skulls_knife_shine + texturefile = gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_meat_back_skulls_knife.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_mordor_landscape_shine + texturefile = gfx/interface/goals/MOR/mor_mordor_landscape.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_mordor_landscape.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_mordor_landscape.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_nazgul_ringwraiths_shine + texturefile = gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_nazgul_ringwraiths.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_second_wave_shine + texturefile = gfx/interface/goals/MOR/mor_second_wave.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_second_wave.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_second_wave.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_servant_of_melkor_morgoth_shine + texturefile = gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_servant_of_melkor_morgoth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_tower_of_barad_dur_shine + texturefile = gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_tower_of_barad_dur.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_troll_warriors_shine + texturefile = gfx/interface/goals/MOR/mor_troll_warriors.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_troll_warriors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_troll_warriors.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_dale_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_dale.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_dale.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_dale.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_dorwinion_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_dorwinion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_erebor_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_erebor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_erebor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_erebor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_gondor_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_gondor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_gondor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_gondor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_harad_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_harad.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_harad.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_harad.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_rhun_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_rhun.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_rhun.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_rhun.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_mor_wargoal_rohan_shine + texturefile = gfx/interface/goals/MOR/mor_wargoal_rohan.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/mor_wargoal_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_sauron_eye_shine + texturefile = gfx/interface/goals/MOR/sauron_eye.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/sauron_eye.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/sauron_eye.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_skull_treaty_shine + texturefile = gfx/interface/goals/MOR/skull_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/skull_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/skull_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_stop_melkor_worship_shine + texturefile = gfx/interface/goals/MOR/stop_melkor_worship.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/stop_melkor_worship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/stop_melkor_worship.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_the_one_ring_shine + texturefile = gfx/interface/goals/MOR/the_one_ring.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/the_one_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/the_one_ring.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_union_of_working_orc_class_shine + texturefile = gfx/interface/goals/MOR/union_of_working_orc_class.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/union_of_working_orc_class.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/union_of_working_orc_class.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_unleash_sauron_shine + texturefile = gfx/interface/goals/MOR/unleash_sauron.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/MOR/unleash_sauron.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/MOR/unleash_sauron.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_dale_flag_shine + texturefile = gfx/interface/goals/RHU/rhu_dale_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_dale_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_dale_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_dorwinion_flag_shine + texturefile = gfx/interface/goals/RHU/rhu_dorwinion_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_dorwinion_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_dorwinion_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_nazghul_ringwraith_khamul_shine + texturefile = gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_nazghul_ringwraith_khamul.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_rhun_civil_war_shine + texturefile = gfx/interface/goals/RHU/rhu_rhun_civil_war.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_rhun_civil_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_rhun_civil_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_the_blue_wizards_shine + texturefile = gfx/interface/goals/RHU/rhu_the_blue_wizards.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_the_blue_wizards.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_the_blue_wizards.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_rhu_wargoal_mordor_shine + texturefile = gfx/interface/goals/RHU/rhu_wargoal_mordor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_wargoal_mordor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RHU/rhu_wargoal_mordor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_riv_council_of_elrond_shine + texturefile = gfx/interface/goals/RIV/riv_council_of_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_council_of_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_council_of_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_riv_elrond_shine + texturefile = gfx/interface/goals/RIV/riv_elrond.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_elrond.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_riv_elrond_ring_vilya_shine + texturefile = gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_elrond_ring_vilya.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_riv_reforge_blade_of_narsil_shine + texturefile = gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/RIV/riv_reforge_blade_of_narsil.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_allow_gandalf_into_rohan_shine + texturefile = gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_allow_gandalf_into_rohan.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_edoras_shine + texturefile = gfx/interface/goals/ROH/roh_edoras.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_edoras.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_edoras.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_eomer_shine + texturefile = gfx/interface/goals/ROH/roh_eomer.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_eomer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_eomer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_eowyn_sorrow_shine + texturefile = gfx/interface/goals/ROH/roh_eowyn_sorrow.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_eowyn_sorrow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_eowyn_sorrow.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_grima_wormtongue_shine + texturefile = gfx/interface/goals/ROH/roh_grima_wormtongue.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_grima_wormtongue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_grima_wormtongue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_helms_deep_shine + texturefile = gfx/interface/goals/ROH/roh_helms_deep.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_helms_deep.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_helms_deep.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_helms_deep_weakness_shine + texturefile = gfx/interface/goals/ROH/roh_helms_deep_weakness.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_helms_deep_weakness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_helms_deep_weakness.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_rohan_flag_shine + texturefile = gfx/interface/goals/ROH/roh_rohan_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_rohan_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_rohan_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_sick_theoden_shine + texturefile = gfx/interface/goals/ROH/roh_sick_theoden.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_sick_theoden.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_sick_theoden.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_theodred_shine + texturefile = gfx/interface/goals/ROH/roh_theodred.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_theodred.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_theodred.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_trust_gandalf_shine + texturefile = gfx/interface/goals/ROH/roh_trust_gandalf.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_trust_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_trust_gandalf.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_roh_trust_saruman_shine + texturefile = gfx/interface/goals/ROH/roh_trust_saruman.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_trust_saruman.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/ROH/roh_trust_saruman.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_a_land_of_mountains_shine + texturefile = gfx/interface/goals/vanilla/a_land_of_mountains.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/a_land_of_mountains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/a_land_of_mountains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_focus_research_shine + texturefile = gfx/interface/goals/vanilla/focus_research.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/focus_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/focus_research.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_focus_research2_shine + texturefile = gfx/interface/goals/vanilla/focus_research2.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/focus_research2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/focus_research2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_alcohol_bottles_shine + texturefile = gfx/interface/goals/vanilla/generic_alcohol_bottles.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_alcohol_bottles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_alcohol_bottles.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_annex_country_shine + texturefile = gfx/interface/goals/vanilla/generic_annex_country.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_annex_country.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_annex_country.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_annex_country_2_shine + texturefile = gfx/interface/goals/vanilla/generic_annex_country_2.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_annex_country_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_annex_country_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_anti_revolutionary_shine + texturefile = gfx/interface/goals/vanilla/generic_anti_revolutionary.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_anti_revolutionary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_anti_revolutionary.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_aristocracy_shine + texturefile = gfx/interface/goals/vanilla/generic_aristocracy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_aristocracy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_aristocracy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_arrows_shine + texturefile = gfx/interface/goals/vanilla/generic_arrows.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_arrows.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_arrows.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_bird_shine + texturefile = gfx/interface/goals/vanilla/generic_bird.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_bird.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_bird.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_camel_corps_shine + texturefile = gfx/interface/goals/vanilla/generic_camel_corps.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_camel_corps.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_camel_corps.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_coastal_fort_shine + texturefile = gfx/interface/goals/vanilla/generic_coastal_fort.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_coastal_fort.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_coastal_fort.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_coins_money_shine + texturefile = gfx/interface/goals/vanilla/generic_coins_money.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_coins_money.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_coins_money.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_common_people_peasantry_shine + texturefile = gfx/interface/goals/vanilla/generic_common_people_peasantry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_common_people_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_common_people_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_concessions_shine + texturefile = gfx/interface/goals/vanilla/generic_concessions.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_concessions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_concessions.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_conspiracy_dagger_shine + texturefile = gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_conspiracy_dagger.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_crown_smashed_shine + texturefile = gfx/interface/goals/vanilla/generic_crown_smashed.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_crown_smashed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_crown_smashed.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_diplomatic_treaty_shine + texturefile = gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_diplomatic_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_farmland_shine + texturefile = gfx/interface/goals/vanilla/generic_farmland.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_farmland.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_farmland.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_fight_beasts_shine + texturefile = gfx/interface/goals/vanilla/generic_fight_beasts.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_fight_beasts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_fight_beasts.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_fishermen_shine + texturefile = gfx/interface/goals/vanilla/generic_fishermen.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_fishermen.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_fishermen.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_flooding_shine + texturefile = gfx/interface/goals/vanilla/generic_flooding.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_flooding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_flooding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_gold_money_shine + texturefile = gfx/interface/goals/vanilla/generic_gold_money.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_gold_money.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_gold_money.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_gold_standard_shine + texturefile = gfx/interface/goals/vanilla/generic_gold_standard.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_gold_standard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_gold_standard.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_guild_shine + texturefile = gfx/interface/goals/vanilla/generic_guild.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_guild.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_home_defense_shine + texturefile = gfx/interface/goals/vanilla/generic_home_defense.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_home_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_home_defense.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_horse_studs_shine + texturefile = gfx/interface/goals/vanilla/generic_horse_studs.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_horse_studs.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_horse_studs.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_improve_the_administration_shine + texturefile = gfx/interface/goals/vanilla/generic_improve_the_administration.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_improve_the_administration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_improve_the_administration.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_industry_merge_shine + texturefile = gfx/interface/goals/vanilla/generic_industry_merge.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_industry_merge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_industry_merge.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_jaeger_emblem_shine + texturefile = gfx/interface/goals/vanilla/generic_jaeger_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_jaeger_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_jaeger_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_knock_over_flag_shine + texturefile = gfx/interface/goals/vanilla/generic_knock_over_flag.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_knock_over_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_knock_over_flag.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_land_reclamation_resource_extraction_shine + texturefile = gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_land_reclamation_resource_extraction.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_large_knife_shine + texturefile = gfx/interface/goals/vanilla/generic_large_knife.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_large_knife.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_large_knife.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_levy_shine + texturefile = gfx/interface/goals/vanilla/generic_levy.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_levy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_levy.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_lion_shine + texturefile = gfx/interface/goals/vanilla/generic_lion.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_lion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_lion.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_love_natrue_shine + texturefile = gfx/interface/goals/vanilla/generic_love_natrue.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_love_natrue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_love_natrue.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_medicine_shine + texturefile = gfx/interface/goals/vanilla/generic_medicine.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_medicine.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_medicine.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_men_at_arms_shine + texturefile = gfx/interface/goals/vanilla/generic_men_at_arms.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_men_at_arms.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_men_at_arms.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_mining_industry_shine + texturefile = gfx/interface/goals/vanilla/generic_mining_industry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_mining_industry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_mining_industry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_monarchy_1_shine + texturefile = gfx/interface/goals/vanilla/generic_monarchy_1.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_monarchy_1.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_monarchy_1.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_monarchy_2_shine + texturefile = gfx/interface/goals/vanilla/generic_monarchy_2.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_monarchy_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_monarchy_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_nature_trees_shine + texturefile = gfx/interface/goals/vanilla/generic_nature_trees.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_nature_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_nature_trees.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_naval_crown_2_shine + texturefile = gfx/interface/goals/vanilla/generic_naval_crown_2.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_crown_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_crown_2.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_naval_emblem_shine + texturefile = gfx/interface/goals/vanilla/generic_naval_emblem.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_emblem.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_naval_emblem_crown_shine + texturefile = gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_emblem_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_naval_war_crown_shine + texturefile = gfx/interface/goals/vanilla/generic_naval_war_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_war_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_naval_war_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_peace_dove_shine + texturefile = gfx/interface/goals/vanilla/generic_peace_dove.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_peace_dove.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_peace_dove.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_peasantry_welfare_shine + texturefile = gfx/interface/goals/vanilla/generic_peasantry_welfare.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_peasantry_welfare.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_peasantry_welfare.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_population_growth_shine + texturefile = gfx/interface/goals/vanilla/generic_population_growth.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_population_growth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_population_growth.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_prisoner_king_crown_shine + texturefile = gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_prisoner_king_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_provoke_border_clashes_shine + texturefile = gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_provoke_border_clashes.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_revolutionary_chains_shine + texturefile = gfx/interface/goals/vanilla/generic_revolutionary_chains.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_revolutionary_chains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_revolutionary_chains.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_royal_wedding_shine + texturefile = gfx/interface/goals/vanilla/generic_royal_wedding.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_royal_wedding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_royal_wedding.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_rural_trade_farming_shine + texturefile = gfx/interface/goals/vanilla/generic_rural_trade_farming.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_rural_trade_farming.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_rural_trade_farming.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_sabres_shine + texturefile = gfx/interface/goals/vanilla/generic_sabres.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_sabres.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_sabres.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_self_management_shine + texturefile = gfx/interface/goals/vanilla/generic_self_management.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_self_management.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_self_management.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_skull_death_nor_dishonor_shine + texturefile = gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_skull_death_nor_dishonor.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_spear_and_sabre_shine + texturefile = gfx/interface/goals/vanilla/generic_spear_and_sabre.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_spear_and_sabre.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_spear_and_sabre.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_special_forces_shine + texturefile = gfx/interface/goals/vanilla/generic_special_forces.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_special_forces.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_special_forces.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_spy_agency_eye_shine + texturefile = gfx/interface/goals/vanilla/generic_spy_agency_eye.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_spy_agency_eye.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_spy_agency_eye.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_strike_at_democracy1_shine + texturefile = gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_strike_at_democracy1.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_submission_puppet_shine + texturefile = gfx/interface/goals/vanilla/generic_submission_puppet.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_submission_puppet.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_submission_puppet.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_support_crown_shine + texturefile = gfx/interface/goals/vanilla/generic_support_crown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_support_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_support_crown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_suppression_oppression_shine + texturefile = gfx/interface/goals/vanilla/generic_suppression_oppression.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_suppression_oppression.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_suppression_oppression.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_torchbearer_shine + texturefile = gfx/interface/goals/vanilla/generic_torchbearer.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_torchbearer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_torchbearer.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_trade_devalue_currency_shine + texturefile = gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_trade_devalue_currency.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_treaty_shine + texturefile = gfx/interface/goals/vanilla/generic_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_treaty_torn_shine + texturefile = gfx/interface/goals/vanilla/generic_treaty_torn.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_treaty_torn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_treaty_torn.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_unknown_shine + texturefile = gfx/interface/goals/vanilla/generic_unknown.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_unknown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_unknown.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_urban_city_shine + texturefile = gfx/interface/goals/vanilla/generic_urban_city.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_urban_city.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_urban_city.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_voting_ballot_locked_shine + texturefile = gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_voting_ballot_locked.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_generic_workers_and_farmers_rise_peasantry_shine + texturefile = gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/generic_workers_and_farmers_rise_peasantry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_anschluss_shine + texturefile = gfx/interface/goals/vanilla/goal_anschluss.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_anschluss.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_anschluss.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_demand_sudetenland_shine + texturefile = gfx/interface/goals/vanilla/goal_demand_sudetenland.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_demand_sudetenland.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_demand_sudetenland.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_air_doctrine_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_air_doctrine.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_alliance_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_alliance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_army_doctrines_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_army_doctrines.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_attack_allies_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_attack_allies.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_attack_allies.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_attack_allies.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_CAS_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_CAS.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_CAS.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_CAS.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_cavalry_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_cavalry.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_cavalry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_cavalry.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_dangerous_deal_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_dangerous_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_defence_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_defence.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_defence.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_defence.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_demand_territory_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_demand_territory.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_demand_territory.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_demand_territory.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_forceful_treaty_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_forceful_treaty.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_improve_relations_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_improve_relations.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_improve_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_improve_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_major_alliance_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_major_alliance.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_major_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_major_alliance.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_major_war_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_major_war.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_major_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_major_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_military_deal_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_military_deal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_military_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_military_deal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_more_territorial_claims_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_more_territorial_claims.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_national_unity_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_national_unity.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_national_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_national_unity.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_navy_doctrines_tactics_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_navy_doctrines_tactics.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_neutrality_focus_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_neutrality_focus.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_occypy_states_coastal_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_occypy_states_coastal.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_occypy_states_ongoing_war_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_occypy_states_ongoing_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_political_pressure_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_political_pressure.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_political_pressure.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_political_pressure.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_position_armies_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_position_armies.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_position_armies.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_position_armies.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_positive_trade_relations_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_positive_trade_relations.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_scientific_exchange_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_scientific_exchange.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_secret_weapon_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_secret_weapon.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_territory_or_war_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_territory_or_war.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_generic_trade_shine + texturefile = gfx/interface/goals/vanilla/goal_generic_trade.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_trade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_generic_trade.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_molotov_ribbentrop_pact_shine + texturefile = gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_molotov_ribbentrop_pact.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_tfv_generic_tech_sharing_shine + texturefile = gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tfv_generic_tech_sharing.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_tfv_strengthen_commonwealth_ties_shine + texturefile = gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tfv_strengthen_commonwealth_ties.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_goal_tripartite_pact_shine + texturefile = gfx/interface/goals/vanilla/goal_tripartite_pact.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tripartite_pact.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/goal_tripartite_pact.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + + spriteType = { + name = GFX_goal_support_the_left_right_shine + texturefile = gfx/interface/goals/vanilla/support_the_left_right.dds + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = gfx/interface/goals/vanilla/support_the_left_right.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = gfx/interface/goals/vanilla/support_the_left_right.dds + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } + +} diff --git a/interface/auto_generated/lotr_spirits.gfx b/interface/auto_generated/lotr_spirits.gfx new file mode 100644 index 000000000..a2548e3bc --- /dev/null +++ b/interface/auto_generated/lotr_spirits.gfx @@ -0,0 +1,823 @@ +spriteTypes = { + # This file was auto-generated by GFX-Maker.py + spriteType = { + name = "GFX_idea_generic_belligerent_drift_bonus" + texturefile = "gfx/interface/ideas/national_spirits/generic_belligerent_drift_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_cooperative_drift_bonus" + texturefile = "gfx/interface/ideas/national_spirits/generic_cooperative_drift_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_revolutionary_drift_bonus" + texturefile = "gfx/interface/ideas/national_spirits/generic_revolutionary_drift_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_unaligned_drift_bonus" + texturefile = "gfx/interface/ideas/national_spirits/generic_unaligned_drift_bonus.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_alliance" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_alliance.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_alliance_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_alliance_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_expansion" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_expansion.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_expansion_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_expansion_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_hegemony" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_hegemony.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_hegemony_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_hegemony_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_industry" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_industry.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_industry_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_industry_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_martial" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_martial.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_martial_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_martial_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_peace" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_peace.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_peace_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_peace_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_research" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_research.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_research_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_research_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_trade" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_trade.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_trade_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_trade_grey.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_union" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_union.dds" + } + + spriteType = { + name = "GFX_idea_ea_resolution_icon_union_grey" + texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_union_grey.dds" + } + + spriteType = { + name = "GFX_idea_denethor_paranoia" + texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia.dds" + } + + spriteType = { + name = "GFX_idea_denethor_paranoia_2" + texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_2.dds" + } + + spriteType = { + name = "GFX_idea_denethor_paranoia_3" + texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_3.dds" + } + + spriteType = { + name = "GFX_idea_denethor_paranoia_4" + texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_4.dds" + } + + spriteType = { + name = "GFX_idea_gon_white_tree" + texturefile = "gfx/interface/ideas/national_spirits/GON/gon_white_tree.dds" + } + + spriteType = { + name = "GFX_idea_swan_knights" + texturefile = "gfx/interface/ideas/national_spirits/GON/swan_knights.dds" + } + + spriteType = { + name = "GFX_idea_weary_armed_forces" + texturefile = "gfx/interface/ideas/national_spirits/GON/weary_armed_forces.dds" + } + + spriteType = { + name = "GFX_idea_immortal_endurance" + texturefile = "gfx/interface/ideas/national_spirits/LTH/immortal_endurance.dds" + } + + spriteType = { + name = "GFX_idea_limited_intervention" + texturefile = "gfx/interface/ideas/national_spirits/LTH/limited_intervention.dds" + } + + spriteType = { + name = "GFX_idea_lth_aegis_of_light" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_aegis_of_light.dds" + } + + spriteType = { + name = "GFX_idea_lth_anduin_commerce" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_anduin_commerce.dds" + } + + spriteType = { + name = "GFX_idea_lth_a_necessary_evil" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_a_necessary_evil.dds" + } + + spriteType = { + name = "GFX_idea_lth_beacon_of_hope" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds" + } + + spriteType = { + name = "GFX_idea_lth_blades_of_the_eldar" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_blades_of_the_eldar.dds" + } + + spriteType = { + name = "GFX_idea_lth_cele_and_gala" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_and_gala.dds" + } + + spriteType = { + name = "GFX_idea_lth_cele_and_gala_mended" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_and_gala_mended.dds" + } + + spriteType = { + name = "GFX_idea_lth_cele_gala_accord" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_gala_accord.dds" + } + + spriteType = { + name = "GFX_idea_lth_decadent_nobility" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_decadent_nobility.dds" + } + + spriteType = { + name = "GFX_idea_lth_elven_factions" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_elven_factions.dds" + } + + spriteType = { + name = "GFX_idea_lth_fate_of_mortals" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_fate_of_mortals.dds" + } + + spriteType = { + name = "GFX_idea_lth_girdle_of_melian" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_girdle_of_melian.dds" + } + + spriteType = { + name = "GFX_idea_lth_great_beasts" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_great_beasts.dds" + } + + spriteType = { + name = "GFX_idea_lth_great_schism" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_great_schism.dds" + } + + spriteType = { + name = "GFX_idea_lth_harmonic_ascendancy" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_harmonic_ascendancy.dds" + } + + spriteType = { + name = "GFX_idea_lth_last_eldar" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_last_eldar.dds" + } + + spriteType = { + name = "GFX_idea_lth_last_stand" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_last_stand.dds" + } + + spriteType = { + name = "GFX_idea_lth_lead_by_example" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_lead_by_example.dds" + } + + spriteType = { + name = "GFX_idea_lth_loose_giant" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_loose_giant.dds" + } + + spriteType = { + name = "GFX_idea_lth_meritocracy" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_meritocracy.dds" + } + + spriteType = { + name = "GFX_idea_lth_noldor_elite" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_noldor_elite.dds" + } + + spriteType = { + name = "GFX_idea_lth_peasant_assembly" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_peasant_assembly.dds" + } + + spriteType = { + name = "GFX_idea_lth_prisoner_vivisections" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_prisoner_vivisections.dds" + } + + spriteType = { + name = "GFX_idea_lth_sacred_trees" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sacred_trees.dds" + } + + spriteType = { + name = "GFX_idea_lth_sacred_trees_fading" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sacred_trees_fading.dds" + } + + spriteType = { + name = "GFX_idea_lth_sealed_borders" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sealed_borders.dds" + } + + spriteType = { + name = "GFX_idea_lth_silvan_elite_warriors" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_silvan_elite_warriors.dds" + } + + spriteType = { + name = "GFX_idea_lth_silverthorn_arrows" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_silverthorn_arrows.dds" + } + + spriteType = { + name = "GFX_idea_lth_sky_soil_and_water" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sky_soil_and_water.dds" + } + + spriteType = { + name = "GFX_idea_lth_the_new_order" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_the_new_order.dds" + } + + spriteType = { + name = "GFX_idea_lth_total_isolation" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_total_isolation.dds" + } + + spriteType = { + name = "GFX_idea_lth_unflinching_defender" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_unflinching_defender.dds" + } + + spriteType = { + name = "GFX_idea_lth_unity_in_division" + texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_unity_in_division.dds" + } + + spriteType = { + name = "GFX_idea_honor_morgoth" + texturefile = "gfx/interface/ideas/national_spirits/MOR/honor_morgoth.dds" + } + + spriteType = { + name = "GFX_idea_one_ring" + texturefile = "gfx/interface/ideas/national_spirits/MOR/one_ring.dds" + } + + spriteType = { + name = "GFX_idea_sauron_eye" + texturefile = "gfx/interface/ideas/national_spirits/MOR/sauron_eye.dds" + } + + spriteType = { + name = "GFX_idea_generic_abandon_crown" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_abandon_crown.dds" + } + + spriteType = { + name = "GFX_idea_generic_agrarian_farming_reforms" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_farming_reforms.dds" + } + + spriteType = { + name = "GFX_idea_generic_agrarian_society" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_agrarian_society.dds" + } + + spriteType = { + name = "GFX_idea_generic_agression_wolf" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_agression_wolf.dds" + } + + spriteType = { + name = "GFX_idea_generic_air_skull_with_wings" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_air_skull_with_wings.dds" + } + + spriteType = { + name = "GFX_idea_generic_air_support_bird" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_air_support_bird.dds" + } + + spriteType = { + name = "GFX_idea_generic_aloof_neutrality" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_aloof_neutrality.dds" + } + + spriteType = { + name = "GFX_idea_generic_arctic_wolves" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_arctic_wolves.dds" + } + + spriteType = { + name = "GFX_idea_generic_bloody_treaty" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty.dds" + } + + spriteType = { + name = "GFX_idea_generic_bloody_treaty_torn" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_bloody_treaty_torn.dds" + } + + spriteType = { + name = "GFX_idea_generic_central_management" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_central_management.dds" + } + + spriteType = { + name = "GFX_idea_generic_change_in_course" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_change_in_course.dds" + } + + spriteType = { + name = "GFX_idea_generic_chess_wargames" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_chess_wargames.dds" + } + + spriteType = { + name = "GFX_idea_generic_constitutional_guarantee" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_constitutional_guarantee.dds" + } + + spriteType = { + name = "GFX_idea_generic_cross_emblem" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_cross_emblem.dds" + } + + spriteType = { + name = "GFX_idea_generic_crusade_against_democracy" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_crusade_against_democracy.dds" + } + + spriteType = { + name = "GFX_idea_generic_crush_peasant_revolt" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_crush_peasant_revolt.dds" + } + + spriteType = { + name = "GFX_idea_generic_crush_the_revolution" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_crush_the_revolution.dds" + } + + spriteType = { + name = "GFX_idea_generic_deal_with_the_devil" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil.dds" + } + + spriteType = { + name = "GFX_idea_generic_deal_with_the_devil2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_deal_with_the_devil2.dds" + } + + spriteType = { + name = "GFX_idea_generic_democratic_opposition" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_democratic_opposition.dds" + } + + spriteType = { + name = "GFX_idea_generic_duplicate_research" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_duplicate_research.dds" + } + + spriteType = { + name = "GFX_idea_generic_economic_crisis" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_economic_crisis.dds" + } + + spriteType = { + name = "GFX_idea_generic_empire" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_empire.dds" + } + + spriteType = { + name = "GFX_idea_generic_exploit_the_banks" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_exploit_the_banks.dds" + } + + spriteType = { + name = "GFX_idea_generic_flexible_foreign_policy" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy.dds" + } + + spriteType = { + name = "GFX_idea_generic_flexible_foreign_policy2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_flexible_foreign_policy2.dds" + } + + spriteType = { + name = "GFX_idea_generic_flooding" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_flooding.dds" + } + + spriteType = { + name = "GFX_idea_generic_foreign_capital" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_foreign_capital.dds" + } + + spriteType = { + name = "GFX_idea_generic_golden_wolves" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_golden_wolves.dds" + } + + spriteType = { + name = "GFX_idea_generic_gold_money" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_gold_money.dds" + } + + spriteType = { + name = "GFX_idea_generic_hidden_evil" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_hidden_evil.dds" + } + + spriteType = { + name = "GFX_idea_generic_horse_cavalry" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_horse_cavalry.dds" + } + + spriteType = { + name = "GFX_idea_generic_ideology_drift_defense" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_ideology_drift_defense.dds" + } + + spriteType = { + name = "GFX_idea_generic_improved_industries" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_improved_industries.dds" + } + + spriteType = { + name = "GFX_idea_generic_industry_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_industry_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_intel_bonus_fist" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_intel_bonus_fist.dds" + } + + spriteType = { + name = "GFX_idea_generic_king_handled" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_king_handled.dds" + } + + spriteType = { + name = "GFX_idea_generic_large_knife" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_large_knife.dds" + } + + spriteType = { + name = "GFX_idea_generic_local_self_management" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_local_self_management.dds" + } + + spriteType = { + name = "GFX_idea_generic_lone_wold" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_lone_wold.dds" + } + + spriteType = { + name = "GFX_idea_generic_men_at_arms" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_men_at_arms.dds" + } + + spriteType = { + name = "GFX_idea_generic_mobilization_trumpet" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_mobilization_trumpet.dds" + } + + spriteType = { + name = "GFX_idea_generic_monarchist_uprising" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_monarchist_uprising.dds" + } + + spriteType = { + name = "GFX_idea_generic_monarchy_crown" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_monarchy_crown.dds" + } + + spriteType = { + name = "GFX_idea_generic_morale_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_morale_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_motorized_equipment_manufacturer_2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_motorized_equipment_manufacturer_2.dds" + } + + spriteType = { + name = "GFX_idea_generic_naval_anchor" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_naval_anchor.dds" + } + + spriteType = { + name = "GFX_idea_generic_naval_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_naval_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_naval_manufacturer_1" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_1.dds" + } + + spriteType = { + name = "GFX_idea_generic_naval_manufacturer_2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_2.dds" + } + + spriteType = { + name = "GFX_idea_generic_naval_manufacturer_3" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_naval_manufacturer_3.dds" + } + + spriteType = { + name = "GFX_idea_generic_neutrality_drift_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_drift_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_neutrality_idea" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_neutrality_idea.dds" + } + + spriteType = { + name = "GFX_idea_generic_nomads" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_nomads.dds" + } + + spriteType = { + name = "GFX_idea_generic_nomad_warrior" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior.dds" + } + + spriteType = { + name = "GFX_idea_generic_nomad_warrior2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_nomad_warrior2.dds" + } + + spriteType = { + name = "GFX_idea_generic_northern_union" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_northern_union.dds" + } + + spriteType = { + name = "GFX_idea_generic_oppression" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_oppression.dds" + } + + spriteType = { + name = "GFX_idea_generic_paganism" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_paganism.dds" + } + + spriteType = { + name = "GFX_idea_generic_peasant_milita2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_peasant_milita2.dds" + } + + spriteType = { + name = "GFX_idea_generic_peasant_militia" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_peasant_militia.dds" + } + + spriteType = { + name = "GFX_idea_generic_peasant_strikes" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes.dds" + } + + spriteType = { + name = "GFX_idea_generic_peasant_strikes2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_peasant_strikes2.dds" + } + + spriteType = { + name = "GFX_idea_generic_planning_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_planning_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_political_ban" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_political_ban.dds" + } + + spriteType = { + name = "GFX_idea_generic_political_support" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_political_support.dds" + } + + spriteType = { + name = "GFX_idea_generic_pp_unity_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_pp_unity_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_prisoner" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_prisoner.dds" + } + + spriteType = { + name = "GFX_idea_generic_production_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_production_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_purge" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_purge.dds" + } + + spriteType = { + name = "GFX_idea_generic_relocate_gold_money" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_relocate_gold_money.dds" + } + + spriteType = { + name = "GFX_idea_generic_research_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_research_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_research_tech_supremacy" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_research_tech_supremacy.dds" + } + + spriteType = { + name = "GFX_idea_generic_resistance" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resistance.dds" + } + + spriteType = { + name = "GFX_idea_generic_resistance2" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resistance2.dds" + } + + spriteType = { + name = "GFX_idea_generic_resistance3" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resistance3.dds" + } + + spriteType = { + name = "GFX_idea_generic_resistance_fist" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resistance_fist.dds" + } + + spriteType = { + name = "GFX_idea_generic_resistance_locked" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resistance_locked.dds" + } + + spriteType = { + name = "GFX_idea_generic_resource_digging" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_resource_digging.dds" + } + + spriteType = { + name = "GFX_idea_generic_revolutionary_masters_of_our_own_fate" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_revolutionary_masters_of_our_own_fate.dds" + } + + spriteType = { + name = "GFX_idea_generic_risk_of_famine" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_risk_of_famine.dds" + } + + spriteType = { + name = "GFX_idea_generic_shield_against_communism" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_shield_against_communism.dds" + } + + spriteType = { + name = "GFX_idea_generic_skull_death_nor_dishonor" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_skull_death_nor_dishonor.dds" + } + + spriteType = { + name = "GFX_idea_generic_special_forces" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_special_forces.dds" + } + + spriteType = { + name = "GFX_idea_generic_spy_eye_agency" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_spy_eye_agency.dds" + } + + spriteType = { + name = "GFX_idea_generic_support_crown" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_support_crown.dds" + } + + spriteType = { + name = "GFX_idea_generic_supremacy_of_will_brain" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_supremacy_of_will_brain.dds" + } + + spriteType = { + name = "GFX_idea_generic_sword_military" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_sword_military.dds" + } + + spriteType = { + name = "GFX_idea_generic_taxed_nobility" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_taxed_nobility.dds" + } + + spriteType = { + name = "GFX_idea_generic_the_london_naval_treaty" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_the_london_naval_treaty.dds" + } + + spriteType = { + name = "GFX_idea_generic_torchbearers" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_torchbearers.dds" + } + + spriteType = { + name = "GFX_idea_generic_trade_devalued" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_trade_devalued.dds" + } + + spriteType = { + name = "GFX_idea_generic_treaty" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_treaty.dds" + } + + spriteType = { + name = "GFX_idea_generic_viking_axe_weapons" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_viking_axe_weapons.dds" + } + + spriteType = { + name = "GFX_idea_generic_volunteer_expedition_bonus" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_volunteer_expedition_bonus.dds" + } + + spriteType = { + name = "GFX_idea_generic_wolf_aggression_bite" + texturefile = "gfx/interface/ideas/national_spirits/vanilla/generic_wolf_aggression_bite.dds" + } + +} diff --git a/interface/auto_generated/spirits.gfx b/interface/auto_generated/spirits.gfx deleted file mode 100644 index 256cfd581..000000000 --- a/interface/auto_generated/spirits.gfx +++ /dev/null @@ -1,308 +0,0 @@ -spriteTypes = { - # This file was auto-generated by GFX-Maker.py - spriteType = { - name = "GFX_idea_one_ring" - texturefile = "gfx/interface/ideas/national_spirits/one_ring.dds" - } - - spriteType = { - name = "GFX_idea_sauron_eye" - texturefile = "gfx/interface/ideas/national_spirits/sauron_eye.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_alliance" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_alliance.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_alliance_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_alliance_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_expansion" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_expansion.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_expansion_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_expansion_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_hegemony" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_hegemony.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_hegemony_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_hegemony_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_industry" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_industry.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_industry_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_industry_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_martial" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_martial.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_martial_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_martial_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_peace" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_peace.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_peace_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_peace_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_research" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_research.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_research_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_research_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_trade" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_trade.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_trade_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_trade_grey.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_union" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_union.dds" - } - - spriteType = { - name = "GFX_idea_ea_resolution_icon_union_grey" - texturefile = "gfx/interface/ideas/national_spirits/elven_alliance/ea_resolution_icon_union_grey.dds" - } - - spriteType = { - name = "GFX_idea_denethor_paranoia" - texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia.dds" - } - - spriteType = { - name = "GFX_idea_denethor_paranoia_2" - texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_2.dds" - } - - spriteType = { - name = "GFX_idea_denethor_paranoia_3" - texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_3.dds" - } - - spriteType = { - name = "GFX_idea_denethor_paranoia_4" - texturefile = "gfx/interface/ideas/national_spirits/GON/denethor_paranoia_4.dds" - } - - spriteType = { - name = "GFX_idea_swan_knights" - texturefile = "gfx/interface/ideas/national_spirits/GON/swan_knights.dds" - } - - spriteType = { - name = "GFX_idea_weary_armed_forces" - texturefile = "gfx/interface/ideas/national_spirits/GON/weary_armed_forces.dds" - } - - spriteType = { - name = "GFX_idea_immortal_endurance" - texturefile = "gfx/interface/ideas/national_spirits/LTH/immortal_endurance.dds" - } - - spriteType = { - name = "GFX_idea_limited_intervention" - texturefile = "gfx/interface/ideas/national_spirits/LTH/limited_intervention.dds" - } - - spriteType = { - name = "GFX_idea_lth_aegis_of_light" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_aegis_of_light.dds" - } - - spriteType = { - name = "GFX_idea_lth_anduin_commerce" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_anduin_commerce.dds" - } - - spriteType = { - name = "GFX_idea_lth_a_necessary_evil" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_a_necessary_evil.dds" - } - - spriteType = { - name = "GFX_idea_lth_beacon_of_hope" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_beacon_of_hope.dds" - } - - spriteType = { - name = "GFX_idea_lth_blades_of_the_eldar" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_blades_of_the_eldar.dds" - } - - spriteType = { - name = "GFX_idea_lth_cele_and_gala" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_and_gala.dds" - } - - spriteType = { - name = "GFX_idea_lth_cele_and_gala_mended" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_and_gala_mended.dds" - } - - spriteType = { - name = "GFX_idea_lth_cele_gala_accord" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_cele_gala_accord.dds" - } - - spriteType = { - name = "GFX_idea_lth_decadent_nobility" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_decadent_nobility.dds" - } - - spriteType = { - name = "GFX_idea_lth_elven_factions" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_elven_factions.dds" - } - - spriteType = { - name = "GFX_idea_lth_fate_of_mortals" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_fate_of_mortals.dds" - } - - spriteType = { - name = "GFX_idea_lth_girdle_of_melian" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_girdle_of_melian.dds" - } - - spriteType = { - name = "GFX_idea_lth_great_beasts" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_great_beasts.dds" - } - - spriteType = { - name = "GFX_idea_lth_great_schism" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_great_schism.dds" - } - - spriteType = { - name = "GFX_idea_lth_harmonic_ascendancy" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_harmonic_ascendancy.dds" - } - - spriteType = { - name = "GFX_idea_lth_last_eldar" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_last_eldar.dds" - } - - spriteType = { - name = "GFX_idea_lth_last_stand" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_last_stand.dds" - } - - spriteType = { - name = "GFX_idea_lth_lead_by_example" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_lead_by_example.dds" - } - - spriteType = { - name = "GFX_idea_lth_loose_giant" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_loose_giant.dds" - } - - spriteType = { - name = "GFX_idea_lth_meritocracy" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_meritocracy.dds" - } - - spriteType = { - name = "GFX_idea_lth_noldor_elite" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_noldor_elite.dds" - } - - spriteType = { - name = "GFX_idea_lth_peasant_assembly" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_peasant_assembly.dds" - } - - spriteType = { - name = "GFX_idea_lth_prisoner_vivisections" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_prisoner_vivisections.dds" - } - - spriteType = { - name = "GFX_idea_lth_sacred_trees" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sacred_trees.dds" - } - - spriteType = { - name = "GFX_idea_lth_sacred_trees_fading" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sacred_trees_fading.dds" - } - - spriteType = { - name = "GFX_idea_lth_sealed_borders" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sealed_borders.dds" - } - - spriteType = { - name = "GFX_idea_lth_silvan_elite_warriors" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_silvan_elite_warriors.dds" - } - - spriteType = { - name = "GFX_idea_lth_silverthorn_arrows" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_silverthorn_arrows.dds" - } - - spriteType = { - name = "GFX_idea_lth_sky_soil_and_water" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_sky_soil_and_water.dds" - } - - spriteType = { - name = "GFX_idea_lth_the_new_order" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_the_new_order.dds" - } - - spriteType = { - name = "GFX_idea_lth_total_isolation" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_total_isolation.dds" - } - - spriteType = { - name = "GFX_idea_lth_unflinching_defender" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_unflinching_defender.dds" - } - - spriteType = { - name = "GFX_idea_lth_unity_in_division" - texturefile = "gfx/interface/ideas/national_spirits/LTH/lth_unity_in_division.dds" - } - -} diff --git a/interface/countrypoliticsview.gui b/interface/countrypoliticsview.gui index 13eee4f12..c12ceb6a8 100644 --- a/interface/countrypoliticsview.gui +++ b/interface/countrypoliticsview.gui @@ -500,7 +500,7 @@ guiTypes = { name = "title_1_1" position = { x = 20 y = 45 } font = "merienda_10" - text = "Chief Advisor" + text = "chief_advisor_short" maxWidth = 100 format = center alwaystransparent = yes @@ -510,7 +510,7 @@ guiTypes = { name = "title_1_2" position = { x = 120 y = 45 } font = "merienda_10" - text = "Treasurer" + text = "treasurer_short" maxWidth = 100 format = center alwaystransparent = yes @@ -520,7 +520,7 @@ guiTypes = { name = "title_1_3" position = { x = 220 y = 45 } font = "merienda_10" - text = "Spymaster" + text = "spymaster_short" maxWidth = 100 format = center alwaystransparent = yes @@ -530,7 +530,7 @@ guiTypes = { name = "title_1_4" position = { x = 320 y = 45 } font = "merienda_10" - text = "Advisor" + text = "political_advisor_short" maxWidth = 100 format = center alwaystransparent = yes @@ -540,7 +540,7 @@ guiTypes = { name = "title_1_5" position = { x = 420 y = 45 } font = "merienda_10" - text = "Advisor" + text = "political_advisor_short" maxWidth = 100 format = center alwaystransparent = yes @@ -550,7 +550,7 @@ guiTypes = { name = "title_2_1" position = { x = 20 y = 235 } font = "merienda_10" - text = "Chief Researcher" + text = "chief_researcher_short" maxWidth = 100 format = center alwaystransparent = yes @@ -560,7 +560,7 @@ guiTypes = { name = "title_2_2" position = { x = 120 y = 235 } font = "merienda_10" - text = "Architect" + text = "architect_short" maxWidth = 100 format = center alwaystransparent = yes @@ -570,7 +570,7 @@ guiTypes = { name = "title_2_3" position = { x = 220 y = 235 } font = "merienda_10" - text = "Theorist" + text = "theorist_short" maxWidth = 100 format = center alwaystransparent = yes @@ -580,7 +580,7 @@ guiTypes = { name = "title_2_4" position = { x = 320 y = 235 } font = "merienda_10" - text = "Researcher" + text = "research_advisor_short" maxWidth = 100 format = center alwaystransparent = yes @@ -590,7 +590,7 @@ guiTypes = { name = "title_2_5" position = { x = 420 y = 235 } font = "merienda_10" - text = "Researcher" + text = "research_advisor_short" maxWidth = 100 format = center alwaystransparent = yes @@ -600,7 +600,7 @@ guiTypes = { name = "title_3_1" position = { x = 20 y = 425 } font = "merienda_10" - text = "Master of War" + text = "army_chief_short" maxWidth = 100 format = center alwaystransparent = yes @@ -610,7 +610,7 @@ guiTypes = { name = "title_3_2" position = { x = 120 y = 425 } font = "merienda_10" - text = "Master of Horses" + text = "cavalry_chief_short" maxWidth = 100 format = center alwaystransparent = yes @@ -620,7 +620,7 @@ guiTypes = { name = "title_3_3" position = { x = 220 y = 425 } font = "merienda_10" - text = "Master of Ships" + text = "navy_chief_short" maxWidth = 100 format = center alwaystransparent = yes @@ -630,7 +630,7 @@ guiTypes = { name = "title_3_4" position = { x = 320 y = 425 } font = "merienda_10" - text = "High Command" + text = "high_command_short" maxWidth = 100 format = center alwaystransparent = yes @@ -640,7 +640,7 @@ guiTypes = { name = "title_3_5" position = { x = 420 y = 425 } font = "merienda_10" - text = "High Command" + text = "high_command_short" maxWidth = 100 format = center alwaystransparent = yes @@ -650,7 +650,7 @@ guiTypes = { name = "title_4_1" position = { x = 20 y = 615 } font = "merienda_10" - text = "Centralization" + text = "centralization_law" maxWidth = 100 format = center alwaystransparent = yes @@ -660,7 +660,7 @@ guiTypes = { name = "title_4_2" position = { x = 120 y = 615 } font = "merienda_10" - text = "Taxes" + text = "taxation_law_short" maxWidth = 100 format = center alwaystransparent = yes @@ -670,7 +670,7 @@ guiTypes = { name = "title_4_3" position = { x = 220 y = 615 } font = "merienda_10" - text = "Trade" + text = "trade_law_short" maxWidth = 100 format = center alwaystransparent = yes @@ -680,7 +680,7 @@ guiTypes = { name = "title_4_4" position = { x = 320 y = 615 } font = "merienda_10" - text = "Levies" + text = "conscription_law" maxWidth = 100 format = center alwaystransparent = yes @@ -690,7 +690,7 @@ guiTypes = { name = "title_4_5" position = { x = 420 y = 615 } font = "merienda_10" - text = "Mercenaries" + text = "mercenary_law_short" maxWidth = 100 format = center alwaystransparent = yes diff --git a/interface/countrytechtreeview.gui b/interface/countrytechtreeview.gui index 2f5d0b0c8..594647832 100644 --- a/interface/countrytechtreeview.gui +++ b/interface/countrytechtreeview.gui @@ -96,7 +96,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Infantry Equipment" + text = "equipment_title" maxWidth = 600 maxHeight = 32 format = center @@ -109,7 +109,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 120 y = 390} - text = "Spearman" + text = "equipment_c_title" maxWidth = 600 maxHeight = 32 format = center @@ -122,7 +122,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 180 y = 390} - text = "Swordsman" + text = "equipment_s_title" maxWidth = 600 maxHeight = 32 format = center @@ -135,7 +135,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Swords, spears, axes and maces. A common footman's equipment consists not only of their weapon, but also their uniform, tent and a weeks worth of supplies." + text = "equipment_desc" maxWidth = 600 maxHeight = 32 format = center @@ -148,7 +148,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Support Weapons" + text = "suppweapons_title" maxWidth = 400 maxHeight = 32 format = center @@ -161,7 +161,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Whether on or off the battlefield, all soldiers are likely to encounter a variety of contingencies that require specialized equipment." + text = "suppweapons_desc" maxWidth = 400 maxHeight = 32 format = center @@ -174,7 +174,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Archery Equipment" + text = "arty_title" maxWidth = 400 maxHeight = 32 format = center @@ -187,7 +187,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "A well-placed volley of arrows can rout the most steadfast enemy. Long range projectile weapons are imperative to inflict maximum damage." + text = "arty_desc" maxWidth = 400 maxHeight = 32 format = center @@ -200,7 +200,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Special Forces" + text = "forces_title" maxWidth = 400 maxHeight = 32 format = center @@ -213,7 +213,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Specialized task forces to carry out high-risk missions or fight on unique terrain are imperative for operational flexibility." + text = "forces_desc" maxWidth = 400 maxHeight = 32 format = center @@ -569,7 +569,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Horse-drawn Carriages" + text = "chariot_title" maxWidth = 500 maxHeight = 32 format = left @@ -582,7 +582,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "The invention of the spoked wheel has enabled the contruction of lightweight carriages, drawn by horses." + text = "chariot_desc" maxWidth = 200 maxHeight = 32 format = left @@ -595,7 +595,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Cavalry" + text = "cav_title" maxWidth = 500 maxHeight = 32 format = left @@ -608,7 +608,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Soldiers mounted on horseback offer superior mobility and speed, making them ideal for reconnaissance, skirmishing and heavy charges." + text = "cav_desc" maxWidth = 300 maxHeight = 32 format = left @@ -621,7 +621,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Cavalry Archers" + text = "archer_title" maxWidth = 500 maxHeight = 32 format = left @@ -1106,7 +1106,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Siege Equipment" + text = "catapult_title" maxWidth = 500 maxHeight = 32 format = center @@ -1119,7 +1119,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Breaking or circumventing high walls and other fortifications will require advanced machines." + text = "catapult_desc" maxWidth = 400 maxHeight = 32 format = center @@ -1132,7 +1132,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Ballistae" + text = "ballistae_title" maxWidth = 500 maxHeight = 32 format = center @@ -1145,7 +1145,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Breaking through plate armor or bringing down ferocious beasts may require projectiles of immense stopping power." + text = "ballistae_desc" maxWidth = 400 maxHeight = 32 format = center @@ -1429,7 +1429,7 @@ guiTypes = { textureFile = "" font = "merienda_16" borderSize = {x = 0 y = 4} - text = "Longships" + text = "longships_title" maxWidth = 500 maxHeight = 32 format = center @@ -1442,7 +1442,7 @@ guiTypes = { textureFile = "" font = "merienda_16" borderSize = {x = 0 y = 4} - text = "Galleys" + text = "galleys_title" maxWidth = 500 maxHeight = 32 format = center @@ -1455,7 +1455,7 @@ guiTypes = { textureFile = "" font = "merienda_16" borderSize = {x = 0 y = 4} - text = "Sailing Ships" + text = "sailing_ships_title" maxWidth = 500 maxHeight = 32 format = center @@ -1468,7 +1468,7 @@ guiTypes = { textureFile = "" font = "merienda_16" borderSize = {x = 0 y = 4} - text = "Frigates" + text = "frigate_title" maxWidth = 500 maxHeight = 32 format = center @@ -2285,7 +2285,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Construction" + text = "construction_title" maxWidth = 500 maxHeight = 32 format = center @@ -2298,7 +2298,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "With each brick placed, a humble village grows closer to a bustling metropolis. Foundations that withstand the test of time will keep it as such." + text = "construction_desc" maxWidth = 400 maxHeight = 32 format = center @@ -2311,7 +2311,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Metalworking" + text = "metalworking_title" maxWidth = 500 maxHeight = 32 format = center @@ -2324,7 +2324,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "The strongest steel is required for the finest weapons. A forge's fire gives it power and flexibility, and makes the metal pliable so it may withstand every battle it's called upon to fight." + text = "metalworking_desc" maxWidth = 400 maxHeight = 32 format = center @@ -2337,7 +2337,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Farming" + text = "farming_title" maxWidth = 500 maxHeight = 32 format = center @@ -2350,7 +2350,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Agriculture is the most useful and most noble employment of man. It is the lifeblood on which empires stand and fall." + text = "farming_desc" maxWidth = 400 maxHeight = 32 format = center @@ -2618,7 +2618,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Scriptorium" + text = "scriptorium_title" maxWidth = 500 maxHeight = 32 format = center @@ -2631,7 +2631,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "Mastering the processes of writing, copying and illuminating manuscripts will unlock the realms of knowledge and learning." + text = "scriptorium_desc" maxWidth = 400 maxHeight = 32 format = center @@ -2644,7 +2644,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Alchemy" + text = "alchemy_title" maxWidth = 500 maxHeight = 32 format = center @@ -2657,7 +2657,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "The study of matter as reagents may not only bring about destructive potential, but also what virtue and power lies in medicines." + text = "alchemy_desc" maxWidth = 400 maxHeight = 32 format = center @@ -2670,7 +2670,7 @@ guiTypes = { textureFile = "" font = "merienda_21" borderSize = {x = 0 y = 4} - text = "Intrigue" + text = "intrigue_title" maxWidth = 500 maxHeight = 32 format = center @@ -2683,7 +2683,7 @@ guiTypes = { textureFile = "" font = "merienda_13" borderSize = {x = 0 y = 4} - text = "The manipulation of secrecy and information is vital for defense and proseperity. Every man, friend or foe, is surrounded by a neighborhood of voluntary spies." + text = "intrigue_desc" maxWidth = 400 maxHeight = 32 format = center diff --git a/interface/custom_idea_generic.gfx b/interface/custom_idea_generic.gfx deleted file mode 100644 index 76424edda..000000000 --- a/interface/custom_idea_generic.gfx +++ /dev/null @@ -1,22 +0,0 @@ -spriteTypes = { - ## Generic ideas - SpriteType = { - name = "GFX_idea_generic_unaligned_drift_bonus" - texturefile = "gfx/interface/ideas/generic_idea_unaligned.dds" - } - SpriteType = { - name = "GFX_idea_generic_revolutionary_drift_bonus" - texturefile = "gfx/interface/ideas/generic_idea_revolutionary.dds" - } - SpriteType = { - name = "GFX_idea_generic_cooperative_drift_bonus" - texturefile = "gfx/interface/ideas/generic_idea_cooperative.dds" - } - SpriteType = { - name = "GFX_idea_generic_belligerent_drift_bonus" - texturefile = "gfx/interface/ideas/generic_idea_belligerent.dds" - } - } - - - \ No newline at end of file diff --git a/interface/customicons_gondor.gfx b/interface/customicons_gondor.gfx index e2c0c8b26..c771daf16 100644 --- a/interface/customicons_gondor.gfx +++ b/interface/customicons_gondor.gfx @@ -5,8 +5,8 @@ spriteTypes = { texturefile = "gfx/interface/ideas/GON/idea_gon_white_tree.dds" } SpriteType = { - name = "GFX_goal_generic_windmile" - texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_windmile.tga" + name = "GFX_goal_generic_windmill" + texturefile = "gfx/interface/goals/Generic/GFX_goal_generic_windmill.tga" } SpriteType = { name = "GFX_goal_generic_anvil" diff --git a/interface/customicons_mordor.gfx b/interface/customicons_mordor.gfx deleted file mode 100644 index 3a9725b08..000000000 --- a/interface/customicons_mordor.gfx +++ /dev/null @@ -1,10 +0,0 @@ -spriteTypes = { - ## Ideas Mordor - SpriteType = { - name = "GFX_idea_honor_morgoth" - texturefile = "gfx/interface/ideas/idea_honor_morgoth.dds" - } - } - - - \ No newline at end of file diff --git a/interface/lotr_fonts.gfx b/interface/lotr_fonts.gfx index 922234572..632abe0ba 100644 --- a/interface/lotr_fonts.gfx +++ b/interface/lotr_fonts.gfx @@ -91,6 +91,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_10_black" + fontfiles = { + "gfx/fonts/neucha_10" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_13_black" fontfiles = { @@ -103,6 +111,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_13_black" + fontfiles = { + "gfx/fonts/neucha_13" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_16_black" fontfiles = { @@ -115,6 +131,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_16_black" + fontfiles = { + "gfx/fonts/neucha_16" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_21_black" fontfiles = { @@ -127,7 +151,15 @@ bitmapfonts = { } } - bitmapfont = { + bitmapfont_override = { + name = "merienda_21_black" + fontfiles = { + "gfx/fonts/neucha_21" + } + languages = { "l_russian" "l_polish" } + } + + bitmapfont = { name = "merienda_10_white" fontfiles = { "gfx/fonts/merienda_10" @@ -139,6 +171,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_10_white" + fontfiles = { + "gfx/fonts/neucha_10" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_13_white" fontfiles = { @@ -151,6 +191,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_13_white" + fontfiles = { + "gfx/fonts/neucha_13" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_16_white" fontfiles = { @@ -163,6 +211,14 @@ bitmapfonts = { } } + bitmapfont_override = { + name = "merienda_16_white" + fontfiles = { + "gfx/fonts/neucha_16" + } + languages = { "l_russian" "l_polish" } + } + bitmapfont = { name = "merienda_21_white" fontfiles = { @@ -174,4 +230,12 @@ bitmapfonts = { G = { 86 172 91 } } } + + bitmapfont_override = { + name = "merienda_21_white" + fontfiles = { + "gfx/fonts/neucha_21" + } + languages = { "l_russian" "l_polish" } + } } diff --git a/localisation/english/_lotr_core/lotr_advisors_l_english.yml b/localisation/english/0_lotr_core/lotr_advisors_l_english.yml similarity index 97% rename from localisation/english/_lotr_core/lotr_advisors_l_english.yml rename to localisation/english/0_lotr_core/lotr_advisors_l_english.yml index 1cb269d1c..8abebada4 100644 --- a/localisation/english/_lotr_core/lotr_advisors_l_english.yml +++ b/localisation/english/0_lotr_core/lotr_advisors_l_english.yml @@ -7,17 +7,37 @@ # POSITIONS chief_advisor:0 "Chief Advisor" + chief_advisor_short:0 "Chief Advisor" treasurer:0 "Treasurer" + treasurer_short:0 "Treasurer" spymaster:0 "Spymaster" + spymaster_short:0 "Spymaster" + political_advisor:0 "Political Advisor" + political_advisor_short:0 "Advisor" chief_researcher:0 "Chief Researcher" + chief_researcher_short:0 "Chief Researcher" architect:0 "Architect" + architect_short:0 "Architect" + theorist:0 "Theorist" + theorist_short:0 "Theorist" research_advisor:0 "Research Advisor" - cavalry_chief:0 "Chief of Cavalry" + research_advisor_short:0 "Researcher" centralization_law:0 "Centralization" taxation_law:0 "Taxation Law" + taxation_law_short:0 "Taxes" trade_law:0 "Trade Law" + trade_law_short:0 "Trade" conscription_law:0 "Levies" mercenary_law:0 "Mercenary Employment" + mercenary_law_short:0 "Mecenaries" + army_chief:0 "Master of War" + army_chief_short:0 "Master of War" + cavalry_chief:0 "Master of Horses" + cavalry_chief_short:0 "Master of Horses" + navy_chief:0 "Master of Ships" + navy_chief_short:0 "Master of Ships" + high_command:0 "Military High Command" + high_command_short:0 "High Command" # TRAITS superiority_preacher:0 "Superiority Preacher" @@ -303,7 +323,7 @@ pedantic_organizer_advisor_effect_tooltip:0 "Will grant §G2.0%§! research speed §Yevery year§! stacking up to a maximum of §G12.0%§!." pedantic_organizer_improvement:0 "Pedantic Research Organization Improvement" - pedantic_organizer_improvement_desc:0 "Our chief researcher is carefully protocoling and oragnizing our research division, slowly driving up efficiency. \n\nCurrent bonus: [?THIS.pedantic_organizer_factor|.1%+] Research Speed." + pedantic_organizer_improvement_desc:0 "Our chief researcher is carefully protocoling and organizing our research division, slowly driving up efficiency. \n\nCurrent bonus: [?THIS.pedantic_organizer_factor|.1%+] Research Speed." pedantic_organizer_improvement_timeout:0 "Will grant an additional §Y2%§! research speed. (Repeated each year up to a total of §Y12%§!)" pedantic_organizer_improvement_timeout_improved:0 "Will grant an additional §Y4%§! research speed. (Repeated each year up to a total of §Y12%§!)" pedantic_organizer_modifier:0 "Pedantic Organizer as Chief Researcher" @@ -377,7 +397,7 @@ cadaver_experimenter_effect_tooltip:0 "Grants §G1%§! research speed for every 100k casualties we have suffered in all of our wars. (Capped at §G20%§!)" cadaver_experimenter_modifier:0 "Cadaver Experimenter Bonus" - construction_coordinator_effect_tooltip:0 "Grants §Y10%§! construction speed for every neighbour with a §Yrevolutionary§! ideology that we are not at wat with. (Capped at §Y30%§!)" + construction_coordinator_effect_tooltip:0 "Grants §Y10%§! construction speed for every neighbour with a §Yrevolutionary§! ideology that we are not at war with. (Capped at §Y30%§!)" construction_coordinator_modifier:0 "Construction Coordinator Bonus" worker_conscriptor_effect_tooltip:0 "Grants construction speed equal to our §Yrecruitable population percentage§!." diff --git a/localisation/english/_lotr_core/lotr_flags_l_english.yml b/localisation/english/0_lotr_core/lotr_flags_l_english.yml similarity index 100% rename from localisation/english/_lotr_core/lotr_flags_l_english.yml rename to localisation/english/0_lotr_core/lotr_flags_l_english.yml diff --git a/localisation/english/_lotr_generic/lotr_generic_events_l_english.yml b/localisation/english/0_lotr_core/lotr_generic_events_l_english.yml similarity index 100% rename from localisation/english/_lotr_generic/lotr_generic_events_l_english.yml rename to localisation/english/0_lotr_core/lotr_generic_events_l_english.yml diff --git a/localisation/english/generic_focuses_l_english.yml b/localisation/english/0_lotr_core/lotr_generic_focuses_l_english.yml similarity index 100% rename from localisation/english/generic_focuses_l_english.yml rename to localisation/english/0_lotr_core/lotr_generic_focuses_l_english.yml diff --git a/localisation/english/_lotr_core/lotr_mios_l_english.yml b/localisation/english/0_lotr_core/lotr_mios_l_english.yml similarity index 95% rename from localisation/english/_lotr_core/lotr_mios_l_english.yml rename to localisation/english/0_lotr_core/lotr_mios_l_english.yml index d30273473..77f6991a8 100644 --- a/localisation/english/_lotr_core/lotr_mios_l_english.yml +++ b/localisation/english/0_lotr_core/lotr_mios_l_english.yml @@ -1,5 +1,7 @@ l_english: +manage_guilds:0 "£guilds_texticon£ Manage Guilds" + # POLICIES mio_policy_carrying_capacity_eagle:0 "Train for Carrying Capacity" mio_policy_agility_eagle:0 "Train for Agility" diff --git a/localisation/english/_lotr_core/lotr_misc_l_english.yml b/localisation/english/0_lotr_core/lotr_misc_l_english.yml similarity index 97% rename from localisation/english/_lotr_core/lotr_misc_l_english.yml rename to localisation/english/0_lotr_core/lotr_misc_l_english.yml index 038269683..9f0e7b445 100644 --- a/localisation/english/_lotr_core/lotr_misc_l_english.yml +++ b/localisation/english/0_lotr_core/lotr_misc_l_english.yml @@ -13,7 +13,6 @@ random_state_add_building_slot_and_doc_x3_tt:0 "Add §G3§! §Ydockyards§! to a random_state_add_building_slot_and_civ_x4_tt:0 "Add §G4§! §Ycivilian factories§! to a random controlled state." random_state_add_building_slot_and_mil_x4_tt:0 "Add §G4§! §Ymilitary factories§! to a random controlled state." random_state_add_building_slot_and_doc_x4_tt:0 "Add §G4§! §Ydockyards§! to a random controlled state." -manage_guilds:0 "£guilds_texticon£ Manage Guilds" COLLECT_TRIBUTE_TITLE:0 "Collect Tribute" COLLECT_TRIBUTE_ACTION_DESC:0 "For 300 days they will pay us §G50%§! of their civilian economy as tribute." @@ -24,3 +23,5 @@ FOCUS_FILTER_REVOLUTIONARY:0 "Revolutionary" FOCUS_FILTER_ELVEN_FACTIONS:0 "Elven Factions" FOCUS_FILTER_COOPERATIVE:0 "Cooperative" FOCUS_FILTER_BELLIGERENT:0 "Belligerent" + +autonomy_fiefdom:0 "Fiefdom" diff --git a/localisation/english/_lotr_core/lotr_opinionmodifers_l_english.yml b/localisation/english/0_lotr_core/lotr_opinionmodifers_l_english.yml similarity index 100% rename from localisation/english/_lotr_core/lotr_opinionmodifers_l_english.yml rename to localisation/english/0_lotr_core/lotr_opinionmodifers_l_english.yml diff --git a/localisation/english/_lotr_core/lotr_races_l_english.yml b/localisation/english/0_lotr_core/lotr_races_l_english.yml similarity index 100% rename from localisation/english/_lotr_core/lotr_races_l_english.yml rename to localisation/english/0_lotr_core/lotr_races_l_english.yml diff --git a/localisation/english/0_lotr_core/lotr_ring_events_l_english.yml b/localisation/english/0_lotr_core/lotr_ring_events_l_english.yml new file mode 100644 index 000000000..6fd0fa122 --- /dev/null +++ b/localisation/english/0_lotr_core/lotr_ring_events_l_english.yml @@ -0,0 +1,35 @@ +l_english: +ring_tuto.1.t:0 "The War of the Ring" +ring_tuto.1.d:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try *once* to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.d.riv:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs Rivendell, we are the hosts and primary supporters of the fellowship's cause. We will also be able to cast a vote on the fellowship's path, as well as try and secure support for the fellowship from other nations.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.d.moa:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nThe orcs of Moria are likely to attack the fellowship and try to seize the ring. As the dwarves, we can try to prevent this from happening.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.d.lth:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs Lothlorien, we may not actively send out hunting parties to intercept the ring, but can offer the fellowship shelter and then consider our options.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.d.mor:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs (Sauron-aligned) Mordor, our goal will be to prevent the fellowship from reaching Mt Doom.\nIf we torture Gollum in time, we can send our Ringwraiths to the Shire and attempt to prevent the Ring ever reaching Rivendell.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.d.gon:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs the great kingdom of Gondor, we will not antagonize Rivendell by openly attacking the fellowship. However, having Boromir accompany the fellowship may provide other opportinities...\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" + +ring_tuto.1.a:0 "Got it!" +ring_tuto.1.b:0 "How does the combat work?" + +ring_tuto.2.t:0 "Fellowship Combat" +ring_tuto.2.d:0 "When a hunting party attacks the fellowship, the following happens:\n\n- First, the hunting party must pass a 'stealth-check', to see if they are able to locate the fellowship. The success-rate of this check directly depends on the hunting parties *average* stealth (ie. planning) skill vs. that of the fellowship. Certain encounters, like the weathertop ambush, the orc-moria raid and Argonath raid do not require this step.\n\n- If the fellowship is successfully located, combat-proper begins. Each turn a random hunting-party member will attack a random fellowship-member, and a random fellowship-member will counter-attack a random hunting-party member. Attacks can be dodged based on the dexterity (ie. logistics) skill, and a successful attack will deal the attacker's attack-skill in damage to the health (defense skill) of the defender. If the health of a character reaches zero, they die.\n\n- This process is repeated until Frodo dies, the fellowship escapes or the hunting-party retreats. If Frodo dies, the hunting-party seizes the Ring for their nation.\n\n- When launching an intercepiton-attempt, you can select an 'acceptable casualty' rate. The lower this number is, the sooner your hunting-party will try to retreat." +ring_tuto.2.a:0 "Got it!" + +fs.100.t:0 "Our Attempt at obtaining the one Ring has failed." +fs.100.d:0 "The fellowship has fended off our attempt at obtaining the one true ring and is now out of reach." +fs.100.a:0 "Unfortunate." + +fs.106.t:0 "The one ring has been destroyed." +fs.106.d:0 "It seems amidst our warmongering two hobbits slipped past and managed to destroy the one ring within the fires of mount doom. The dark Lord Sauron is dead. What is our next course of action?" +fs.106.d_elves:0 "It seems amidst our warmongering a pack of elves slipped past and managed to destroy the one ring within the fires of mount doom. The dark Lord Sauron is dead. What is our next course of action?" +fs.106.a:0 "We shall serve Saruman instead." +fs.106.b:0 "Let the strongest rule." +fs.106.c:0 "Elect a leader of our own." + +fs.107.t:0 "The One Ring's temptations prove irresistible." +fs.107.d:0 "The One Ring is having a powerful effect on us. So much so, that it's becoming dubious who is controlling who. We must be watchful not to let the Ring corrupt us entirely!" +fs.107.a:0 "Something must be done" \ No newline at end of file diff --git a/localisation/english/_lotr_core/lotr_ring_l_english.yml b/localisation/english/0_lotr_core/lotr_ring_l_english.yml similarity index 99% rename from localisation/english/_lotr_core/lotr_ring_l_english.yml rename to localisation/english/0_lotr_core/lotr_ring_l_english.yml index 93a0e142a..b1e3d94dc 100644 --- a/localisation/english/_lotr_core/lotr_ring_l_english.yml +++ b/localisation/english/0_lotr_core/lotr_ring_l_english.yml @@ -1,8 +1,4 @@ l_english: - test_desc:0 "asd [___GetRingHistory]" - - test_fs_map:0 "GFX_1_[?global.fs_steps]" - ring_decisions:0 "The One Ring" launch_interception_attempt:0 "Launch Interception Attempt" launch_interception_attempt_desc:0 "Send out a hunting party in order to forcefully seize the ring for ourselves. The hunting party will have to face the fellowship in combat." diff --git a/localisation/english/0_lotr_core/lotr_traits_l_english.yml b/localisation/english/0_lotr_core/lotr_traits_l_english.yml new file mode 100644 index 000000000..d4ecf3e25 --- /dev/null +++ b/localisation/english/0_lotr_core/lotr_traits_l_english.yml @@ -0,0 +1,21 @@ +l_english: +dislikes_mirkwood:0 "Dislikes Elves" +dislikes_erebor:0 "Dislikes Erebor" +ringbearer:0 "Ringbearer" +ringbearer_2:0 "Ringbearer" +ringbearer_2_desc:0 "One of the few individuals to posses a magical ring." +ringbearer_desc:0 "One of the few individuals to posses a magical ring." +legacyofmorgoth:0 "Legacy of Morgoth" +legacyofmorgoth_desc:0 "Most trusted advisor and heir to the first Dark Lord, Morgoth." +lackofauthority:0 "Lack of authority" +lackofauthority_desc:0 "The Free Orcs of Mordor follow only the strongest. A council of the most ferocious orcs may provide sly guidance but the orcs will retain their freedom." +all_seeing_eye:0 "All seeing eye" +all_seeing_eye_desc:0 "'Concealed within his fortress, the Lord of Mordor sees all — his gaze pierces cloud, shadow, earth and flesh. You know of what I speak, Gandalf — a great Eye… lidless… wreathed in flame.'" +puppet_queen:0 "Puppet Queen" +withering_king:0 "Withering King" +slow_speaker:0 "Slow Speaker" +cooperative_reformer:0 "Democratic Reformer" +cooperative_reformer_desc:0 "§LA firm believer in the people's right to rule themselves, this politician sees empowering them as the first priority and aims for the country to be ruled with their mandate.§!" +liberal_cooperative_paragon:0 "Liberal Democratic Paragon" +ambitious_negotiator_unaligned:0 "Ambitious Negotiator" +ambitious_negotiator_belligerent:0 "Ambitious Negotiator" \ No newline at end of file diff --git a/localisation/english/_lotr_core/lotr_units_l_english.yml b/localisation/english/0_lotr_core/lotr_units_l_english.yml similarity index 99% rename from localisation/english/_lotr_core/lotr_units_l_english.yml rename to localisation/english/0_lotr_core/lotr_units_l_english.yml index 847d188f8..6b45ec2f1 100644 --- a/localisation/english/_lotr_core/lotr_units_l_english.yml +++ b/localisation/english/0_lotr_core/lotr_units_l_english.yml @@ -19,3 +19,4 @@ troll_units:0 "Trolls" spider_infantry:0 "Spiders" heavy_infantry:0 "Heavy Infantry" ent_infantry:0 "Ents" + diff --git a/localisation/english/angmar/angmar_events_l_english.yml b/localisation/english/angmar/angmar_events_l_english.yml index 4ff5090ea..6d80553c0 100644 --- a/localisation/english/angmar/angmar_events_l_english.yml +++ b/localisation/english/angmar/angmar_events_l_english.yml @@ -28,4 +28,9 @@ angmar.10.b:0 "Why would we?" angmar.11.t:0 "[From.GetName] invites us into their faction" angmar.11.d:0 "" angmar.11.a:0 "We will join at once" -angmar.11.b:0 "We have other plans" \ No newline at end of file +angmar.11.b:0 "We have other plans" + +angmar.1.t:0 "Angmar demands Independence" +angmar.1.d:0 "Now where the Dark Council has assumed control over the Kingdom of Angmar, they demand that Gondor remove all troops from their lands, for from this day they are an autonomous and independent kingdom." +angmar.1.a:0 "There is nothing we can do." +angmar.1.b:0 "Certainly not." \ No newline at end of file diff --git a/localisation/english/arthedain/arthedain_events_l_english.yml b/localisation/english/arthedain/arthedain_events_l_english.yml new file mode 100644 index 000000000..dd8259b0b --- /dev/null +++ b/localisation/english/arthedain/arthedain_events_l_english.yml @@ -0,0 +1,45 @@ +l_english: +arthedain.1.t:0 "Arthedain asks about a Mutual Defense Pact" +arthedain.1.d:0 "Arthedain wishes us to join in a Mutual Defense Pact." +arthedain.1.a:0 "Accept" +arthedain.1.b:0 "Decline" + +arthedain.2.t:0 "Arthedain demands our territory" +arthedain.2.d:0 "Arthedain demands we cede all of our territory to their governance. Declinig their ultimatum might lead to war." +arthedain.2.a:0 "Accept" +arthedain.2.b:0 "Decline" + +arthedain.3.t:0 "Arthedain asks to join the Arnor Coalition" +arthedain.3.d:0 "Arthedain wishes us to join their faction." +arthedain.3.a:0 "Accept" +arthedain.3.b:0 "Decline" + +arthedain.4.t:0 "Arthedain wants to reform the kingdom of Arnor" +arthedain.4.d:0 "Arthedain wishes to join our territories as they were in the old ages and reform the kingdom of Arnor." +arthedain.4.a:0 "Accept" +arthedain.4.b:0 "Decline" + +arthedain.5.t:0 "[From.GetName] wants to reunite with us" +arthedain.5.d:0 "[From.GetName] and the Kingdom of Gondor where once united kingdoms. It is time we reunite once more and stand strong as the free people of Middle-earth." +arthedain.5.a:0 "United once more" +arthedain.5.b:0 "We survived without them" + +arthedain.6.t:0 "[From.GetName] requests to form a 'Grey Company'" +arthedain.6.d:0 "[FROM.GetName] proposes the establishment of a 'Grey Company', a combined force of elves and rangers tasked with safeguarding the lands of Arthedain and Rhudaur from the forces of dark.\n\nThe proposition calls for substantial support from both our elven kin and the valiant rangers of the North. The formation of the Grey Company would bind us in a pact of shared protection, uniting our strengths and striving for a safer future." +arthedain.6.a:0 "A fantastic idea!" +arthedain.6.a_tt:0 "([LTH.GetNameWithFlag], [RIV.GetNameWithFlag], [ART.GetNameWithFlag], [RHD.GetNameWithFlag]):\nIf at least §Y3§! countries support the Grey Company, [ART.GetNameWithFlag] and [RHD.GetNameWithFlag] will each receive four divisions consisting of infantry and archers." +arthedain.6.b:0 "A waste of time and resources." + +arthedain.7.t:0 "Grey Company Formed" +arthedain.7.d:0 "As a result of the steadfast cooperation between our rangers and the noble elves, we have birthed an elite force known as the Grey Company, a band of skilled fighters assembled to safeguard the lands of Arthedain and Rhudaur." +arthedain.7.a:0 "Excellent." + +arthedain.8.t:0 "Gondor asks for reunification" +arthedain.8.d:0 "A letter from Gondor arrives, proposing a unified alliance reminiscent of the old days when Arthedain and Gondor fought side by side. Gondor extends a hand in friendship, urging Arthedain to stand united against the looming shadows." +arthedain.8.a:0 "We will stand with Gondor once more." +arthedain.8.b:0 "Those days are long past." + +arthedain.9.t:0 "Gondor demands vassalization" +arthedain.9.d:0 "A stern envoy from Gondor delivers a demand: Arthedain is to become Gondor's vassal, pledging allegiance to the southern realm. The missive speaks of Gondor's dominance and the obligation for Arthedain to submit to their rule." +arthedain.9.a:0 "We owe them our allegiance." +arthedain.9.b:0 "They are in no position to make demands." \ No newline at end of file diff --git a/localisation/english/arthedain/arthedainadd_l_english.yml b/localisation/english/arthedain/arthedain_focus_l_english.yml similarity index 100% rename from localisation/english/arthedain/arthedainadd_l_english.yml rename to localisation/english/arthedain/arthedain_focus_l_english.yml diff --git a/localisation/english/bftb_events_l_english.yml b/localisation/english/bftb_events_l_english.yml deleted file mode 100644 index 0ca1730fc..000000000 --- a/localisation/english/bftb_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from vanilla game \ No newline at end of file diff --git a/localisation/english/bookmarks_l_english.yml b/localisation/english/bookmarks_l_english.yml index 1ebbac1ba..0e9992c56 100644 --- a/localisation/english/bookmarks_l_english.yml +++ b/localisation/english/bookmarks_l_english.yml @@ -14,46 +14,3 @@ MOA_WAR_OF_THE_RING_DESC:0 "" MIR_WAR_OF_THE_RING_DESC:0 "" OTHER_WAR_OF_THE_RING_DESC:0 "" - ############################################################## - BM_HISTORY_TITLE:0 "Brief History" - GATHERING_STORM_NAME:0 "Gathering Storm" - GATHERING_STORM_DESC:0 "Dark times are coming. In Europe, Hitler has consolidated his power and his attention is now increasingly drawn beyond Germany's borders. Mussolini's Italy continues to embark on daring military adventures, while the Empire of Japan stands poised to attack China in Asia. Almost twenty years have passed since the end of the Great War, and the world has yet again been doused in gasoline. A single spark may be all it takes." - HITTING_FAN_NAME:0 "The Hitting of the Fan" - HITTING_FAN_DESC:0 "Yup, that's right! That umbrella collection is about to come in real handy." - ENG_GATHERING_STORM_DESC:0 "Although the United Kingdom emerged victorious from the Great War, the foundation of its great empire was shaken to its core. A generation of the country's finest were lost in the trenches of Flanders and Northern France, while unrest spread throughout the Commonwealth and massive debts accrued.\n\nWith the trauma of the last war still in fresh memory, the country now faces the prospect of another. It is becoming increasingly clear that there will be no Peace for Our Time." - FRA_GATHERING_STORM_DESC:0 "Despite the devastation of the Great War, France has been on the road to recovery thanks to a strong economy. However, the Depression has still affected the country and the new German regime has no interest in paying the war reparations stipulated by the Treaty of Versailles.\n\nWhen the treaty was signed, a French marshal famously remarked that it was not peace, but an armistice of 20 years. Those 20 years are now rapidly running out." - GER_GATHERING_STORM_DESC:0 "A new Germany has risen. Three years have passed since the Weimar Republic was dismantled and replaced by Hitler's Third Reich. Economic stability has returned after the trying years of the Great Depression, and mass unemployment has been dealt with.\n\nThe military restrictions imposed on Germany by the Versailles Treaty are long forgotten, and the Wehrmacht grows stronger by the day. Another Weltkrieg is on the horizon." - ITA_GATHERING_STORM_DESC:0 "With the rise of belligerent, Italy has entered a new glorious era. Its forces are currently in the process of adding Ethiopia to the growing Italian colonial empire, but Mussolini's ambitions do not stop there.\n\nDominion over the Mediterranean has always been Italy's destiny, and a new order of things is taking shape in Europe. When the tidal wave of change arrives, Italy must find a place at its crest or risk being swept away." - JAP_GATHERING_STORM_DESC:0 "The Empire of Japan stands at a crossroads. Hokushin-ron, the Northern Expansion Doctrine, is favored by the Army and calls for an advance into Siberia. Nanshin-ron, the Southern Expansion Doctrine, is supported by the Navy and has the rich European colonies in Southeast Asia and the Pacific as its target. \n\nAnd then, of course, there is always China. Japan possesses a formidable military, but its industries are starving for resources and time is running out. Which path to choose?" - SOV_GATHERING_STORM_DESC:0 "When the dust settled after the Russian Civil War, the U.S.S.R. had emerged as the undisputed ruler over most of what once constituted the Russian Empire. Rapid industrialization and collectivization followed, often at a great cost in human lives. \n\nThe Soviet Union is now faced with the threat of a resurgent Germany to the west, and a belligerent Japan in the east. Of course, there are also internal threats within the ranks of the Communist Party to contend with..." - USA_GATHERING_STORM_DESC:0 "The United States retreated back into isolation at the end of the last war and enjoyed a period of economic prosperity during the Roaring Twenties. This came to a dramatic end when the nation was gripped by the Great Depression.\n\nAmerica's policy of non-intervention in foreign wars has stood firm, but tensions are rising in both Europe and Asia. The 'Great Neutral' may find itself drawn into the maelstrom whether it wants to or not." - OTHER_GATHERING_STORM_DESC:0 "The nations of the world, great and small, are not all content to hold their breath awaiting the outbreak of another global conflict. From major powers on the brink of civil war to the many nations formed and transformed by the Great War, all will have to make difficult decisions and balance ideals with pragmatism to have an impact on the future of the world." - POL_GATHERING_STORM_DESC:1 "After centuries in which the Polish nation has been divided between three empires, Poland now stands independent once again. But its position is not an easy one. \n\nIn the east, the Soviet Union has not forgotten the humiliating defeat in the Polish-Soviet war. \n\nIn the west, German Führer Adolf Hitler makes no secret of his desire for more "living space" - and that the former German areas now under Polish control will be the first step to achieve it." - CAN_GATHERING_STORM_DESC:0 "Canada entered the Great War as a mere colony and left it as a nation. Born in the mud of Passchendaele, Canada now takes its first few uncertain steps onto the world stage. \n\nHobbled by the Great Depression and with internal divisions between Anglophones and Francophones, the future of this new nation looks anything but secure." - AST_GATHERING_STORM_DESC:0 "Australians earned their place in the history books of the Great War in blood. The sacrifices made in the Gallipolli campaign have not been forgotten - and neither were those who ordered it. \n\nAustralia now stands at a crossroads: should she stay with her colonial master, about to be drawn into yet another conflict in distant Europe, or should the focus be on the threats that are appearing closer to home?" - SAF_GATHERING_STORM_DESC:0 "When the Great War began, many in South Africa refused to take up arms for their British masters. The South African military spent most of the Great War chasing around German forces in their African colonies, with limited success. \n\nNow a new war looms on the horizon. Then as now, there are some in South Africa that think the country shouldn't be fighting against the Germans at all. Some even believe that the time has come for the descendents of the Boers to make their bid for the liberty that was denied to their forefathers." - NZL_GATHERING_STORM_DESC:0 "The tiny nation in the South Pacific fought bravely in the Great War, suffering high casualties in the bloody battles at Gallipoli and on the western front. Nearly half the men of fighting age had served in the fighting overseas, and many had not returned.\n\nSome twenty years after end of the Great War, the people of New Zealand look anxiously at the world stage, for this time, the threat of war seems to draw ever closer to their own home..." - RAJ_GATHERING_STORM_DESC:0 "The crown jewel of the British Empire, the Raj of India is a strange combination of imperial power and imperial powerlessness. A tiny elite of British civil servants rule over a vast subcontinent filled with hundreds of millions of subjects. From their ranks recruits the Indian Army, which fought bravely in the Great War.\n\nIndian leaders hoped that the sacrifices made in the last war would help India gain her independence from Britain, but so far, that hope has been disappointed. With a new war looming, many believe that the time has come to take that freedom - by whatever means necessary." - BLITZKRIEG_NAME:0 "Blitzkrieg" - BLITZKRIEG_DESC:0 "In the last few years the world has seen some new wars break out in Europe and Asia. Spain is now governed by nationalists and Japan has fought both the Soviet Union and China for territory, the latter being a more successful battle for Japan. The new non-aggression pact between the Soviet Union and Germany may be bad news for the rest of Europe." - ENG_BLITZKRIEG_DESC:0 "Although the United Kingdom emerged victorious from the Great War, the foundation of its great empire was shaken to its core. A generation of the country's finest were lost in the trenches of Flanders and Northern France, while unrest spread throughout the Commonwealth and massive debts accrued.\n\nWith the trauma of the last war still in fresh memory, the country now faces the prospect of another. It is becoming increasingly clear that there will be no Peace for Our Time." - FRA_BLITZKRIEG_DESC:0 "The Great War still fresh in its memory, France faces a new conflict after Germany showed they have no intention to keep the peace. Strengthening border defenses and choosing Allies wisely may very well be the way for France to avoid a disastrous war.\n\n France was victorious once before, this time shall be no different!" - GER_BLITZKRIEG_DESC:0 "After the remilitarization of the Rhineland, the French and the British grew increasingly suspicious of Germany's intentions. The Munich Agreement gave Germany permission to annex the Sudetenland for the sake of its German people. The Molotov-Ribbentrop pact guarantees non-aggression between Germany and the Soviet Union, but also specifies the partitioning of Poland between the two nations. \n\nGermany has waited too long for this moment. The time to act is now!" - JAP_BLITZKRIEG_DESC:0 "War is raging in the Southeast. Even though Japan suffered some losses early in '39, a big portion of Chinese territory is under Japanese control. Tension is rising in Europe, and while the Soviet Union is focusing their attention on those matters, they shouldn't interfere in the war in Asia. \n\nWhen China's resources are in Japanese hands, the Soviets will be easy to deal with." - ITA_BLITZKRIEG_DESC:0 "Mussolini, the dictator of Italy, achieved some fame as a peace keeper for his part in the Munich agreement a year ago. However, German territorial expansion has made Italy see there is more land to claim if an understanding with the Germans could be reached. \n\nAlbania has been conquered merely as a taste of Italy's military capabilities, and the rest of the world would do well to worry." - SOV_BLITZKRIEG_DESC:0 "Supporting Manuel Azaña and the 'Second Spanish Republic' during the Spanish Civil War has clearly shown where the Soviet Union stands in relation to Italy and Germany. Victorious over the Japanese army in several recent border conflicts, the Soviet Union currently seems a power too major for any single country to oppose. \n\nThe promise made by Germany to partition the Baltic States and Poland is welcome at this time." - USA_BLITZKRIEG_DESC:0 "The rising tension in Europe is worrying. Although not yet a real concern for the United States, the aggression shown by Germany could soon be heard all over the world. While things are quite peaceful in the west, military preparations may not be a bad idea, all things considered. \n\nShould the United States get drawn into another war, they will be the ones to end it." - OTHER_BLITZKRIEG_DESC:0 "The nations of the world, great and small, are not all content to hold their breath awaiting the outbreak of another global conflict. From major powers on the brink of civil war to the many nations formed and transformed by the Great War, all will have to make difficult decisions and balance ideals with pragmatism to have an impact on the future of the world." - POL_BLITZKRIEG_DESC:0 "After centuries in which the Polish nation has been divided between three empires, Poland now stands independent once again. But its position is not an easy one. \n\nIn the east, the Soviet Union has not forgotten the humiliating defeat in the Polish-Soviet war. \n\nIn the west, German Führer Adolf Hitler makes no secret of his desire for more "living space" - and that the former German areas now under Polish control will be the first step to achieve it." - CAN_BLITZKRIEG_DESC:0 "Canada entered the Great War as a mere colony and left it as a nation. Born in the mud of Passchendaele, Canada now takes its first few uncertain steps onto the world stage. \n\nHobbled by the Great Depression and with internal divisions between Anglophones and Francophones, the future of this new nation looks anything but secure." - AST_BLITZKRIEG_DESC:0 "Australians earned their place in the history books of the Great War in blood. The sacrifices made in the Gallipolli campaign have not been forgotten - and neither were those who ordered it. \n\nAustralia now stands at a crossroads: should she stay with her colonial master, about to be drawn into yet another conflict in distant Europe, or should the focus be on the threats that are appearing closer to home?" - SAF_BLITZKRIEG_DESC:0 "When the Great War began, many in South Africa refused to take up arms for their British masters. The South African military spent most of the Great War chasing around German forces in their African colonies, with limited success. \n\nNow a new war looms on the horizon. Then as now, there are some in South Africa that think the country shouldn't be fighting against the Germans at all. Some even believe that the time has come for the descendants of the Boers to make their bid for the liberty that was denied to their forefathers." - NZL_BLITZKRIEG_DESC:0 "The tiny nation in the South Pacific fought bravely in the Great War, suffering high casualties in the bloody battles at Gallipoli and on the western front. Nearly half the men of fighting age had served in the fighting overseas, and many had not returned.\n\nSome twenty years after end of the Great War, the people of New Zealand look anxiously at the world stage, for this time, the threat of war seems to draw ever closer to their own home..." - RAJ_BLITZKRIEG_DESC:0 "The crown jewel of the British Empire, the Raj of India is a strange combination of imperial power and imperial powerlessness. A tiny elite of British civil servants rule over a vast subcontinent filled with hundreds of millions of subjects. From their ranks recruits the Indian Army, which fought bravely in the Great War.\n\nIndian leaders hoped that the sacrifices made in the last war would help India gain her independence from Britain, but so far, that hope has been disappointed. With a new war looming, many believe that the time has come to take that freedom - by whatever means necessary." - CZE_GATHERING_STORM_DESC:0 "During the Great War, Czech troops fought alongside the Entente forces all over Europe in an effort to secure recognition for their nation. Their efforts were successful and Czechoslovakia rose from the ashes of the Austro-Hungarian Empire. \n\nSince their explosive entry into statehood Czechoslovakia formed the 'Little Entente' alliance with Yugoslavia and Romania with the aim of suppressing Hungary's efforts to restore the Austro-Hungarian Empire, although as resurgent German power grows the political landscape of Europe is rapidly changing." - HUN_GATHERING_STORM_DESC:0 "One half of the late Austro-Hungarian Empire, Hungary was treated as a defeated enemy by the victorious Entente after the Great War. In the Treaty of Trianon, the country lost almost two thirds of its territory. Millions of ethnic Hungarians found themselves living outside its borders, and its economy was left in ruins. Harsh restrictions on rearmament were supposed to ensure that Hungary could never again threaten the peace in Europe. \n\nBut with the political climate in Europe shifting, the time may have come to finally right the wrongs of the past, and regain the former glory of the nation." - ROM_GATHERING_STORM_DESC:0 "Romania found herself on the winning side of the Great War, and as a result gained new territories and people - not all of whom were Romanians. To guard against the revanchionist desires of the countries that were forced to cede land, Romania has created a web of alliances all across the Balkans. In recent years, however, the country has concerned itself mostly with domestic matters, and the government of King Carol II has allowed these alliances to lapse. \n\nAs the political situation in Europe changes, Romania may well find herself standing alone - and vulnerable." - HUN_BLITZKRIEG_DESC:0 "One half of the late Austro-Hungarian Empire, Hungary was treated as a defeated enemy by the victorious Entente after the Great War. In the Treaty of Trianon, the country lost almost two thirds of its territory. Millions of ethnic Hungarians found themselves living outside its borders, and its economy was left in ruins. Harsh restrictions on rearmament were supposed to ensure that Hungary could never again threaten the peace in Europe. \n\nBut with the political climate in Europe shifting, the time may have come to finally right the wrongs of the past, and regain the former glory of the nation." - ROM_BLITZKRIEG_DESC:0 "Romania found herself on the winning side of the Great War, and as a result gained new territories and people - not all of whom were Romanians. To guard against the revanchist desires of the countries that were forced to cede land, Romania has created a web of alliances all across the Balkans. In recent years, however, the country has concerned itself mostly with domestic matters, and the government of King Carol II has allowed these alliances to lapse. \n\nAs the political situation in Europe changes, Romania may well find herself standing alone - and vulnerable." - YUG_GATHERING_STORM_DESC:0 "Yugoslavia came into existence after the new Kingdom of Serbs, Croats and Slovenes merged with the formerly independent Kingdom of Serbia in 1922. Initially Yugoslavia joined both the Little Entente and the Balkan Pact to secure their independence, but recently the assassination of King Alexander combined with growing internal pressure from nationalists and external pressure from Italy and Germany has caused drastic upheaval and reevaluation of their political and strategic position." - YUG_GATHERING_BLITZ_DESC:0 "Yugoslavia came into existence after the new Kingdom of Serbs, Croats and Slovenes merged with the formerly independent Kingdom of Serbia in 1922. Initially Yugoslavia joined both the Little Entente and the Balkan Pact to secure their independence, but recently growing internal pressure from nationalists and external pressure from Italy and Germany has caused drastic upheaval and reevaluation of their political and strategic position." diff --git a/localisation/english/cardolan/cardolan_l_english.yml b/localisation/english/cardolan/cardolan_l_english.yml new file mode 100644 index 000000000..9a97a27da --- /dev/null +++ b/localisation/english/cardolan/cardolan_l_english.yml @@ -0,0 +1,5 @@ +l_english: +cardolan.1.t:0 "Felonious assault on the city of Bree" +cardolan.1.d:0 "Tonight a group of nine black riders conducted a raid on the city of Bree. They left behind several bodies and were allegedly after a group of Shire Hobbits that had arrived shortly before the assault. There is no trace of the Hobbits and the Riders were last seen heading east with some haste, supposedly carrying some highly valuable ring." +cardolan.1.a:0 "There is nothing to be done." +cardolan.1.b:0 "These Hobbits stand no chance if there are Black Riders after them! Let's try and find them..." \ No newline at end of file diff --git a/localisation/english/dod_events_l_english.yml b/localisation/english/dod_events_l_english.yml deleted file mode 100644 index ebcec18eb..000000000 --- a/localisation/english/dod_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from the vanilla game \ No newline at end of file diff --git a/localisation/english/entwood/entwood_events_l_english.yml b/localisation/english/entwood/entwood_events_l_english.yml new file mode 100644 index 000000000..99960355d --- /dev/null +++ b/localisation/english/entwood/entwood_events_l_english.yml @@ -0,0 +1,38 @@ +l_english: +entwood.1.t:0 "Two 'Hobbits' speak of war" +entwood.1.d:0 "Two creatures that call themselves 'Hobbits' have arrived in our woods. After a lengthy meeting the Ent Council has determined that these 'Hobbits' are not Orcs. One of them has been very hasty. He claims the Ents should seek revenge and attack Saruman now, where he is vulnerable. But what does a Hobbit know of us Ents?" +entwood.1.a:0 "The Hobbit is wise. We go to war." +entwood.1.b:0 "The Hobbit is too hasty. We must discuss his proposition further." + +entwood.2.t:0 "The Entwives have been sighted in Mirkwood" +entwood.2.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in the southern parts of the Mirkwood." +entwood.2.a:0 "Mirkwood? Never heard of it." + +entwood.3.t:0 "The Entwives have been sighted in the Brown Lands" +entwood.3.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in the Brown Lands, a region to the North of the Dead Marshes." +entwood.3.a:0 "A former Ent Settlement." + +entwood.4.t:0 "The Entwives have been sighted in Lothlorien" +entwood.4.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in Lothlorien." +entwood.4.a:0 "The Entwives must be recovered." + +entwood.5.t:0 "The Entwives have been sighted in Lindon" +entwood.5.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in Lindon." +entwood.5.a:0 "How did they get there?" + +entwood.6.t:0 "The Ents request the Entwives be returned" +entwood.6.d:0 "The Ents of the Entwood claim their long lost Entwives are located within our domains. They request that safe passage be granted to them so they may reunite once more." +entwood.6.a:0 "Sure." +entwood.6.b:0 "We owe the Ents nothing." + +entwood.7.t:0 "Saruman burns the Forest of Fangorn!" +entwood.7.d:0 "Saruman has ordered his armies to burn down the forest of Fangorn in order to fuel his industrial warmachine. They've come with fire! They've come with axes! Gnawing, biting, breaking, hacking, burning! Destroyers and usurpers, curse them!" +entwood.7.a:0 "The wizard has lost his mind." + +entwood.8.t:0 "[From.GetLeader] has denied our request." +entwood.8.d:0 "[From.GetLeader] will not see the Entwives returned to us." +entwood.8.a:0 "Without the Entwives, we are lost." + +entwood.9.t:0 "[From.GetLeader] has granted our request." +entwood.9.d:0 "[From.GetLeader] will see that the Entwives are returned to us safely." +entwood.9.a:0 "Once again, Entish Diplomacy succeeds." \ No newline at end of file diff --git a/localisation/english/erebor/erebor_events_l_english.yml b/localisation/english/erebor/erebor_events_l_english.yml index f0ac731f4..78360643d 100644 --- a/localisation/english/erebor/erebor_events_l_english.yml +++ b/localisation/english/erebor/erebor_events_l_english.yml @@ -18,4 +18,14 @@ erebor.5.b:0 "This is beneath us." erebor.6.t:0 "[From.GetName] wants to join our faction" erebor.6.d:0 "Citing fears of the growing powers of Mordor and its allies, diplomats from [From.GetName] have submitted a request to join our alliance." erebor.6.a:0 "They are welcome to our faction." -erebor.6.c:0 "We stand stronger alone." \ No newline at end of file +erebor.6.c:0 "We stand stronger alone." + +erebor.1.t:0 "Erebor demands submission!" +erebor.1.d:0 "The dwarves of Erebor have laid claim on Dale and Esgaroth. The city had once been part of the dwarven domains, but that time ended long ago when dwarven greed brought fire and death upon our people! Will we stand and fight or bend the knee to Erebor?" +erebor.1.a:0 "This is a battle we cannot win. Stand down." +erebor.1.b:0 "If the dwarves want blood to be spilled, so it shall be." + +erebor.2.t:0 "Join with Erebor" +erebor.2.d:0 "The dwarflords wish to form an alliance." +erebor.2.a:0 "Accept." +erebor.2.b:0 "Decline." \ No newline at end of file diff --git a/localisation/english/events_l_english.yml b/localisation/english/events_l_english.yml deleted file mode 100644 index 55b521c01..000000000 --- a/localisation/english/events_l_english.yml +++ /dev/null @@ -1,1380 +0,0 @@ -l_english: - ###################################### - ring_tuto.1.t:0 "The War of the Ring" - ring_tuto.1.d:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try *once* to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.d.riv:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs Rivendell, we are the hosts and primary supporters of the fellowship's cause. We will also be able to cast a vote on the fellowship's path, as well as try and secure support for the fellowship from other nations.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.d.moa:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nThe orcs of Moria are likely to attack the fellowship and try to seize the ring. As the dwarves, we can try to prevent this from happening.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.d.lth:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs Lothlorien, we may not actively send out hunting parties to intercept the ring, but can offer the fellowship shelter and then consider our options.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.d.mor:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs (Sauron-aligned) Mordor, our goal will be to prevent the fellowship from reaching Mt Doom.\nIf we torture Gollum in time, we can send our Ringwraiths to the Shire and attempt to prevent the Ring ever reaching Rivendell.\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.d.gon:0 "The War of the Ring evolves around many things, but of course, a small golden trinket lies at the center of it all: The One Ring. \n\nIn this mod, the One Ring adopts the form of a National Spirit that grants a very significant stat boost to all your divisions.\nA few months into the game, Bilbo's 111st birthday celebrations will take place, and the 'Quest for the Ring' decisions will unlock. Countries that control states the fellowship passes through can try to intercept the fellowship and seize the ring for themselves. The likelihood of these attempts being successful directly depends on the strength of the fellowship protecting Frodo.\n\nOnce the Ring reaches Rivendell, Elrond's Council will be invoked. The Nations of Gondor, Mirkwood and Erebor can then choose to add either their finest warrior, a decent replacement or no one at all to the Fellowship, as well as vote on which path the fellowship should take.\n\nAs the great kingdom of Gondor, we will not antagonize Rivendell by openly attacking the fellowship. However, having Boromir accompany the fellowship may provide other opportinities...\n\nIf no nation manages to obtain the ring before it reaches Mt. Doom, the Ring will be destroyed and the nation of Mordor will be severely weakened.\nIf a nation that has the ring capitulates, their attacker takes the ring from them.\n\nGood luck and have fun!" - ring_tuto.1.a:0 "Got it!" - ring_tuto.1.b:0 "How does the combat work?" - ###################################### - ring_tuto.2.t:0 "Fellowship Combat" - ring_tuto.2.d:0 "When a hunting party attacks the fellowship, the following happens:\n\n- First, the hunting party must pass a 'stealth-check', to see if they are able to locate the fellowship. The success-rate of this check directly depends on the hunting parties *average* stealth (ie. planning) skill vs. that of the fellowship. Certain encounters, like the weathertop ambush, the orc-moria raid and Argonath raid do not require this step.\n\n- If the fellowship is successfully located, combat-proper begins. Each turn a random hunting-party member will attack a random fellowship-member, and a random fellowship-member will counter-attack a random hunting-party member. Attacks can be dodged based on the dexterity (ie. logistics) skill, and a successful attack will deal the attacker's attack-skill in damage to the health (defense skill) of the defender. If the health of a character reaches zero, they die.\n\n- This process is repeated until Frodo dies, the fellowship escapes or the hunting-party retreats. If Frodo dies, the hunting-party seizes the Ring for their nation.\n\n- When launching an intercepiton-attempt, you can select an 'acceptable casualty' rate. The lower this number is, the sooner your hunting-party will try to retreat." - ring_tuto.2.a:0 "Got it!" - ###################################### - rivendell.2.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." - rivendell.2.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." - rivendell.2.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." - ###################################### - rivendell.3.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." - rivendell.3.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." - rivendell.3.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." - ###################################### - rivendell.4.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor and provide an option to try to take the ring ourselves." - rivendell.4.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." - rivendell.4.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." - ###################################### - mordor_civil_war:0 "Orcs march agains Sauron" - mordor.1.t:0 "Civil War!" - mordor.1.d:0 "A horde of influential orcs have risen up and taken arms against tyrannical ruling. They claim that Saurons defeat at the hands of the Last Alliance proved him a weak leader. In response, the Dark Lord has gathered his most loyal servants and issued a black speech ultimatium. The rebels at Barad-dûr have been purged and Sauron stands ready to destroy the traitors. A significant portion of the military have sided with these Anarchists. Despite their poor training, their enthusiasm remains unquestioned.\n\nThe battle-lines have been drawn - which faction should we support?" - mordor.1.a:0 "The Dark Lord Sauron!" - mordor.1.b:0 "The Free Orcs of Mordor!" - ###################################### - mordor.2.t:0 "Mordor demands submission" - mordor.2.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." - mordor.2.a:0 "Accept" - mordor.2.b:0 "Decline" - ###################################### - mordor.4.t:0 "Mordor demands submission" - mordor.4.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." - mordor.4.a:0 "Accept" - mordor.4.b:0 "Decline" - ###################################### - mordor.6.t:0 "Mordor demands submission" - mordor.6.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." - mordor.6.a:0 "Accept" - mordor.6.b:0 "Decline" - ###################################### - mordor.3.t:0 "Dagorlad submits" - mordor.3.d:0 "Dagorlad has agreed to serve our needs unconditionally." - mordor.3.a:0 "Accept" - ###################################### - mordor.5.t:0 "Rhun submits" - mordor.5.d:0 "Rhun has agreed to serve our needs unconditionally." - mordor.5.a:0 "Accept" - ###################################### - mordor.7.t:0 "Harad submits hesitantly" - mordor.7.d:0 "Harad has agreed to serve our needs, but a large consensus have condemned this move, which might lead to an uprising." - mordor.7.a:0 "Accept" - ###################################### - mordor.8.t:0 "Harad stands firm" - mordor.8.d:0 "Harad has declined our offer of servitude. But our calls have been heard by the people of Harad, an uprising may be sparked." - mordor.8.a:0 "Accept" - ###################################### - mordor.9.t:0 "The Haradrim object to Saurons rule" - mordor.9.d:0 "A large group of anti-Mordor advocates have taken up arms against us, refusing the rule of our new soverign, Sauron." - mordor.9.a:0 "Fine. It will be their blood we spill first." - ###################################### - mordor.10.t:0 "Haradwaith claims sovereignty" - mordor.10.d:0 "A large group of pro-Mordor advocates have taken up arms against us, no doubt Mordor will join their efforts." - mordor.10.a:0 "There shall be blood, then." - ###################################### - mordor.11.t:0 "The Hunt for the One Ring: The Dead Marshes" - mordor.11.d:0 "The One Ring draws closer to its master. Shall we send a force to retrieve it or wait for it to return itself to Sauron?" - mordor.11.a:0 "Search the Dead Marshes." - mordor.11.b:0 "Await its inevitable return." - ###################################### - mordor.12.t:0 "The Hunt for the One Ring: The Shire" - mordor.12.d:0 "Someone has used the ring in a far away place. The dark lord can sense it. Futhermore, the last known ring carrier, Gollum, has told us where the One Ring is now. A foreign place called The Shire. The return of the Nazgul comes at a perfect time, shall they go fetch the ring they desire more than anything else?" - mordor.12.a:0 "Send the Black Riders." - mordor.12.b:0 "What is a Shire?" - ###################################### - rohan.1.t:0 "Theoden names Grima Wormtongue his chief advisor" - rohan.1.d:0 "Our beloved King has requested Grima Wormtongue to be his personal advisor. Grima's pro-Isengard rethoric has raised doubts even amongst the King's closest confidents. Even Eomer, heir to the throne, has spoken out against this decision, yet the King insists." - rohan.1.a:0 "If the King wishes it, it shall be done." - ###################################### - arthedain.1.t:0 "Arthedain asks about a Mutual Defense Pact" - arthedain.1.d:0 "Arthedain wishes us to join in a Mutual Defense Pact." - arthedain.1.a:0 "Accept" - arthedain.1.b:0 "Decline" - ###################################### - arthedain.2.t:0 "Arthedain demands our territory" - arthedain.2.d:0 "Arthedain demands we cede all of our territory to their governance. Declinig their ultimatum might lead to war." - arthedain.2.a:0 "Accept" - arthedain.2.b:0 "Decline" - ###################################### - arthedain.3.t:0 "Arthedain asks to join the Arnor Coalition" - arthedain.3.d:0 "Arthedain wishes us to join their faction." - arthedain.3.a:0 "Accept" - arthedain.3.b:0 "Decline" - ###################################### - arthedain.4.t:0 "Arthedain wants to reform the kingdom of Arnor" - arthedain.4.d:0 "Arthedain wishes to join our territories as they were in the old ages and reform the kingdom of Arnor." - arthedain.4.a:0 "Accept" - arthedain.4.b:0 "Decline" - ###################################### - arthedain.5.t:0 "[From.GetName] wants to reunite with us" - arthedain.5.d:0 "[From.GetName] and the Kingdom of Gondor where once united kingdoms. It is time we reunite once more and stand strong as the free people of Middle-earth." - arthedain.5.a:0 "United once more" - arthedain.5.b:0 "We survived without them" - ###################################### - arthedain.6.t:0 "[From.GetName] requests to form a 'Grey Company'" - arthedain.6.d:0 "[FROM.GetName] proposes the establishment of a 'Grey Company', a combined force of elves and rangers tasked with safeguarding the lands of Arthedain and Rhudaur from the forces of dark.\n\nThe proposition calls for substantial support from both our elven kin and the valiant rangers of the North. The formation of the Grey Company would bind us in a pact of shared protection, uniting our strengths and striving for a safer future." - arthedain.6.a:0 "A fantastic idea!" - arthedain.6.a_tt:0 "([LTH.GetNameWithFlag], [RIV.GetNameWithFlag], [ART.GetNameWithFlag], [RHD.GetNameWithFlag]):\nIf at least §Y3§! countries support the Grey Company, [ART.GetNameWithFlag] and [RHD.GetNameWithFlag] will each receive four divisions consisting of infantry and archers." - arthedain.6.b:0 "A waste of time and resources." - ###################################### - arthedain.7.t:0 "Grey Company Formed" - arthedain.7.d:0 "As a result of the steadfast cooperation between our rangers and the noble elves, we have birthed an elite force known as the Grey Company, a band of skilled fighters assembled to safeguard the lands of Arthedain and Rhudaur." - arthedain.7.a:0 "Excellent." - ###################################### - arthedain.8.t:0 "Gondor asks for reunification" - arthedain.8.d:0 "A letter from Gondor arrives, proposing a unified alliance reminiscent of the old days when Arthedain and Gondor fought side by side. Gondor extends a hand in friendship, urging Arthedain to stand united against the looming shadows." - arthedain.8.a:0 "We will stand with Gondor once more." - arthedain.8.b:0 "Those days are long past." - ###################################### - arthedain.9.t:0 "Gondor demands vassalization" - arthedain.9.d:0 "A stern envoy from Gondor delivers a demand: Arthedain is to become Gondor's vassal, pledging allegiance to the southern realm. The missive speaks of Gondor's dominance and the obligation for Arthedain to submit to their rule." - arthedain.9.a:0 "We owe them our allegiance." - arthedain.9.b:0 "They are in no position to make demands." - ###################################### - rohan.2.t:0 "The King is suffering under a powerful illness" - rohan.2.d:0 "King Theoden's health has been declining steadily for the last weeks. All government programmes have come to a halt and Prince Eomer's request to rule in his stead has been dismissed by Grima Wormtongue, the King's primary advisor. Conspiracy theorists have put the blame on Saruman, but no evidence has been found to support these wild claims." - rohan.2.a:0 "May he recover soon." - ###################################### - rohan.3.t:0 "Eomer goes into exile" - rohan.3.d:0 "After several clashes with the King's primary advisor, Prince Theoden has gathered a host of Rohirim Riders and left the capital of Edoras. His intentions are currently unknown." - rohan.3.a:0 "A great loss for the realm." - ###################################### - rohan.4.t:0 "Prince Théodred is dead. Saruman takes the Fords." - rohan.4.d:0 "A horde of Orcs overran the Fords of Isen burning everything they came across and killing the valiant defender of Rohan, our Prince Théodred. Marshal Grimbold defended him and recovered his body single handedly." - rohan.4.a:0 "May he rest in peace." - ###################################### - rohan.5.t:0 "Saruman demands the Westmarch" - rohan.5.d:0 "The troublemaker Saruman has demanded we cede control over the westmarch. He claims we are planning to attack Orthanc from there and that our control over it is a threat to the 'peaceful relations' between Isengard and Rohan.\nWe may buy some time by surrendering it or risk an all out war with Isengard." - rohan.5.a:0 "He may have it." - rohan.5.b:0 "Over our dead bodies!" - ###################################### - rohan.6.t:0 "Gandalf the Grey arrives in Edoras" - rohan.6.d:0 "'He is a herald of woe. Late is the hour in which this conjurer chooses to appear. Lathspell I name him. Ill news is in ill guest.' Gandalf the Grey has arrived in Edoras and has requested a meeting with the King. The King is ill and weak, but perhaps the wizard can help him recover?" - rohan.6.a:0 "He may enter." - rohan.6.b:0 "He is not welcome here." - ###################################### - rohan.7.t:0 "Lady Eowyn is to marry Grima Wormtongue" - rohan.7.d:0 "By the King's royal decree, his niece Eowyn is to marry the King's primary advisor Grima Wormtongue. The King commands that all necessary arrangements be made within the next week. Eowyn, rather hesitantly, has agreed to said proposal." - rohan.7.a:0 "So be it." - ###################################### - rohan.8.t:0 "Aid arrives from Gondor" - rohan.8.d:0 "In a gesture of solidarity, Gondor has sent valuable equipment and aid to aid Rohan in its fight against Isengard. The assistance, ranging from weaponry to essential supplies." - rohan.8.a:0 "Much appreciated." - ###################################### - rivendell.5.t:0 "Elven Anti-War Treaty" - rivendell.5.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" - rivendell.5.a:0 "Accept." - rivendell.5.b:0 "Decline." - ###################################### - rivendell.6.t:0 "Elven Anti-War Treaty" - rivendell.6.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" - rivendell.6.a:0 "Accept." - rivendell.6.b:0 "Decline." - ###################################### - rivendell.7.t:0 "Elven Anti-War Treaty" - rivendell.7.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" - rivendell.7.a:0 "Accept." - rivendell.7.b:0 "Decline." - ###################################### - rivendell.8.t:0 "Rivendell asks for Cooperation" - rivendell.8.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" - rivendell.8.a:0 "Accept." - rivendell.8.b:0 "Decline." - ###################################### - rivendell.9.t:0 "Rivendell asks for Cooperation" - rivendell.9.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" - rivendell.9.a:0 "Accept." - rivendell.9.b:0 "Decline." - ###################################### - rivendell.10.t:0 "Rivendell asks for Cooperation" - rivendell.10.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" - rivendell.10.a:0 "Accept." - rivendell.10.b:0 "Decline." - ###################################### - rivendell.11.t:0 "Rivendell forms an anti-collectivist Alliance" - rivendell.11.d:0 "Rivendell wishes us to join their new union. Shall we accept?" - rivendell.11.a:0 "Accept." - rivendell.11.b:0 "Decline." - ###################################### - rivendell.12.t:0 "Rivendell wishes to join our cause" - rivendell.12.d:0 "Rivendell wants to join our Faction. Shall we accept?" - rivendell.12.a:0 "Accept." - rivendell.12.b:0 "Decline." - ###################################### - rivendell.13.t:0 "Rivendell wants us to join their alliance" - rivendell.13.d:0 "Rivendell wants to join the Elven Defence Alliance. Shall we accept?" - rivendell.13.a:0 "Accept." - rivendell.13.b:0 "Decline." - ###################################### - rivendell.14.t:0 "The One Ring has been brought to Rivendell" - rivendell.14.d:0 "A Hobbit named Frodo carrying Sauron's evil Ring has safely arrived in Rivendell." - rivendell.14.a:0 "We will inform Lord Elrond at once." - ###################################### - rivendell.15.t:0 "Sauron's Ringwraiths sighted near Bree" - rivendell.15.d:0 "Our scouts confirm to have sighted a pack of Sauron's Nazgul near the city of Bree, to the west. It appears they are after some Shire Hobbits, which were instructed by Gandalf to bring Sauron's One Ring to safety." - rivendell.15.a:0 "Their safety is imperative. Send Arwen to ensure their safety." - rivendell.15.a.tt:0 "Send §YArwen§! to locate and protect these Hobbits." - rivendell.15.b:0 "Ringwraiths? The scouts must have been hallucinating!" - ###################################### - rivendell.16.t:0 "Rivendell offers us a deal" - rivendell.16.d:0 "The elves of Rivendell offer to lend us three of their civilian factories for 60 days. In return they want guarantees that we will not attack the fellowship of the Ring under any circumstances." - rivendell.16.a:0 "A good deal. Attacking the fellowship is not in our interest." - rivendell.16.b:0 "It is none of of their business who we quarrel with!" - ###################################### - rivendell.17.t:0 "[FROM.GetName] accepts the deal" - rivendell.17.d:0 "[FROM.GetName] has accepted to not harm the fellowship on their way to Mordor. In return we owe them three of our civilian factories for 60 days." - rivendell.17.a:0 "Hopefully it will be worth the price." - ###################################### - rivendell.18.t:0 "[FROM.GetName] declines the deal" - rivendell.18.d:0 "[From.GetName] reserves the right to attack the fellowship and seize the One Ring, should it enter their territory." - rivendell.18.a:0 "Let us hope for the best." - ###################################### - rivendell.19.t:0 "Vote on the fellowship's path" - rivendell.19.desc:0 "The Council of Elrond has decided to assemble a fellowship with the mission to take the One Ring to Mordor and destroy it. However, a major goegraphic obstacle stands in the way: the Misty Mountains.\n\nAs an esteemed member of the council, we may submit a vote on which path the fellowship should take." - rivendell.19.a:0 "They should cross the Mountains through the Redhorn Pass." - rivendell.19.b:0 "They should bypass the Mountains to the south, past Isengard." - rivendell.19.c:0 "They should go north, past Gundabad and sail down the Anduin." - rivendell.19.d:0 "Submit a blank vote." - ###################################### - rivendell.1.t:0 "Lord Elrond holds a secret council" - rivendell.1.d:0 "Several highly regarded personalities have arrived from all over Middel Earth. Elrond has requested a Council be held to discuss several highly confidential matters." - rivendell.1.a:0 "We will see it done." - ###################################### - shire.2.t:0 "The Shire proposes a mutual protection pact" - shire.2.d:0 "Due to our excellent relations with the Shire, the Hobbits have proposed to sign a mutual protection pact to fend of the threat of Mordor." - shire.2.a:0 "Absolutely. The Hobbits of the Shire are such fearsome warriors." - shire.2.b:0 "The Shire! How many divisions have they got?" - ###################################### - shire.3.t:0 "The Shire demands Independence" - shire.3.d:0 "The Hobbits of the Shire claim our provided protection has become redundant. They wish to regain total control over their domain." - shire.3.a:0 "The Hobbits deserve their freedom." - shire.3.b:0 "Certainly not." - ###################################### - lothlorien.1.t:0 "Lothlorien wishes to join our faction" - lothlorien.1.d:0 "Lothlorien wishes to join the Gondor Alliance." - lothlorien.1.a:0 "Accept" - lothlorien.1.b:0 "Decline" - ###################################### - lothlorien.2.t:0 "The Question of the One Ring: Lothlórien" - lothlorien.2.d:0 "Now that the Fellowship is here with the One Ring, we have been presented quite the unique opportunity. We can attempt to take the ring from the Fellowship or aid them and increase their chance of destroying it." - lothlorien.2.a:0 "The Ring would be safer in our hands." - lothlorien.2.a.tt:0 "If Frodo refuses, we can try to escalate the situation and take the ring by force." - lothlorien.2.b:0 "The only hope for Middle-earth is in the Fellowship succeeding." - lothlorien.2.b.tt:0 "Will give us several options of aiding the fellowship on their journey to Mordor." - ####################################### - lothlorien.3.t:0 "The Fellowship Needs Help" - lothlorien.3.d:0 "The Fellowship, tasked with protecting and destroying the One Ring, has arrived in our territory. We must decide whether to allow them shelter in Lorien and then decide what to do with the group." - lothlorien.3.a:0 "Give the Fellowship shelter." - lothlorien.3.b:0 "Refuse the Fellowship shelter." - ####################################### - lothlorien.4.t:0 "Frodo willingly hands over the One Ring" - lothlorien.4.d:0 "The halfling has decided that the Ring would be safer in our hands." - lothlorien.4.a:0 "He made the right decision." - ####################################### - lothlorien.5.t:0 "Frodo refuses" - lothlorien.5.d:0 "The halfling has decided to follow the advice of Gandalf, and take the Ring to Mordor himself." - lothlorien.5.b:0 "Perhaps its for the better." - lothlorien.5.b.tt:0 "Will give us several options of aiding the fellowship on their journey to Mordor." - lothlorien.5.a:0 "The Hobbit doesn't grasp the severity of the situation. We must have that ring one way or the other." - lothlorien.5.a.tt:0 "We will start a violent confrontation with the fellowship to attempt to take the ring." - ####################################### - lothlorien.6.t:0 "Gearing up the Fellowship" - lothlorien.6.desc:0 "The fellowship must continue its journey to Mordor. What should we do to help them in their effort?" - lothlorien.6.a:0 "We will give them useful gifts." - lothlorien.6.a.tt:0 "Will raise the $fs_ad_symbol$ attack-level of all fellowship members by one" - lothlorien.6.b:0 "Have Haldir join the fellowship." - lothlorien.6.b.tt:0 "Haldir will join the fellowship on their journey." - lothlorien.6.c:0 "Thoughts and prayers" - lothlorien.6.d:0 "We have need of Haldir here. He should stay in Lothlórien." - lothlorien.6.d.tt:0 "Haldir will leave the fellowship and become available as a general again." - lothlorien.6.e:0 "We have need of Orophin here. He should stay in Lothlórien." - lothlorien.6.e.tt:0 "Orophin will join the fellowship on their journey." - ###################################### - angmar.1.t:0 "Angmar demands Independence" - angmar.1.d:0 "Now where the Dark Council has assumed control over the Kingdom of Angmar, they demand that Gondor remove all troops from their lands, for from this day they are an autonomous and independent kingdom." - angmar.1.a:0 "There is nothing we can do." - angmar.1.b:0 "Certainly not." - ###################################### - fs.100.t:0 "Our Attempt at obtaining the one Ring has failed." - fs.100.d:0 "The fellowship has fended off our attempt at obtaining the one true ring and is now out of reach." - fs.100.a:0 "Unfortunate." - ###################################### - shire.4.t:0 "The Shire asks for help" - shire.4.d:0 "The Hobbits require assistance in their struggle for freedom against Arthedain." - shire.4.a:0 "We shall come to their aid!" - shire.4.b:0 "The Hobbits have sealed their own fate." - ###################################### - rivendell.2.t:0 "Rivendell asks for assistance" - rivendell.2.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" - rivendell.2.a:0 "Send our finest warrior. Legolas." - rivendell.2.b:0 "Send the commander of the royal guard, Tauriel." - rivendell.2.c:0 "Send no one." - ###################################### - rivendell.20.t:0 "Rivendell asks for assistance" - rivendell.20.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" - rivendell.20.a:0 "Send our valiant Marchwarden, Haldir." - rivendell.20.b:0 "Send our skilled archer, Orophin." - rivendell.20.c:0 "Send no one." - ###################################### - rivendell.3.t:0 "Rivendell asks for assistance" - rivendell.3.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" - rivendell.3.a:0 "Send our finest warrior. Gimli." - rivendell.3.b:0 "We can only spare that fool, Bombur." - rivendell.3.c:0 "We can spare noone." - ###################################### - rivendell.4.t:0 "Rivendell asks for assistance" - rivendell.4.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" - rivendell.4.a:0 "Send our finest warrior. Boromir." - rivendell.4.b:0 "We shall send Faramir as a gesture of kindness." - rivendell.4.c:0 "Send no one." - ###################################### - mordor.42.t:0 "The one Ring has been found!" - mordor.42.d:0 "The Nazgul have found the Ring!" - mordor.42.a:0 "Finally." - ###################################### - mordor.43.t:0 "The One Ring is ours!" - mordor.43.d:0 "Our forces have captured the One Ring from the enemy." - mordor.43.a:0 "At last." - ###################################### - isengard.7.t:0 "The Hunt for the One Ring: Argonath" - isengard.7.d:0 "The One Ring is in the hands of the Fellowship. Our scouts report the fellowship travelling near Argonath, east of the dead marshes." - isengard.7.a:0 "This is our chance! Send a group of hunters to retrieve the ring." - isengard.7.b:0 "Leave them be." - ###################################### - isengard.6.t:0 "Saruman dies" - isengard.6.d:0 "The lord of Isengard and Leader of the wizards, Saruman, is dead." - isengard.6.a:0 "Oh dear..." - ###################################### - isengard.5.t:0 "Grima Wormtongue seeks refuge in Isengard" - isengard.5.d:0 "Having miserably failed his task to turn Rohan to our side, Grima Wormtongue seeks refuge in Orthanc." - isengard.5.a:0 "Whatever." - ###################################### - isengard.4.t:0 "Saruman demands complete Submission" - isengard.4.d:0 "Saruman has declared himself Lord of Enedwaith. Either we take up arms against him or bend the knee and serve." - isengard.4.a:0 "We bow to our new overlord: Saruman." - isengard.4.b:0 "We'll shove the tower of Orthanc up the old wizards arse!" - ###################################### - isengard.3.t:0 "Rohan refuses to give up the Westmarch" - isengard.3.d:0 "Rohan have declined our demands to surrender the Westmarch. Our troops stand ready for retaliation." - isengard.3.a:0 "We shall meet their stubborness with bloodshed." - ###################################### - isengard.2.t:0 "Rohan surrenders the Westmarch" - isengard.2.d:0 "Rohan has met our demands and cede the region known as the Westmarch to us." - isengard.2.a:0 "Excellent." - ###################################### - isengard.1.t:0 "Gandalf the Grey arrives in Isengard" - isengard.1.d:0 "Smoke rises from the Mountain of Doom. The hour grows late, and Gandalf the Grey rides to Isengard, seeking Sarumans counsel. Yet he would not hear his wisdom. Even when confronted with the unparalleled power of Sauron, he refuses to hand over the Ring leaving it instead in the careless hands of a halfling! What is to be done with this old fool? " - isengard.1.a:0 "Imprison him!" - isengard.1.b:0 "He is right. We must stand against Sauron." - ###################################### - moria.1.t:0 "We are under attack!" - moria.1.d:0 "The gates are in splinters and a horde of orcs is flooding the mines! The dwarves will send word to Erebor and try to stand firm. What side will we support?" - moria.1.a:0 "We stand with the dwarves!" - moria.1.b:0 "The time of orcs has come!" - ###################################### - moria.2.t:0 "Moria asks for help!" - moria.2.d:0 "Moria is being overrun by orcs! Balin is dead and Gloin has called for our help. What shall we do?" - moria.2.a:0 "Leave them to their fate." - moria.2.b:0 "Send them our sharpest axes!" - moria.2.c:0 "Send an expeditionary force." - ###################################### - moria.3.t:0 "Erebor answers the call!" - moria.3.d:0 "Ironfoot has heard our call and dwarven reinforcements have arrived! Now is our chance to beat them back!" - moria.3.a:0 "Finally!" - ###################################### - erebor.1.t:0 "Erebor demands submission!" - erebor.1.d:0 "The dwarves of Erebor have laid claim on Dale and Esgaroth. The city had once been part of the dwarven domains, but that time ended long ago when dwarven greed brought fire and death upon our people! Will we stand and fight or bend the knee to Erebor?" - erebor.1.a:0 "This is a battle we cannot win. Stand down." - erebor.1.b:0 "If the dwarves want blood to be spilled, so it shall be." - ###################################### - erebor.2.t:0 "Join with Erebor" - erebor.2.d:0 "The dwarflords wish to form an alliance." - erebor.2.a:0 "Accept." - erebor.2.b:0 "Decline." - ###################################### - mirkwood.1.t:0 "Dwarf attack on Dale" - mirkwood.1.d:0 "The dwarves of Erebor have declared war on our former ally, the city-state of Dale. What is to be done?" - mirkwood.1.a:0 "Stand with Dale" - mirkwood.1.b:0 "None of our business" - ###################################### - mirkwood.2.t:0 "Mirkwood demands we stand down" - mirkwood.2.d:0 "The Elves of the Mirkwood do not appreciate our quarrel with Dale. They demand we stand our army down and seize all hostilites or they invade." - mirkwood.2.a:0 "Stand down. We cannot risk war with the elves." - mirkwood.2.b:0 "We will not stand down before any elf!" - ###################################### - mirkwood.3.t:0 "Mirkwood asks for an alliance" - mirkwood.3.d:0 "The Elves of the Mirkwood have always been drawn to the beauties of nature. Now they seek to unite with the ents." - mirkwood.3.a:0 "Thranduil has always been a close ally and friend." - mirkwood.3.b:0 "The elf is too hasty. We must think on this." - ###################################### - mirkwood.4.t:0 "Spider attack on the Elven King's Halls!" - mirkwood.4.d:0 "The Great Spiders of the Mirkwood have launched an attack on out greatest Elven city. The spiders have been fended off, but many of our valiant warriors lost their lives. If the Spiders are not dealt with soon, they might start an all out war on us!" - mirkwood.4.a:0 "The Spiders must be dealt with." - ###################################### - mirkwood.5.t:0 "The Spiders declare war" - mirkwood.5.d:0 "The Great Spiders of the Mirkwood have gathered in the West and taken up arms against us! They have declared themselves a free and independent nation of Mirkwood and will not stop until put down violently." - mirkwood.5.a:0 "War it is then." - ###################################### - mirkwood.6.t:0 "Orcs of Dol Guldur overrun Emyn Lûm!" - mirkwood.6.d:0 "A Horde of orcs coming from the ruin of Dul Guldur have overrun the southern city of Emyn Lûm. Our soldiers have reclaimed the land and driven the orcs back to Dol Guldur, but many lost their lives. If Dol Guldur is not dealt with, Sauron and his disciples may launch an all out attack from the fortress!" - mirkwood.6.a:0 "Dol Guldur must be dealth with." - ###################################### - mirkwood.7.t:0 "Dol Guldur declares war" - mirkwood.7.d:0 "The Orcs of Dol Guldur, lead by the ringwarith Khamûl, have taken up arms against us and now control all of Dol Guldur's surroundings!" - mirkwood.7.a:0 "War it is then." - ###################################### - entwood.1.t:0 "Two 'Hobbits' speak of war" - entwood.1.d:0 "Two creatures that call themselves 'Hobbits' have arrived in our woods. After a lengthy meeting the Ent Council has determined that these 'Hobbits' are not Orcs. One of them has been very hasty. He claims the Ents should seek revenge and attack Saruman now, where he is vulnerable. But what does a Hobbit know of us Ents?" - entwood.1.a:0 "The Hobbit is wise. We go to war." - entwood.1.b:0 "The Hobbit is too hasty. We must discuss his proposition further." - ###################################### - entwood.2.t:0 "The Entwives have been sighted in Mirkwood" - entwood.2.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in the southern parts of the Mirkwood." - entwood.2.a:0 "Mirkwood? Never heard of it." - ###################################### - entwood.3.t:0 "The Entwives have been sighted in the Brown Lands" - entwood.3.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in the Brown Lands, a region to the North of the Dead Marshes." - entwood.3.a:0 "A former Ent Settlement." - ###################################### - entwood.4.t:0 "The Entwives have been sighted in Lothlorien" - entwood.4.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in Lothlorien." - entwood.4.a:0 "The Entwives must be recovered." - ###################################### - entwood.5.t:0 "The Entwives have been sighted in Lindon" - entwood.5.d:0 "Our long and tedious search has paid off at last. Treebeards long lost wive, Fimbrethil, aswell as all the remaining Entwives are located in Lindon." - entwood.5.a:0 "How did they get there?" - ###################################### - entwood.6.t:0 "The Ents request the Entwives be returned" - entwood.6.d:0 "The Ents of the Entwood claim their long lost Entwives are located within our domains. They request that safe passage be granted to them so they may reunite once more." - entwood.6.a:0 "Sure." - entwood.6.b:0 "We owe the Ents nothing." - ###################################### - entwood.7.t:0 "Saruman burns the Forest of Fangorn!" - entwood.7.d:0 "Saruman has ordered his armies to burn down the forest of Fangorn in order to fuel his industrial warmachine. They've come with fire! They've come with axes! Gnawing, biting, breaking, hacking, burning! Destroyers and usurpers, curse them!" - entwood.7.a:0 "The wizard has lost his mind." - ###################################### - entwood.8.t:0 "[From.GetLeader] has denied our request." - entwood.8.d:0 "[From.GetLeader] will not see the Entwives returned to us." - entwood.8.a:0 "Without the Entwives, we are lost." - ###################################### - entwood.9.t:0 "[From.GetLeader] has granted our request." - entwood.9.d:0 "[From.GetLeader] will see that the Entwives are returned to us safely." - entwood.9.a:0 "Once again, Entish Diplomacy succeeds." - ###################################### - gondor.1.t:0 "The beacons are lit!" - gondor.1.d:0 "The beacons are lit! Gondor calls for aid!" - gondor.1.a:0 "And Rohan shall answer!" - gondor.1.b:0 "What did Gondor ever do for us?!" - ###################################### - gondor.2.t:0 "The battle for Osgiliath" - gondor.2.d:0 "Mordor forces have taken over Osgiliath. A host of our finest riders have gathered and will attempt to take the city back." - gondor.2.a:0 "That could end badly..." - ###################################### - gondor.3.t:0 "Denethor commits suicide" - gondor.3.d:0 "The Stewart of Gondor has trown himself off the top of Minas Tirith." - gondor.3.a:0 "Oh dear..." - ###################################### - gondor.4.t:0 "The Hunt for the One Ring: Boromir" - gondor.4.d:0 "Boromir could save the realm of Gondor if he were to take the ring from Frodo and return it to the white city." - gondor.4.a:0 "Have Boromir attempt to steal the One Ring." - gondor.4.b:0 "We will not stain Gondor's honour with such treachery!" - ###################################### - fs.106.t:0 "The one ring has been destroyed." - fs.106.d:0 "It seems amidst our warmongering two hobbits slipped past and managed to destroy the one ring within the fires of mount doom. The dark Lord Sauron is dead. What is our next course of action?" - fs.106.d_elves:0 "It seems amidst our warmongering a pack of elves slipped past and managed to destroy the one ring within the fires of mount doom. The dark Lord Sauron is dead. What is our next course of action?" - fs.106.a:0 "We shall serve Saruman instead." - fs.106.b:0 "Let the strongest rule." - fs.106.c:0 "Elect a leader of our own." - ###################################### - fs.107.t:0 "The One Ring's temptations prove irresistible." - fs.107.d:0 "The One Ring is having a powerful effect on us. So much so, that it's becoming dubious who is controlling who. We must be watchful not to let the Ring corrupt us entirely!" - fs.107.a:0 "Something must be done" - ###################################### - news.402.t:0 "Angmar reforms the Kingdom of Arnor" - news.402.d:0 "The Kingdom of Angmar, having shed the dark legacy of the Witch King, has taken a historic stride toward reconciliation and unity in the North. Renouncing the ways of the past, Angmar has mended fences with their neighbors to the south, including Arthedain, Cardolan, and Rhudaur. Embracing a spirit of cooperation and understanding, the once-divided lands have united under the banner of peace and solidarity.\n\nIn an unprecedented move, Angmar has announced the reforming of the ancient Kingdom of Arnor, a realm steeped in history and tradition. This significant development signals a new era for the North, as the realms of old are reborn, fostering hope for a future of new-found glory." - news.402.a:0 "An unexpected Development." - ###################################### - news.401.t:0 "The Stewardship Flees to Tolfalas" - news.401.d:0 "The peasant revolt in Gondor has escalated into a full-blown uprising. As villages across the land join the rebellion, the grip of the noble houses on power is slipping away. In a desperate bid to escape the wrath of the enraged populace, Denethor, managing to evacuate substantial riches from the capital and securing the loyalty of most of his fleet, has made a daring decision. The former Steward, along with a contingent of loyal nobles, has fled mainland Gondor, seeking refuge on the remote island of Tolfalas.\n\nThe decision to retreat to Tolfalas, a strategic move to regroup and plan their revenge, underscores the dire state of affairs in the heart of Gondor. The once-mighty nobility, now scattered and in disarray, faces a formidable challenge from the united and determined peasant forces." - news.401.a:0 "A precarious situation." - ###################################### - news.400.t:0 "Peasant Uprising Sweeps Gondor" - news.400.d:0 "Chaos has descended upon the heart of Gondor as a massive peasant uprising, led by the once-royal Ivriniel, has stormed the throne room in Minas Tirith. Renouncing her royal titles, Ivriniel has become the unexpected champion of the common people, igniting a revolt against the aristocracy and the existing power structures within the realm. The Stewardship and many aristocrats, fearing the wrath of the enraged populace, are fleeing south, leaving behind a city in turmoil." - news.400.a:0 "A deep blow to the stability of Gondor." - ###################################### - news.399.t:0 "Gondor expresses interest in Harondor" - news.399.d:0 "In a significant diplomatic move, Gondor has publicly expressed keen interest in the territories of Harondor, a strategic region to the south of the realm. The declaration, made by Gondor's emissaries, signals a shift in the realm's expansionist ambitions, as they look beyond their borders toward new territories.\n\nHarondor, long a region of cultural and historical significance, has now become the focus of Gondor's attention. The prospect of Gondor's expansion raises questions about the potential implications for the region's inhabitants and the delicate balance of power in the South." - news.399.a:0 "A bold move." - ###################################### - news.398.t:0 "Denethor II delegitimizes Isildur's Dynasty" - news.398.d:0 "After many years of a vacant throne, the royal council of Gondor has agreed to no longer reconize Isildur's heritage. 'After several heirs to Gondors throne have declined to serve as Gondor's king, the bloodline has become unclear. We simply can't know anymore who the true heir is or is not.' - said Irolas, primary advisor to Stewart Denethor. What reforms the Gondor government will enact after this step remain to be seen, but the following months will certainly be of great importance to Gondor's future." - news.398.a:0 "A long lost kingdom." -###################################### - news.397.t:0 "Celeborn Departs Lothlórien Amidst Tensions" - news.397.d:0 "Tensions within the enchanted realm of Lothlórien have reached a boiling point, leading to the departure of Lord Celeborn, one of the realm's distinguished leaders. Some sources suggest that he was forcefully pushed into exile, while others contend that he left of his own volition, choosing to embark on a journey toward the Havens of Lindon. The sudden exit has left many questioning the stability of the realm and the future of its leadership.\n\nAs Lothlórien grapples with the aftermath of this significant departure, the shadow of division and uncertainty looms over the realm. The departure of Lord Celeborn marks a profound shift in the balance of power and governance, leaving the Golden Wood to chart an uncertain path forward." - news.397.a:0 "How will the elves of Lórien fare without Celeborn?" -###################################### - news.396.t:0 "Lothlórien Assembles 'Elven Fellowship'" - news.396.d:0 "The realm of Lothlórien has taken a bold step by forming a new Fellowship of the Ring, exclusively composed of elven members. The move comes as the Golden Wood claims possession of the One Ring.\n\nElven leaders from Lothlórien cited concerns over the risks of placing the fate of the One Ring into the hands of simple Hobbits, men, and dwarves, as was initially proposed by Elrond's Fellowship of the Ring. While acknowledging the wisdom of Elrond's original concept, Lothlórien's leaders assert that the stakes are too high to entrust the Ring to those who might be more susceptible to its corrupting influence." - news.396.a:0 "Fellowship 2: Elven Boogaloo" -###################################### - news.395.t:0 "Two Hobbits sail to the Undying Lands" - news.395.d:0 "Frodo Baggins, the resolute halfling who bore the One Ring to its destruction, and his venerable uncle, Bilbo Baggins, embark on a journey beyond the western sea to the fabled Undying Lands. The news reverberates across the realms, evoking a tapestry of emotions from joy to sorrow.\n\nIn a poignant ceremony held at the docks of Rivendell, surrounded by friends, family, and well-wishers, the two hobbits step onto a ship that will carry them to Aman." - news.395.a:0 "A rare exception granted by the elves." -###################################### - news.394.t:0 "Galadriel and Celeborn leave Middle Earth" - news.394.d:0 "Lady Galadriel and Lord Celeborn of Lothlórien have announced their decision to depart from the lands of Middle-earth to the lands of Aman. The news reverberates across the realm, touching hearts from the Misty Mountains to the shores of Gondor.\n\nThe bittersweet decision is met with mixed emotions as the Elven realm prepares to bid farewell to its beloved rulers. The golden woods of Lórien have flourished under their stewardship, and their legacy will echo through eternity." - news.394.a:0 "How will Lothlórien fare without them?" -###################################### - news.393.t:0 "Durin's Bane Dies" - news.393.d:0 "In a climactic and heroic confrontation, the infamous Balrog known as Durin's Bane has been defeated in an epic battle that shook the foundations of Middle-earth. The formidable demon, which had haunted the depths of Khazad-dûm for ages, was vanquished by a coalition of valiant warriors after a relentless struggle." - news.393.a:0 "Durin's Bane's Bane." - ###################################### - news.392.t:0 "Sauron resurfaces in Angmar" - news.392.d:0 "In a shocking turn of events, the malevolent presence of Sauron has resurfaced within the ancient kingdom of Angmar. Having lost control over the orcs in Mordor, the Dark Lord has now seized command in the North, unleashing his dark forces upon the lands once again.\nThe resurgence of Sauron's power in Angmar has sent tremors of fear throughout the region. Whispers of his return echo through the icy mountains, leaving the inhabitants in a state of dread. As the dark clouds of Mordor cast their shadow upon the Northern realms, the people of Arnor brace themselves for the imminent threat." - news.392.a:0 "the North faces a perilous future." - ###################################### - news.390.t:0 "Storm gathers on Caradhras " - news.390.d:0 "A powerful storm is said to be gathering over the Redhorn Pass in the Misty Mountains. According to local reports, the storm is expected to bring heavy rains and strong winds. The pass, which is known for its treacherous terrain, is likely to be severely affected by the storm, and travelers are advised to take caution of potential avalanches caused by lightning-strikes.\nThere are rumors circulating among the locals that the storm may be the work of Saruman, whilst others claim it was the mountain of Caradhras itself." - news.390.a:0 "Crossing the Misty Mountains will be even more difficult now." - ###################################### - news.388.t:0 "The Hornburg's defenses are breached" - news.388.d:0 "The great walls of the Hornburg, a fortified stronghold at the mouth of the Helm's Deep gorge, have been breached after being rocked by a gigantic explosion. With this calamity, the besieging orcs are streaming past the deeping wall leaving nothing but terror in their wake. It remains unclear if the garrison can hold out much longer." - news.388.a:0 "Is this the end for Rohan?" - ###################################### - news.389.t:0 "[From.From.GetName] seizes the One Ring" - news.389.d:0 "Recent rumors of [From.From.GetName] getting their hands on the One Ring have been confirmed. This Master Ring, crafted by the Dark Lord Sauron, is known for its ability of granting unprecedented power, but also to corrupt." - news.389.a:0 "One Ring to bring them all and in the darkness bind them..." - ###################################### - news.387.t:0 "Saruman betrays Mordor" - news.387.d:0 "Saruman today, in a daring move, has announced cutting all ties with Sauron. Saying he no longer trust his ally in its capability to conquer Middle-Earth. When asked if he will create his on alliance of countries he did not answer." - news.387.a:0 "Unexpected" - ###################################### - news.386.t:0 "Mordor seizes the Black Gate Outskirts" - news.386.d:0 "Mordor spokespeople have announced the occupation of the Black Gate Outskirts, a region bordering the Dead Marshes. The area is considered strategically important, and Mordor's move is seen as potentially opening a second invasion-front into Gondor. This development is being closely monitored by regional powers, and it remains to be seen how the situation will evolve in the coming days. To many it seems an all-out invasion is imminent." - news.386.a:0 "Why do I hear boss music?" - ###################################### - news.385.t:0 "Rhun embroiled in civil war" - news.385.d:0 "The conflict, which began as a dispute over political ideology, has quickly escalated into a full-blown war, with both sides mobilizing their forces and engaging in fierce battles across the country. The Khamulists, known for their strict devotion to Morgoth, have seized control of several key cities and are using their military might to try and crush the resistance of the Blue Wizards, who have formed a united front and are fighting for the right to determine their own destiny, free from Mordor's influence. As the conflict continues to rage on, it remains uncertain who will emerge victorious, but the people of Rhun certainly are paying a heavy price for this war." - news.385.a:0 "The situation is deteriorating rapidly..." -###################################### - news.384.t:0 "Khamul declares himself a new Dark Lord" - news.384.d:0 "In a shocking turn of events, the warlord Khamul has declared himself a new Dark Lord and the sole heir to Morgoth. In a rambling and ominous speech, Khamul alleges that his former master, Sauron, is too weak to undertake a glorious conquest of Middle-Earth and that it was time for a new ruler to take his place. Khamul's declaration has sent shockwaves throughout the land, with many questioning his sanity and true motivations. Some fear that he may be seeking to overthrow Sauron and seize control of his vast armies, while others believe that he may be a pawn in a larger, more sinister plot. Whatever the case, it is clear that Khamul's rise to power represents a grave threat to the peace and stability of Middle-Earth." - news.384.a:0 "An audacious claim!" - ###################################### - news.383.t:0 "Dol Guldur seized by orcs of Mordor" - news.383.d:0 "A Mordor military force originating from the supposedly abandoned fortress of Dol Guldur have seized control over much of Mirkwood's southern regions, severly crippling any Elven efforts to quell the fast-spreading insurgency. By nightfall there were also reports of Orc forces moving towards the South and planning an all-out attack on the Mirkwood Elves. Thranduil said they were 'deeply concerned' about Dol Guldur developments and urged a 'strong and coordianted response to push back the orc invaders'." - news.383.a:0 "That fortress is nothing but trouble..." - ###################################### - news.382.t:0 "The Great Spiders declare war on Mirkwood Elves" - news.382.d:0 "Recent disagreements between the Elves of the Mirkwood and the Great Spiders have sparked the so-called 'War of the Forest'. The Spiders have quickly gained control over the north-western Mirkwood, ostracizing, or eating, any elves found in the region and now plan to do the same for the entirety of the region. 8-legged protests errupted earlier this year when Elves opened fire on Arachno-Syndicalist demonstrators, killing several in the process. The unrest has now triggered a nationwide attack on the elven-led government." - news.382.a:0 "The Mirkwood is full of surprises." - ###################################### - news.381.t:0 "Denethor commits suicide" - news.381.d:0 "The Stewart of Gondor, Denethor II is dead. Reportedly he was mad with grief for his two lost sons, Faramir and Boromir leading to him throwing himself of the top of the White City of Minas Tirith." - news.381.a:0 "Hmm..." - ###################################### - news.380.t:0 "Faramir is dead" - news.380.d:0 "The well respected general of Gondor, Faramir, is dead. Reportedly his forces where overwhelmed at the Gondor city of Osgiliath by a legion of Mordor Orcs. The Generals father, Denethor declined to give a statement saying isntead that 'he had never been so heartbroken'." - news.380.a:0 "May he find rest now." - ###################################### - news.379.t:0 "Boromir is dead" - news.379.d:0 "The well respected general of Gondor, Boromir, is dead. Reportedly his forces where overwhelmed at the Gondor city of Osgiliath by a legion of Mordor Orcs. The Generals father, Denethor declined to give a statement saying isntead that 'he had never been so heartbroken'." - news.379.a:0 "May he find rest now." - ###################################### - news.378.t:0 "Faramir is dead" - news.378.d:0 "The son to the Stewart of Gondor, Faramir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. Reportedly a Isengard special tasks group lead by an Uruk-Hai named Lurtz attacked the Fellowship and killed Faramir in the process. 'He saved our lives and died like a true warrior of Gondor.' claimed one of the Fellowships's Hobbits." - news.378.a:0 "Click here to pay your respects." - ###################################### - news.377.t:0 "Boromir is dead" - news.377.d:0 "The firstborn son to the Stewart of Gondor, Boromir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. Reportedly a Isengard special tasks group lead by an Uruk-Hai named Lurtz attacked the Fellowship and killed Boromir in the process. 'He saved our lives and died like a true warrior of Gondor.' claimed one of the Fellowships's Hobbits." - news.377.a:0 "Click here to pay your respects." - ###################################### - news.376.t:0 "Sauron is dead" - news.376.d:0 "The Dark Lord of Mordor has died! Rumors claim that two Hobbits managed to destroy the One Ring within the fires of Mount Doom. How exactly they accomplished this, remains unclear. Several Eagle-sg10 light aircraft planes have been deployed in a rescue mission for the Hobbits. The future of Mordor has never been this clouded, as the leadership of Sauron was a central part of Mordors structural integrity." - news.376.d_elves:0 "The Dark Lord of Mordor has died! Rumors claim that a pack of elves managed to destroy the One Ring within the fires of Mount Doom. How exactly they accomplished this, remains unclear. Several Eagle-sg10 light aircraft planes have been deployed in a rescue mission for the Hobbits. The future of Mordor has never been this clouded, as the leadership of Sauron was a central part of Mordors structural integrity." - news.376.a:0 "Hmm..." - ###################################### - news.375.t:0 "Mordor finds the One Ring" - news.375.d:0 "Mordor authorities claim to have recovered the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when a Mordor task force recovered it at the Dead Marshes. 'The One Ring is a historical trinket of the Dark Lord Sauron. It belongs in a Mordor museum!' claimed Mordor spokesperson Mouth of Sauron." - news.375.a:0 "Sauron will return..." - ###################################### - news.374.t:0 "Boromir takes the One Ring" - news.374.d:0 "Rivendell authorities have anounced that a great tragedy has befallen their special task force known as 'the fellowship of the ring'. Reportedly one of the unit's members, Bormir, stole the One Ring from a Hobbit that was tasked with keeping it safe. Boromir appears to have gone out of reach, conceivably riding for his home country of Gondor." - news.374.a:0 "Well then..." - ###################################### - news.373.t:0 "Saruman intercepts the One Ring" - news.373.d:0 "Isengard authorities claim to have found the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when an Isengard task force, lead by an Uruk-Hai named Lurtz intercepted the Fellowsip of the Ring and recovered it. 'The One Ring is a dangerous artifact and should not be left in the hands of a careless Hobbit. Gandalf and Elrond are fools to think this was a good idea.' claimed Saruman of Isengard." - news.373.a:0 "Hmm..." - ###################################### - news.372.t:0 "Galadriel takes the One Ring" - news.372.d:0 "Lothlórien authorities claim to have found the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit who gave it as a gift to the co-ruler of Lothlórien, Galadriel. This event prompted the Hobbit's companions, a Rivendell task force named 'The Fellowship of the Ring' to attack Galadriel in order to recover the Ring. 'The Fellowship is in Lórien custody. There have been several testimonies of the Hobbit giving the Ring voluntarily, thus the Fellowship has no right to intervene.'" - news.372.a:0 "Worrying..." - ###################################### - news.371.t:0 "Frodo hands over the Ring to Galadriel" - news.371.d:0 "In a surprising turn of events, Frodo Baggins, the hobbit who had been entrusted with the One Ring, willingly handed it over to Galadriel, the Lady of Lothlórien. The decision came after a long and difficult journey for Frodo and his companions, who had faced countless dangers and obstacles in their quest to destroy the Ring and defeat the Dark Lord Sauron. As they rested in the peaceful surroundings of Lothlórien, Frodo was approached by Galadriel, who sensed the burden he carried and offered to take the Ring from him, to which he agreed. Galadriel, for her part, pledged to keep the Ring safe and to use its power only for the greater good of Middle-Earth." - news.371.a:0 "This is what you get for entrusting it to a simple Hobbit." - ###################################### - news.370.t:0 "The One Ring interpected at the Shire" - news.370.d:0 "Mordor authorities claim to have recovered the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when a Mordor task force recovered it. 'The One Ring is a historical trinket of the Dark Lord Sauron. It belongs in a Mordor museum!' claimed Mordor spokesperson Mouth of Sauron." - news.370.a:0 "Sauron will return..." - ###################################### - news.369.t:0 "Sauron recovers his true form" - news.369.d:0 "Dark Lord of Mordor and legacy to Morgoth, Sauron has, at last, recovered his material form. After having been defeated at the hands of The Last Alliance (tm), the dark Lord was forced to live on in spirit only. Now where the one Ring has been recovered by Mordor Forces, Sauron could channel his malice into a bodily form. 'It's so good to be able to walk again!' - said the pleased Dark Lord - 'It was very difficult for me to be that eye, especially since I have vertigo!'" - news.369.a:0 "Doom will be upon all things." - ###################################### - news.368.t:0 "Gondor abandons Isildurs heritage" - news.368.d:0 "The royal council of Gondor has agreed to abandon Isildur's heritage. 'After several heirs to Gondors throne have declined to serve as Gondor's king, the bloodline has become unclear. We simply can't know anymore who the true heir is or is not.' - said Irolas, primary advisor to Stewart Denethor. What reforms the Gondor government will enact after this step remain to be seen, but the following months will certainly be of great importance to Gondor's future." - news.368.a:0 "A long lost kingdom." - ###################################### - news.367.t:0 "Gondor give the Ring to Sauron" - news.367.d:0 "The realms of Gondor and Mordor have invoked a war assembly to discuss the possibility of peace. As a trading token, Gondor proposed to hand over the one Ring to Sauron in return for a seize fire, an offer that Mordor spokesperson Mouth of Sauron agreed to. A temporary peace deal has been signed between the two nations and the one Ring is being transported safely to Barad-dûr." - news.367.a:0 "Worrying..." - ###################################### - news.366.t:0 "Aragorn crowned King of Gondor" - news.366.d:0 "A former chieftain of the Dúnedain of the North known as Aragorn, commonly referred to as 'Strider' was crowned King Elessar Telcontar of Gondor. Said to be a great warrior and leader, Aragorn is now the 35th King of Gondor and the first man ever to sit on Gondors throne since the days of his ancestor Isildur. 'Long have I desired to look upon the likenesses of Isildur and Anarion, my sires of old. Under their shadow Elessar, the Elfstone son of Arathorn of the House of Valandil Isildur's son heir of Elendil, has naught to dread!' is how he proclaimed his lineage at the coronation." - news.366.a:0 "Hmm..." - ###################################### - news.365.t:0 "The Dead rise in Minas Tirith" - news.365.d:0 "Thousands of Gondor Soldiers shuddered in fear yesterday as an army of ghost soldiers overwhelmed the Pelennor Fields. The initial shock was tempered with heartfelt relief as the soldiers realised the dead were fighting on their side. Reportedly the army of the dead, also referred to as the Deadm Men of Dunharrow of simply 'Oathbreakers' is composed of 'cursed' men of the White Mountains. 'A silly superstition' - claimed Gondor scientist Dawkins Richardson - 'this was merely an regular army dressed in bright green clothing'." - news.365.a:0 "This must mean Isildur's heir has returned..." - ###################################### - news.364.t:0 "Enedwaith yields to Saruman" - news.364.d:0 "A lot of pro-Isengard support has been seen from Enedwaith tribes over the recent months but what no politcal analyst could predict is that with a recent military coup on central Enedwaith government a group of militiamen have taken control over Enedwaith and sworn their loyalty to Saruman, leader of the Council of Wizards. Saruman has welcomed their service and promised glory and wealth in return." - news.364.a:0 "Of course they did." - ###################################### - news.363.t:0 "Lothlòrien stands with Mordor" - news.363.d:0 "The joint house of Celeborn and Galadriel of Lothlòrien have openly declared their alligance with Sauron's Mordor. This surprising turn of events reportedly occured as a response to Mordors global submission ultimatum, uttered by spokesperson 'Mouth of Sauron' earlier this week. Galadriel and Celeborn have maintained rule over Lothlòrien for centuries never claiming a royal title, though that might be about to change." - news.363.a:0 "Hmm..." - ###################################### - news.362.t:0 "Galadriel leaves Middle Earth" - news.362.d:0 "Co-ruler and Lady of Lothlórien Galadriel is set to leave Middle Earth from the Grey Havens in Mithlond and sail to Valinor. Many Lòrien Elves have mourned the early departure of their beloved Co-Ruler, as she is commonly known as one of the greatest Eldar in Middle-earth as well as the bearer of Nenya, one of the three Elven rings of power. Galadriel claims her departure comes early due to a unusual division between herself and her husband, Lord Celeborn who has been more approving of progressive reforms. 'The world has changed. A dark terror looms over my people and I cannot stand in the way.' she claimed." - news.362.a:0 "A great loss for Lothlórien." - ###################################### - news.361.t:0 "Moria elect a Balrog as their leader" - news.361.d:0 "The citizens of the Mines of Moria held a grand assembly this week and came to the decision to appoint a Balrog of Morgoth as their new sovereign. Although little is known of the Valaraukar, dubbed 'Durin's Bane', except that he lived within the depths of the dwarven kingdom for centuries after Morgorth's defeat during the War of the Wrath. When the dwarves digged too deep in search for mithril, the beast awoke slaying Dwarf-King Durin VI claiming the title of Durin's Bane." - news.361.a:0 "WTF" - ###################################### - news.384.t:0 "Moria crowns Glóin the son of Gróin as Durin the 7th" - news.384.d:0 "The Balrog was cornered into the orc tunnels which were then collapsed by the dwarves, however when the balrog emerged from the debris, an underground water reservoir was released, which destroyed the Balrog. The dwarven celebratory feast begins!" - news.384.a:0 "A victory for all peaceful folk" - ###################################### - news.360.t:0 "Dawn of the Rivendell Initiative" - news.360.d:0 "The Rivendell led alliance between former Arnorian regions aswell as elven Nations is set to be launched this coming Sunday, according to internal sources. The Alliance is being led by Imladirs leader and well respected war veteran Lord Elrond who has appointed a new political chamber in celebration of this new union. The allliance has been dubbed 'the Rivendell Initiavie' and aims at opposing Mordor influences on western regions. Rivendell authorities claimed the door is still open if there are other nations who feel like to join their coalition." - news.360.a:0 "Hmm..." - ###################################### - news.359.t:0 "Rivendell blame dwarves for Elrond's death" - news.359.d:0 "Elrond's former closest confident Erestor told a packed courtroom today that dwarf agents were to blame for the 'cowardly attack' on Elrond. Elrond's son Elladan, who acted as head of the court, claimed the evidence was 'adequate, cogent and excluded all other possibilities.' Dwarf authoroties have dismissed these accusations and demanded the 'so-called evidence' be made public. Thousands of elves have taken it to the streets of Imladris and demanded the assasins be put to justice." - news.359.a:0 "Worrying..." - ###################################### - news.358.t:0 "Rivendell blames Rhudaur for Elrond's death" - news.358.d:0 "Elrond's former closest confident Erestor told a packed courtroom today that Rhudaur agents were to blame for the 'cowardly attack' on Elrond. Elrond's son Elladan, who acted as head of the court, claimed the evidence was 'adequate, cogent and excluded all other possibilities.' Rhudaur authoroties have dismissed these accusations and demanded the 'so-called evidence' be made public, prompting further clashes between Rivendell and Rhudaur. Thousands of elves have taken it to the streets of Imladris and demanded the assasins be put to justice." - news.358.a:0 "Worrying..." - ###################################### - news.357.t:0 "Elrond assasinated!" - news.357.d:0 "Rivendell - Lord Elrond, the head of the White Council, was shot during private meeting this afternoon. His death has been confirmed by medial professionals after his relocation to an emergency room. The circumstances of the assasination are unclear, as the meeting was highly confidential. Elrond's eldest son has assumed command of Rivendell for the time being and several suspects have been arrested in his name. Imladris police chiefs have launched an all-out investigation to persecute the perpetrators of this crime." - news.357.a:0 "Click here to pay your respects." - ###################################### - news.356.t:0 "Dawn of the First Hobbit Empire" - news.356.d:0 "Hobbit authorities have passed a new constitution declaring the Shire as the first ever 'Hobbit Empire'. The text was passed by the National Hobbit Assemlby by 73 votes out of 80 and is widely considered a historic milestone. Analysts say the declaration was induced by recent tensions between the Shire and their former overseers of Arthedain. "This constitution is one of consensus. We Hobbits will never be looked down upon again." were the words given by Assembly Speaker Lotho Sackville-Baggins, now adopting the title of Hobbit Emperor." - news.356.a:0 "This is a histpric day for the Shire." - ###################################### - news.355.t:0 "The Shire questions Arthedains authority" - news.355.d:0 "After having relished Arthedain protection for centuries, a common consensus has risen in the Shire that they no longer require the Rangers of the North to keep them safe. After their terrible defeat against Angmar, Arthedains military has remained weakever since, leaving the Shire as one of the only heavily populated states in the area." - news.355.a:0 "Worrying." - ###################################### - news.354.t:0 "Hobbit Inventor discovers 'Third Breakfast'" - news.354.d:0 "The widely celebrated Hobbit researcher Rorimac 'Goldfather' Brandybuck has recently published his postulation of the potential existence of a 'third breakfast'. The paper has been published in many scientific journals and is beng celebrated as one of the most influential Hobbit inventions of the third age. 'If a Hobbit can have two breakfasts within 5 hours, the discrete Fourier transformation matrices for each breakfast are conjugate summetric when applied to the specific time dilation of the Shire, thus leaving a finite amount of time for a third breakfast!' - is how Brandybuck summarized his postulation in pupular science journal 'Hobbit Advances in Quantumn Food Theory'." - news.354.a:0 "A small step for a Hobbit, one giant leap for Middle Earth." - ###################################### - news.353.t:0 "Arthedain seeks to reunite Arnor" - news.353.d:0 "Arthedian authorities have issued a royal decree to restore the Kingdom of Arnor. Other previously arnorian Nations have not yet responded to this proposal. 'We stand today on the groundwork of an age of great restoration.' said acclaimed political writer and commentator Erwin Khal. The kingdom of Arnor has not been on any map since TA 861, when it split up into the kingdoms of Cardolan, Rhudaur and Arthedain due to political disputes with Gondor's Valandil." - news.353.a:0 "This is a historic day for Arthedain." - ###################################### - news.352.t:0 "Angmar denounces the Witch King" - news.352.d:0 "Thousands of Anmgar citizens marched in the streets of Carn-Dûm today in protest of their former leader, the so-called 'Witch King of Angmar'. Leaflets given out during the march include detailed descriptions of how the Witch King fled to Mordor while his people bleed in the mud. 'A King should not abadon his people. The Witch King is a coward and he can rot in Mordor.' said the protests leading figure Oulf. The Witch King of Angmar was the original founder of Angmar and thus posseses a lot of historical influence in the country, however Angmar citizens appear dissatisfied with Witch King policies." - news.352.a:0 "So be it." - ###################################### - news.351.t:0 "Angmar seeks Independence" - news.351.d:0 "Portests in Angmar have escalated violently over the last months severly damaging goverment facilites and injuring several police authorities. The protesters have condemned the Gondor provisional government as 'imperialist slavery' and demand a sovereign Anmgar government to take its place. Gondor authorites claim they are doing their best to calm down the situation and restore stability to Anmgar as soon as as time allows." - news.351.a:0 "Worrying..." - ###################################### - news.350.t:0 "Mirkwood intervenes with Erebor" - news.350.d:0 "The Elves of the Mirkwood have stood up in protection of their former ally, the town of Dale. Demands where put forth that Erebor stand their army down and seize all hostilities towards the town at once. Rather hesitantly, the dwarves have yielded to these demands. Tensions between Mirkwood and Erebor have been high since the Smaug-incident at the Lonely Mountain, however a prominent Laketown spokesperson spoke out with great optimism for future Mirkwood-Erebor relations." - news.350.a:0 "Fine." - ###################################### - news.349.t:0 "The Ents go to war" - news.349.d:0 "The trees of the Entwood have issued a rather lengthy war declaration against the realm of Isengard. Reportedly convinced by two Hobbits, Treebeard gathered his kin and commenced an all out assault on Orthanc. Isengard representatives claim the Ents are 'clearly overreacting' to what they claim was 'just a little firewood gathering'. All journalists have fallen asleep while talking to Ent representatives, so their stance on the issue is currently unknown." - news.349.a:0 "Strange." - ###################################### - news.348.t:0 "Spark of the Harad Civil War" - news.348.d:0 "The realms of Harad have taken up arms against one another! Several high-ranking generals seeking to overthrow the pro-Mordor stance aswell as large parts of the Realms of Pellardur and Umbar have issued an ultimatum and declared all allies to Mordor traitors to the Realm. Mordor central government has responded to these statements by a declaration of war and claimed that Haradwaith was the legitiamte government." - news.348.a:0 "Worrying." - ###################################### - news.347.t:0 "Haradwaith stands with Mordor" - news.347.d:0 "Over the past years many political commentators have noted the pro-Sauron rhetoric originating from the Realms of Harad, Pellardur, Umbar and Khand. In a public statement issued by Haradwaith's new political leader the nation declared itself a 'close ally to Mordor' and 'blithe servant to Morgoth's legacy'." - news.347.a:0 "Well then." - ###################################### - news.346.t:0 "Rhûn declares for Sauron" - news.346.d:0 "The past few years have seen a rise in black-speech rhetoric from the political leaders of Rhûn. Reportedly the Rhunians enthusiastic approval of Mordor policies have led to an alliance between the nations. Khamûl, an important Mordor personality and native to the Realms of Rhûn was appointed it's leader to the delight of many Dark-Pact advocates." - news.346.a:0 "Well then." - ###################################### - news.345.t:0 "The Dead Marshes yield to Mordor" - news.345.d:0 "After permanent political pressure from their neighbouring country, the realms of Dagorlad have laid down their weapons and surrended. After declaring martial law, Lord Sauron has named his disciple Khamûl the new leader of the marshes." - news.345.a:0 "Well then." - ###################################### - news.344.t:0 "Lord Balin is dead." - news.344.d:0 "After having reclaimed the mountain of Erebor for his kin, the legendary dwarf Balin has suffered a tragic fate in his quest to reclaim the mines of Moria. The quest seemed to be going well, but a recent surge in Orc forces has taken the valiant dwarves by surprise. With their leader dead, Moria seems lost, as military experts estimate the dwarves' chances of survival at 80 to 1." - news.344.a:0 "Oh dear." - ###################################### - news.343.t:0 "Boromir is dead" - news.343.d:0 "The firstborn son to the Stewart of Gondor, Boromir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. However it seems things turned sour since we last heard from Gandalf, since Lord Elrond claims that Boromir attempted to sabotage the task force which prompted elven Prince Legolas to shoot him with his bow and arrow. Denethor claims to have 'never been so hearbroken'." - news.343.a:0 "Oh dear." - ###################################### - news.342.t:0 "Theoden orders execution of former chief advisor" - news.342.d:0 "His grace Theoden, King of the Rohirrim has formally sentenced his former chief advisor Grima Wormtongue to death. Many questions have been raised in regards to this verdict as the King had previously praised Wormtongue's service greatly. The rupture ocurred after Theoden accused Wormtongue of espionage and plotting to usurp the throne. " - news.342.a:0 "Interesting." - ###################################### - news.341.t:0 "King Theoden casts out former chief advisor" - news.341.d:0 "His grace Theoden, King of the Rohirrim has formally excommunicated his former chief advisor Grima Wormtongue from his realm. Many questions have been raised in regards to this ousting as the King had previously praised Wormtongue's service greatly. The rupture ocurred after Theoden accused Wormtongue of espionage and plotting to usurp the throne. Mr. Wormtongue declined to comment on these statements and has last been seen heading west with some haste." - news.341.a:0 "Interesting." - ###################################### - news.340.t:0 "Prince Théodred dies" - news.340.d:0 "The second Marshal of Rohan, eldest son to King Theoden and rightful heir to the throne has been murdered. The perpetrators of this crime remain yet unknown, but reportedly a Horde of Orcs originating from Isengard overran the region he was staioned in. Théodred's death was announced this morning by the niece of King Theoden, the lady Eowyn." - news.340.a:0 "Prince Theodead...?" - ###################################### - news.339.t:0 "King Theoden passes away" - news.339.d:0 "The entirety of Rohan plunged into grief following the death of Rohan's King, Theoden. His grace passed away after losing his battle to grave medial condition that has plagued Rohan's stability for months. In keeping with rohanian traditions his body has been buried underneath a layer of earth covered in Simbelmynë flowers. Tens of thousands gathered in Edoras to pay their respects and honor his memory. After the death of late prince Theodred, Rohan's throne now falls to the King's niece, Eowyn, and her husband Grima Wormtongue." - news.339.a:0 "Click here to pay your respects" - ###################################### - news.338.t:0 "Rohan celebrates a royal wedding" - news.338.d:0 "Niece to King Theoden of Rohan and known as the 'White Lady of Rohan', Eowyn has announced an engagement to the King's primary advisor, Grima Wormtongue. 'I was hesitant at first, but it is the will of my King thus I shall see it done.' - were the ominous words Eowyn shared with press this morning. The announcement of their wedding ended in days of fevered speculation by Rohan journalists. Common conjectures included connections to the King's recent illness and Eowyn's exiled brother, Eomer. Of course, no rohanian speculation would be complete without an Isengard-related conspiracy theory, of which we've seen plenty over the last week." - news.338.a:0 "Unusual times for a wedding..." - ###################################### - news.337.t:0 "King of Rohan afflicted by serious illness" - news.337.d:0 "A Rohan representative announced today in a public statement that the King of Rohan, Theoden, had fallen terribly ill. Medical professionals have concluded the disease to be Hypothyroidism, a rare condition which results from a lack thyroid hormones. Common symptoms include a feeling of tiredness, depression and skin decay. 'The grip of the illness is strong... the King's been bedbound for a month and passing seizures are becoming more pronounced. The underlying cause seems to be a slow and progressive decay of the nervous system, which will greatly affect his ability to rule.' said Dr. Theodorant. The King's niece, Eowyn, seems to have a more optimistic outlook on the situation: 'He is strong. He has always been strong. He'll fight the illness tooth and nail. I know he will.'" - news.337.a:0 "Rohan's leadership will suffer." - ###################################### - news.336.t:0 "Prince Théodred dies" - news.336.d:0 "The second Marshal of Rohan, eldest son to King Theoden and rightful heir to the throne died today at what has been named 'the battle of the Fords of Isen'. Reportedly a Horde of Orcs originating from Isengard overran the region known as the Fords of Isen leaving terror in their wake. Rohanian soldiers are still falling back from the area. Théodred's death was announced this morning by the niece of King Theoden, the lady Eowyn. Marshal Grimbold who reportedly defended Théodreds body 'with admirable heroism' was also seriously injured, according to a Rohan spokesman." - news.336.a:0 "Prince Theodead...?" - ###################################### - news.335.t:0 "Saruman denounces Rohans integrity" - news.335.d:0 "In a press conference last week Saruman, Chief of the Wizards, lashed out at 'demented' King Theoden. He claimed Rohans government had less authority than 'a halfwitted dwarf' and warned he would 'send the boys in' if King Theoden didn't 'clean up this mess'. In response to these inflamatory statements the Kings Cousin, Eomer, said threats by Isengard would 'not go unpunished' and described the Wizard as a 'senile maniac fond of playing with fire'. Both parties have ceased all trade between Isengard and Rohan for the time being." - news.335.a:0 "Worrying..." - ###################################### - news.334.t:0 "Saruman and Gandalf announce a new Alliance" - news.334.d:0 "Two Wizards met this evening at Orthanc (Isengard) and announced they are forming a new alliance in response to the aggressive rhetoric of the Mouth of Sauron. The move comes with Saruman hosting a one-week summit at Isengard at which Gandalf reportedly convinced Saruman of Mordors military threat." - news.334.a:0 "Magical." - ###################################### - news.333.t:0 "Wizard Clash at Orthanc!" - news.333.d:0 "A physical fight erupted in the tower of Orthanc (Isengard) during a heated debate between two wizards.Saruman, leader of the Order of Wizards reportedly closed the door on his former confidant Gandalf the Grey, prompting him to throw Saruman off his feet. This scene is uncommon for Isengards normally sedate athmosphere. Gandalf the Grey was also reportedly arrested during the clash for "interfering with Isengard affairs"." - news.333.a:0 "Oh dear..." - ###################################### - news.332.t:0 "Rivendell invokes secret council" - news.332.d:0 "All the way from Gondor to Erebor words have spread of Elrond, Lord of Imladris, summoning several notable representatives to Rivendell where a rather mysterious gathering was held. The information discussed in said gathering has been classified as highly confidential and all participants have refused to provide further explanations. Rumors have spread that the council was invoked in response to the recent inflamatory comments made by a representative of Mordor, but why was the White Council not summoned instead?" - news.332.a:0 "Mysterious." - ###################################### - news.331.t:0 "Paranormal Activities in the Shire" - news.331.d:0 "The north Arthedian region, commonly knwon as the Shire, has been subject to recent commotion when one of their eldest members mysteriously vanished during his birithday celebrations. Bilbo Baggins, the oldest living Hobbit (age 111), was just giving his birthday speech when he reportedly 'vanished into thin air'. Hobbit authorities are investigating the happening. Allegedly the disappearance occured shortly after the arrival of firework specialist Gandalf the Grey at the village. He is being detained as a suspect for now. "Bilbo was always a quiet and reserved type of person, but I didn't imagine he would just leave so suddenly!" said Josephine Maxwell Baggins." - news.331.a:0 "Worrying..." - news.331.a.tt:0 "Unlocks the §YQuest for the Ring§! decisions." - ###################################### - shire.1.t:0 "Bilbo Baggins 111st Birthday celebrations" - shire.1.d:0 "Our beloved Bilbo has turned 111 years old today. The town of Hobbitton will celebrate this rare occasion with a night of wonderful festivities! Half the Shire has been invited!" - shire.1.a:0 "Fantastic!" - ###################################### - cardolan.1.t:0 "Felonious assault on the city of Bree" - cardolan.1.d:0 "Tonight a group of nine black riders conducted a raid on the city of Bree. They left behind several bodies and were allegedly after a group of Shire Hobbits that had arrived shortly before the assault. There is no trace of the Hobbits and the Riders were last seen heading east with some haste, supposedly carrying some highly valuable ring." - cardolan.1.a:0 "There is nothing to be done." - cardolan.1.b:0 "These Hobbits stand no chance if there are Black Riders after them! Let's try and find them..." - ###################################### - ace_promoted.1.t:0 "Ace Pilot Promoted" - ace_promoted.2.t:0 "A Wild Ace Appears" - ace_promoted.1.d:0 "Few take as many risks as the brave pilots of the [Root.GetAdjective] air force. [From.GetName] [From.GetSurname], a skilled pilot known under the callsign [From.GetCallsign], has distinguished [From.GetHerselfHimself] in not only returning alive from the recent mission over [From.GetMissionRegion], but living through significant victories in many critical encounters.\n\nHeld up as a shining example of [Root.GetAdjective] courage, [From.GetName]'s recent promotion has been highly publicized. Although the people may view war as more hell than glory, many are glad to see that there are still heroes to rally behind." - ace_promoted.1.d_major:0 "Few take as many risks as the brave pilots of the [Root.GetAdjective] air force. [From.GetName] [From.GetSurname], a skilled pilot known under the callsign [From.GetCallsign], has distinguished [From.GetHerselfHimself] in not only returning alive, but piloting [From.GetHerHis] [From.GetWing] with immense skill. Recently, [From.GetName] was on a mission over [From.GetMissionRegion] and was instrumental to the success of this critical encounter.\n\nHeld up as a shining example of [Root.GetAdjective] courage, [From.GetName]'s recent promotion has been highly publicized. Although the people may view war as more hell than glory, many are glad to see that there are still heroes to rally behind." - ace_promoted.1.a:0 "Who dares, wins." - ace_died.1.t:0 "[From.GetCallsign] Killed Over [From.GetMissionRegion]" - ace_died.1.d:0 "One of [From.Owner.GetName]'s most famous [From.GetAceType] aces, [From.GetFullName], has gone down in flames in the line of duty, during a mission over [From.GetMissionRegion]. Unfortunately, since [From.GetSheHe] has long since been a public figure, the demise of [From.GetCallsign] is severely demoralizing to the many people who looked up to [From.GetHerHim].\n\nWhile we wish there was a way to hide this event from the people, the lack of public appearances from [From.GetName] would soon raise suspicion. Ultimately, [From.GetHerHis] death is another part of a legend that will hopefully live on long past our current troubles." - ace_died.1.d_major:0 "One of [From.Owner.GetName]'s most famous [From.GetAceType] aces, [From.GetFullName], has gone down in the line of duty. Pilots returning from the mission report having spotted [From.GetHerHis] [From.GetWingShort] going down in flames over [From.GetMissionRegion] after taking heavy enemy fire. Unfortunately, since [From.GetSheHe] has long since been a public figure, the demise of [From.GetCallsign] is severely demoralizing to the many people who looked up to [From.GetHerHim].\n\nWhile we wish there was a way to hide this event from the people, the lack of public appearances from [From.GetName] would soon raise suspicion. Ultimately, [From.GetHerHis] death is another part of a legend that will hopefully live on long past our current troubles." - ace_died.1.a:0 "A living legend is still better." - ace_killed_by_ace.1.t:0 "[From.GetFullName] Shot Down By [Prev.GetCallsign]" - ace_killed_by_ace.1.d:0 "Pilots returning from [From.GetMissionRegion] report that a squadron of [Prev.Owner.GetAdjective] aircrafts, led by the infamous [Prev.GetCallsign], focused on chasing down [From.GetCallsign]. After dodging several burst from the [Prev.Owner.GetAdjective]s and taking down a number of enemy aircraft, [From.GetCallsign] was overwhelmed by [Prev.GetCallsign], who reportedly outmaneuvered [From.GetHerHim] and ripped the fuel tanks open with a clean hit. [From.GetName] [From.GetSurname]'s plane caught fire and went spiraling down over [From.GetMissionRegion] in a violent inferno.\n\n[From.GetFullName] has shown great courage throughout [From.GetHerHis] service and was looked up to by many. The loss of this national hero is a great blow to the [From.Owner.GetAdjective] air force and is a devastating blow to our nation as a whole. Knowing that while we grieve, [Prev.Owner.GetName] is celebrating [Prev.GetFullName] as a hero, makes the tragedy even greater." - ace_killed_by_ace.1.d_major:0 "Pilots returning from [From.GetMissionRegion] report that, a squadron of [Prev.Owner.GetAdjective] aircrafts led by the infamous [Prev.GetCallsign] focused on chasing down [From.GetCallsign]. After taking down a number of enemy aircraft and dodging several burst from the [Prev.Owner.GetAdjective]s, [From.GetCallsign] was overwhelmed by [Prev.GetCallsign] in his [Prev.GetWingShort], who reportedly outmaneuvered [From.GetHerHim] and ripped the fuel tanks open with a clean hit. [From.GetName] [From.GetSurname]'s [From.GetWingShort] caught fire and went spiraling down over [From.GetMissionRegion] in a violent inferno.\n\n[From.GetFullName] has shown great courage throughout [From.GetHerHis] service and was looked up to by many. The loss of this national hero is a great blow to the [From.Owner.GetAdjective] air force and is a devastating blow nation as a whole. Knowing that while we grieve, [Prev.Owner.GetName] is celebrating [Prev.GetFullName] as a hero, makes the tragedy even greater." - ace_killed_by_ace.1.a:0 "A devastating loss for us all" - ace_killed_other_ace.1.t:0 "[From.GetFullName] Shot Down [Prev.GetCallsign]" - ace_killed_other_ace.1.d:0 "Our latest mission over [From.GetMissionRegion] was a great success for the [From.Owner.GetAdjective] air force in more than one aspect. Reports have come in highlighting [From.GetFullName]'s heroic deed, managing to outwit the [Prev.Owner.GetAdjective] pilot, [Prev.GetName] [Prev.GetSurname], known as [Prev.GetCallsign]. [From.GetCallsign] used [From.GetHerselfHimself] as bait and lured [Prev.GetCallsign] into a trap where the [From.Owner.GetAdjective] pilots were able to dive on [Prev.GetCallsign]'s squadron. [From.GetCallsign] proceeded to outmaneuver the [Prev.Owner.GetAdjective] aircrafts and with a single burst sent [Prev.GetCallsign] spiraling from the skies of [From.GetMissionRegion].\n\n[Prev.GetFullName] was a feared pilot with many [From.Owner.GetAdjective] lives on [Prev.GetHerHis] conscience. This is a great victory and shows that when we rally behind great heroes, they perform great deeds." - ace_killed_other_ace.1.d_major:0 "Our latest mission over [From.GetMissionRegion] was a great success for the [From.Owner.GetAdjective] air force in more than one aspect. Reports have come in highlighting [From.GetFullName]'s heroic deed, managing to outwit the [Prev.Owner.GetAdjective] pilot, [Prev.GetName] [Prev.GetSurname], known as [Prev.GetCallsign]. [From.GetCallsign] used [From.GetHerselfHimself] as bait and lured [Prev.GetCallsign] into a trap where the [From.Owner.GetAdjective] pilots were able to dive on [Prev.GetCallsign]'s squadron. [From.GetCallsign] proceeded to outmaneuver the [Prev.Owner.GetAdjective] aircrafts and with a single burst sent [Prev.GetCallsign] spiraling from the skies of [From.GetMissionRegion].\n\n[Prev.GetFullName] was a feared pilot with many [From.Owner.GetAdjective] lives on [Prev.GetHerHis] conscience. This is a great victory and shows that when we rally behind great heroes, they perform great deeds." - ace_killed_other_ace.1.a:0 "A victory all of [From.Owner.GetName] will remember!" - aces_killed_each_other.1.t:0 "[From.GetFullName] has gone down" - aces_killed_each_other.1.d:0 "During the latest mission our famous [From.GetAceType] ace [From.GetFullname] ended up in a prolonged fight with the feared ace pilot, [Prev.GetFullName]. Being low on munitions and with no possibility of escape, [From.GetCallsign] maneuvered through the fire from the [Prev.Owner.GetAdjective] aircrafts and proceeded to ram [Prev.GetCallsign].\nBoth [From.GetCallsign]'s and [Prev.GetCallsign]'s aircrafts were spotted going down in pieces over [From.GetMissionRegion].\n\nWhile it is a small consolation that the [Prev.Owner.GetAdjective] menace, [Prev.GetCallsign], will no longer be a nuisance to us, we have lost a valued public figure and inspiration to all [From.Owner.GetAdjective]." - aces_killed_each_other.1.d_major:0 "During the latest mission our famous [From.GetAceType] ace [From.GetFullname] ended up in a prolonged fight with the feared ace pilot, [Prev.GetFullName]. Being low on munitions and with no possibility of escape, [From.GetCallsign] maneuvered [From.GetHerHis] [From.GetWingShort] through the fire from the [Prev.Owner.GetAdjective] aircrafts and proceeded to ram [Prev.GetCallsign].\nBoth [From.GetCallsign]'s [From.GetWingShort] and [Prev.GetCallsign]'s [Prev.GetWingShort] were spotted going down in pieces over [From.GetMissionRegion].\n\nWhile it is a small consolation that the [Prev.Owner.GetAdjective] menace, [Prev.GetCallsign], will no longer be a nuisance to us, we have lost a valued public figure and inspiration to all [From.Owner.GetAdjective]." - aces_killed_each_other.1.a:0 "A great loss for us nonetheless" - election.1.t:0 "GENERIC ELECTION" - election.1.d:0 "" - election.1.a:0 "" - election.2.t:0 "Election: Public Opposes Rearmament" - election.2.d:0 "In the upcoming election, support for [Root.GetRulingParty] is still high, the people having confidence in [Root.GetLeader]'s leadership. However, the party's pursuit of increasing [Root.GetName]'s focus on military matters has not been entirely popular with the public, with a significant segment of the citizens considering this ill-advised jingoism. War is yet to reach our border and few would like to see [Root.GetName] take aggressive action. Cooperating with other major parties who share our concerns for the safety of the nation, we will still be able to rule after the election, albeit with diminished support." - election.2.a:0 "The people must be heard." - election.2.b:0 "Protecting our sovereignty comes first." - election.3.t:0 "Election: Public Demands Rearmament" - election.3.d:0 "The ongoing war approaching our borders has loomed over the upcoming election, with many voters being concerned that [Root.GetName] is not prepared for being thrown into this conflict or whatever may arise from it. They demand we increase our precautions and ensure that our nation is ready for war. While the majority still support [Root.GetRulingParty], we may lose them to more radical elements if we don't alleviate their apprehensions." - election.3.a:0 "The people have the right to feel safe." - election.3.b:0 "Many are still in favor of diplomatic solutions." - election.4.t:0 "Election: Fascists in Government?" - election.4.d:1 "An aggressively nationalist sentiment has grown in [Root.GetName], giving rise to several parties promoting fascist ideals: a state enforcing its power through force. One of these in particular has won favor in the current election, leading to discussions within the [Root.GetRulingParty] party about whether or not we should try to cooperate with them in forming our government. While they openly reject the cooperative ideals that are the foundation of our state, the fact that they choose to participate in the election itself lends some credibility to our views and acknowledging their public support may keep them away from taking violent action." - election.4.a:0 "Rather them than the communists!" - election.4.b:0 "A broad coalition of cooperative parties is preferable." - election.5.t:0 "Election: Communists in Government?" - election.5.d:0 "The communist movement in [Root.GetName], fueled by broad dissatisfaction among the working class and radical trends among academics, has grown large enough to lead to the formation of several parties. After one of these has gained considerable support in the current election, politicians in [Root.GetRulingParty] have started debating whether or not to seek their support in forming a government. Although they consider our cooperative institutions to be little more than bourgeois tyranny, they seem eager to make the changes they want to see through cooperating with the government rather than overthrowing it." - election.5.a:0 "Rather reform than revolution!" - election.5.b:0 "A broad coalition of cooperative parties is preferable." - election.6.t:0 "Election: Democratic Parties in Minority" - election.6.d:0 "Politics in [Root.GetName] have grown increasingly radicalized. Where there was once broad support for the parties which supported cooperative ideals and [Root.GetName]'s representative institutions, more voters have turned to the political extremes in this election. The parties in the political middle, even if they choose to set aside their differences, no longer form a majority. To avoid a weak minority government, we have no choice but to cooperate with either fascists or communists." - election.6.a:0 "We will work with the fascists to strengthen [Root.GetName]." - election.6.b:0 "Joining with the communists, we can facilitate social change." - election.6.c:0 "A minority government, although weak, is preferable." - election.7.t:0 "Fascists Influence Foreign Policy" - election.7.d:1 "Accepting the fascists into our political coalition has had an impact on our foreign policy. Despite their vehement nationalism, they have sympathizers abroad who approve of the influence they've been given in [Root.GetName]. Totalitarian governments of similar ideological leanings see us as potential allies. Maintaining ties to these nations, no matter the distaste [Root.GetRulingParty] may have for their ideals, may be necessary to retain the support of the fascists backing our government." - election.7.a:0 "We can use some allies against greater threats." - election.7.b:0 "With friends like that, we'd need no enemies." - election.8.t:0 "Communists Influence Foreign Policy" - election.8.d:0 "Communists often consider themselves to be part of an international revolution, and our choice to accept them as partners in our government has drawn the attention of many of their international allies. Representatives of communist parties maintain close ties to nations which have abandoned our form of government in favor of a dictatorship of the proletariat, ties which we may need to acknowledge in [Root.GetAdjective] foreign policy if we wish to retain their support." - election.8.a:0 "We should embrace our common causes." - election.8.b:0 "Down that path lies the dissolution of [Root.GetName] itself." - election.11.t:0 "Election: Fascist Majority" - election.11.d:0 "This election has been devastating for the very institution it represents. The majority of the [Root.GetAdjective] population have cast their vote in favor of a fascist party that seeks to abolish elections and install an autocratic ruler. While many consider taking up arms against this violation of the cooperative ideals that allowed them this mandate to begin with, others consider the use of violence to only confirm their ideals further." - election.11.a:0 "It is a black day for [Root.GetName], but the people have spoken." - election.11.b:0 "We will not give up our liberty without a fight!" - election.12.t:0 "Election: Communist Majority" - election.12.d:0 "The current election has resulted in victory for the communist parties, with mixed reactions from the former administration. While the new rulers claim to represent the people as a whole, they view many of the cooperative institutions we cherish as attempts to manipulate and oppress the working class, leading to discussion about what truly constitutes a 'rule of the people'. In some nations, the revolution began in rivers of blood. In [Root.GetName] it didn't, but it may yet end in them." - election.12.a:0 "This is troubling, but they truly do represent the majority." - election.12.b:0 "We must stop them before they abolish every sign of dissenting thought!" - election.13.t:0 "Election: Magnate Favors belligerent" - election.13.d:0 "An influential industrialist behind one of the companies we have chosen to work with for our industrial production has recently made a number of statements on politics that members of the administration found troubling. He has openly advocated an authoritarian government and praised foreign administrations that identify as fascist, implicitly suggesting that [Root.GetName] would benefit from such rulership. Denouncing the magnate and his ideals might sour our relationship with the company, but leaving them unchecked would give him a platform for spreading propaganda that erodes all that [Root.GetRulingParty] stands for." - election.13.a:0 "He can say what he pleases, we need not endorse it." - election.13.b:0 "We cannot rely on fascists to develop and protect [Root.GetName]." - election.14.t:0 "Election: Wartime Exception" - election.14.d:0 "[Root.GetName] is in a state of war. Normally, an election would be held at this time, but being in the midst of an important conflict many argue that cannot afford to spend time on political campaigning, or a change of leadership if that should come about. Meanwhile, others claim that declaring the ongoing war a valid reason for skipping elections is the first step towards eroding [Root.GetAdjective] democracy. After all, letting military matters take precedence over the people's influence could be a slippery slope." - election.14.a:0 "Elections will be held as usual." - election.14.b:0 "We can take care of such matters when this war is through." - election.15.t:0 "Election: Government Contested" - election.15.d:0 "With an upcoming election, people are beginning to question the capability of the current administration to pursue the ongoing war. [Root.GetName] has suffered greatly and popular opinion has turned against those who seem to be leading our nation to defeat. While our people are determined to see the war to the end, they would rather see another government ending it." - election.15.a:0 "This crisis of trust is highly unfortunate." - election.15.b:0 "Let the political landscape shift to keep the people united." - election.16.t:0 "[Root.GetLeader] Enjoys Public Support" - election.16.d:0 "With the present election, the opposition, insofar as it exists, has criticized the increasingly authoritarian reign of [Root.GetRulingParty]. They question whether the electorate has any power at all, or if it's all just for show.\n\nHowever, the support for [Root.GetLeader] appears to remain high, and although the circumstances of the election are questioned by international community, it has not been contested domestically. It appears that even if [Root.GetName] is no longer ruled by the people, the people support their ruler... at least the ones who made it to the ballots." - election.16.a:0 "One people, one leader." - election.17.t:0 "Election Results Questioned" - election.17.d:1 "Although the [Root.GetLeader] regime has strong-armed most of its opponents into silence, some have still spoken out about the recent election, accusing the [Root.GetRulingParty] of rigging the results and ignoring the clear efforts to elect a parliament opposed to their policies.\n\nThe government brushes these objections aside as an effort to divide the people against itself. However, the fact remains that the majority of the people seem to have reservations about their rule, and the opposition, although silenced for now, has made its point." - election.17.a:0 "Splitters!" - political.1.t:0 "Communism on the Rise" - political.1.d:0 "'While workers rise up against their oppressors around the world, those who claim to have achieved class consciousness in [Root.GetName] sit idly by and wait for change to come from within a political system so thoroughly corrupt, only revolution could save us from it!'\n\nSo speak new voices in the [Root.GetAdjective] communist movement. Referring to the rule of [Root.GetRulingParty] as a dictatorship of the bourgeois, they have begun calling for it to be brought out of power by any means necessary. Whether those means will come from within or without remains to be seen." - political.1.a:0 "There may be those in the government itself who support such ideas." - political.1.a.tt:0 "Increases the chance of internal support for a communist coup." - political.1.b:0 "A movement for the people must seek support from the people." - political.1.b.tt:0 "Increases the chance of popular support for a communist uprising." - political.2.t:0 "Marxist Sympathies in Government" - political.2.d:0 "Although the party line of the [Root.GetRulingParty] is to strongly oppose revolutionary socialism, keeping a watchful eye on the nation's radical left-wing elements, some people in government are more open to the possibility. If nothing else, they see room for addressing the concerns of the people who look to communists for solutions without risking a full-scale civil war.\n\nAlthough they may be seen as traitors by those who remain loyal to [Root.GetLeader], these dissident voices may be the ones to ensure a relatively bloodless transition should the revolution come." - political.2.a:0 "We'll keep a close eye on them too, for many reasons." - political.2.a.tt:0 "If public support is sufficient, a coup can be executed." - political.3.t:0 "Communists Execute Coup" - political.3.d:0 "While the popular movement for communist revolution has been loud and terrifying, a certain section of the political movement has been largely quiet and waiting. The wait is now over. Today, just as the [Root.GetRulingParty] leadership and army were bracing for a revolt on national scale, a number of officials in the [Root.GetAdjective] government swiftly placed [Root.GetLeader] under house arrest and entered negotiations with the rebels.\n\nWhile retaining a pretense of safeguarding order, what the negotiations effectively amounted to was to secure positions within the new socialist state for those who chose to cooperate. The coup was finished before anyone could move to stop it, and those who would have are now imprisoned, exiled or executed by the new regime." - political.3.a:0 "The tides of history will sweep away the past." - political.4.t:0 "Class Conflicts Divide [Root.GetName]" - political.4.d:0 "The communist revolutionary movement, once a fringe popular among radical academics in theory and troublemakers in practice, has seen increased support among the [Root.GetAdjective] working class. The fact that even more people choose to identify themselves with a 'class' at all implies that Marxist ideas are spreading beyond those who actively seek to overthrow the government.\n\n[Root.GetRulingParty] members lament this development, longing for a time when '[Root.GetAdjective]' was what people identified as first and foremost. Their concerns are not unfounded. It could be argued that a revolution is already underway, occurring on several levels of society, and it may be too late to stop it." - political.4.a:0 "The people may call themselves whatever they want." - political.5.t:0 "Soldiers Desert to Communist Partisans" - political.5.d:0 "'Capitalists and nationalists would have you spill your blood for them on the front lines, turning brother against brother over disputes that do not concern the working man! Instead of taking up arms against workers who struggle abroad, raise them against the oppressors and overthrow the tyrants!'\n\nThe army, usually a bastion of patriotism and loyalty, has proven not to be immune to the communist propaganda spreading rapidly in [Root.GetName]. Soldiers are deserting, refusing to fight for their country, sometimes going as far as joining partisan movements that claim to be preparing for revolution." - political.5.a:0 "Perhaps they are merely fighting for a different [Root.GetName]." - political.6.t:0 "The [GetMonth] Revolution" - political.6.d:0 "The notion that the communist movement represents the people has certainly gotten wind in its sails in [Root.GetName], where the public support for the communist party has increased rapidly in the past months. But those who call for revolution are no longer a disparate collection of guerrillas and disgruntled labor unions. The group behind the call for revolt is organized enough to form a government if they succeed.\n\nNevertheless, if the revolution started now, it could hardly be executed without launching [Root.GetName] into civil war. Should the revolutionaries risk tearing the nation in two to satisfy their impatience, or wait for a better opportunity in the future?" - political.6.a:0 "Those who wish to make history must act today!" - political.6.b:0 "Revolution is inevitable. The inevitable can wait." - political.7.t:0 "belligerent on the Rise" - political.7.d:1 "'The [Root.GetAdjective] people have been subjected too long to the incompetent rule of [Root.GetRulingParty]! They claim to represent the people, but fail to even keep our streets in order! Only by removing them from power can we make this nation grow!'\n\nThe fascist speakers in [Root.GetName] have made no secret of what they think of our current rulership and political system. Speeches like these have tapped into a public dissent that is particularly pronounced in the more conservative sections of the military." - political.7.a:0 "The higher-ups may harbor unspoken sympathies." - political.7.a.tt:0 "Increases the chance of internal support for a fascist coup." - political.7.b:0 "The younger generation will take up the torch." - political.7.b.tt:0 "Increases the chance of popular support for a fascist coup." - political.8.t:0 "Fascist Sympathies in the Military" - political.8.d:1 "Several high-ranking members of the [Root.GetAdjective] military have expressed support, some privately and some openly, for the Fascist movement in [Root.GetName]. They feel the [Root.GetRulingParty] has forgotten how important force of arms is to keeping the country together, and are increasingly annoyed by the army being treated by the government as more of a tool than a one of the nation's most important institutions. Some of them go as far as to suggest that a new government is needed, one that knows how to lead [Root.GetName] into the next half of the century.\n\nThis faction may not predominantly be politicians, but some of them have gained positions in the department of defense. If these developments continue, they may have sufficient political support to execute a coup." - political.8.a:0 "The national spirit outranks the government." - political.9.t:0 "Fascist Coup d'état" - political.9.d:0 "Some will say they saw it coming. Both those who warned against the dangers of belligerent and those who extolled it as the savior of [Root.GetName] have found their prophecies made reality today, as the military in [Root.Capital.GetName] overthrew the [Root.GetRulingParty]-led government and seized power. [Root.GetLeader] is missing, rumored to have gone into exile, and the coup has been met with little initial resistance.\n\nThe new [Root.GetAdjective] leadership has no plans to allow resistance to grow, either. Martial law has been declared and with the changes that are underway, whatever comes after is unlikely to be very different." - political.9.a:0 "A strong state is needed to protect people from themselves." - political.10.t:0 "Civil War for belligerent" - political.10.d:1 "While the attempts of the fascist movement to revive nationalistic sentiment have seen some success, the resistance against these ideas remains high. The generals plotting to overthrow the current administration are disappointed in the lack of confidence the [Root.GetAdjective] population themselves seem to have in [Root.GetFascistParty].\n\nThey remain certain that the people will eventually tire of [Root.GetLeader], but are divided on what course of action to take. Some call for a coup to be executed now, before [Root.GetName]'s enemies take action. However, doing so while public support is limited would plunge the nation into civil war." - political.10.a:0 "The will to power is meaningless if one hesitates to seize it." - political.10.b:0 "They must unite the people first, then rule them." - political.11.t:0 "Fascist Assault Divisions Form" - political.11.d:0 "The political and the martial have always been intertwined in belligerent. In parallel with its growing political movement, fascist parties have begun to form paramilitary organizations to protect against both internal and external threats, the internal threats being their political opponents. Although many people find this development worrying, the wave of militaristic furor has led to an increased amount of volunteers joining our armed forces.\n\nThe political leaders of the movement have pointed out that their opponents have reason to be afraid. Having the army permeated on several levels by so explicitly political elements, the enemies of [Root.GetName] and the enemies of belligerent are beginning to look very much alike." - political.11.a:0 "Only traitors to the country have anything to fear." - political.12.t:0 "The Threat of Communism" - political.12.d:0 "'[Root.GetLeader] would have you believe [Root.GetName] stands safe and united. It is no surprise such lies have poisoned the minds of our people, when a snake is coiled up next door! Look no further than across our border to see countrymen having turned on each other in the name of revolutionary, declaring the end of nations. How long until they declare our nation dead as well? Will the [Root.GetRulingParty] protect us from this threat?'\n\nThe growth of the fascist movement in [Root.GetName] has been bolstered by the proximity of the communist revolution. Many moderates who might normally dismiss belligerent as another misguided ideological experiment find this to be a very real concern for them as well. Given the choice between the revolutionary of our neighbors and a fascist regime, they would admittedly prefer the latter. They might even be willing to actively support it." - political.12.a:0 "We will be the vanguard against the red threat!" - political.13.t:0 "Move Towards Democracy" - political.13.d:0 "'If we silence the voices of the people, how can any of us claim to be the voice of [Root.GetName] ourselves? If we fear dissent, if we fear being publicly denounced or ousted by public vote, what we truly fear is that we are hated and reviled by our own citizens. Does the [Root.GetRulingParty] really have so little confidence in its principles?'\n\nA careful and loosely organized, but passionate faction in the government has begun to push for less repressive policies against enemies of the state. They want the public involved in decision-making through referendums and local party meetings, even if this means risking the future of the current agenda." - political.13.a:0 "We can discuss this internally for a start." - political.13.a.tt:0 "Increases the chance of internal support for arranging elections." - political.13.b:0 "Knowing we're in the right, we can afford allowing our enemies to talk more openly." - political.13.b.tt:0 "Increases the chance of people voicing support for democracy and forming an opposition." - political.14.t:0 "[Root.GetRulingParty] Debates Democracy" - political.14.d:0 "Surprisingly, the call for more referendums and less repressive measures against opponents of the regime has received some support in internal party discussions. While [Root.GetRulingParty] leadership remains skeptical, several influential members have supported a shift.\n\nPerhaps they have confidence that little will change in practice, or perhaps they are secretly traitors to the party cause, as many of their opponents would have it. Regardless, if the public call for such changes should come, some of the leaders of [Root.GetName] are ready to compromise." - political.14.a:0 "The choice may not always stand between liberty and death." - political.14.a.tt:0 "The government may arrange elections when the policy has majority support." - political.15.t:0 "Democratic Opposition Forming" - political.15.d:0 "Relaxing the restrictions on what sort of anti-[Root.GetRulingParty] propaganda can be spread publicly has, predictably, lead to an increase in public expressions of dissent. Organized demonstrations and pamphlets are so far found mostly in academic institutions and some of [Root.GetName]'s more unfortunate areas, but there is little doubt that the movement is spreading.\n\nThe nation's leaders are torn over the issue. [Root.GetLeader], who maintains an iron grip on party leadership, has little desire to diversify public debate. The first steps have already been taken, however, and there may be no turning back." - political.15.a:0 "The movement appears to grow naturally in the absence of of repression." - political.16.t:0 "Public Call for Elections" - political.16.d:0 "The demonstrations of public dissent which were once confined to limited areas are now widespread. While people gather in the streets, the [Root.GetRulingParty] finds itself at a crossroads. If we continue allowing this propaganda to spread, the referendums suggested both from within the party itself as well as the opposition may show that we do not have the support of the public. The unity we have strived for is giving way to a plurality of opinions, united against us." - political.16.a:0 "Even if reform is happening, we must show our strength by suppressing this defiance." - political.16.b:0 "Let the people be heard." - political.17.t:0 "Public Election in [Root.GetName]" - political.17.d:0 "As freedom of expression and assembly have grown to become increasingly accepted in [Root.GetName], the faction within the [Root.GetRulingParty] calling for holding elections has gone from secret conspirators to publicly supported reformers. Despite [Root.GetLeader]'s protests, the country has been making a slow but steady move towards democracy for the past months and an election now seems like the natural next step.\n\nHowever, far from all [Root.GetAdjective] citizens are in favor of cooperative reforms. There is still debate within the party regarding whether to wait holding the election until we can ensure a stable development." - political.17.a:0 "Those loyal to the [Root.GetRulingParty] will support the decision now." - political.17.b:0 "The reforms need broader support before an election can be held." - political.18.t:0 "Fascists Demand Referendum" - political.18.d:1 "The rapidly growing [Root.GetAdjective] fascist movement has never claimed that they need majority support before they seize power, counting on uniting the nation under their leadership once their rule is established. However, it seems their public support has grown rapidly. Many fascists are now calling [Root.GetLeader] a hypocrite, claiming to represent the wishes of the people while in reality turning a deaf ear to the masses.\n\nThe call for a referendum has been dismissed as typical attempts at disrupting the system by [Root.GetRulingParty] members so far, but at least it's a political measure. If we do not act now, the fascists may choose the violent struggle as a better path to power." - political.18.a:0 "Suppress this hateful movement!" - political.18.b:0 "Don't pay any attention to them." - political.18.c:0 "If the people want it, we'll hold the referendum." - political.19.t:0 "Communists Demand Referendum" - political.19.d:0 "Marxist ideas took root in [Root.GetName] a long time ago, but have gained much more widespread support lately. The movement has spread outside political theory and into political practice, with disgruntled workers and even some high-profile celebrities voicing support. The communists call this class consciousness. The [Root.GetRulingParty] call it a fast track to riots and treason.\n\nShowing little faith in [Root.GetLeader] being willing to implement the reforms they demand, the more vocal communists have called for an immediate referendum to have the current government removed. While we might be able to reverse the momentum of this mass movement, failure to do so will doubtlessly result in the more popular communist method of removal: Revolution." - political.19.a:0 "Un-[Root.GetAdjective] activities must be stopped!" - political.19.b:0 "Ignore them, they're just causing trouble." - political.19.c:0 "The referendum is preferable to a bloody revolt." - political.20.t:0 "Democrats Demand Referendum" - political.20.d:0 "Unsurprisingly, the idea of the people ruling the nation they inhabit can easily grow very popular among the people. The [Root.GetRulingParty], of course, sees the idea of democracy as represented by these movements - freedom of speech, public elections, free press - merely populist rhetoric meant to weaken [Root.GetLeader]'s government.\n\nHowever, there is no denying those ideas have taken hold among the [Root.GetAdjective] population. In true cooperative fashion, they call for a public referendum on replacing the current regime. Although currently easy to ignore, these ideas have a way of growing very persistent. What will happen to us if we make peaceful revolution impossible?" - political.20.a:0 "Round them up." - political.20.b:0 "Just proceed as usual." - political.20.c:0 "If we accept the referendum, perhaps we can preserve our legacy." - political.21.t:0 "Fascists March on [Root.Capital.GetName]" - political.21.d:0 "Having been refused their referendum, almost a token attempt at seizing power legally, the fascists have used their significant public support and connections in the [Root.GetAdjective] military to attempt a coup. The [Root.GetRulingParty] government has refused their terms and claims it is going to fight to the end to preserve [Root.GetName] as we know it." - political.21.a:0 "We will stop them at any cost!" - political.21.b:0 "The fascists carry the true spirit of [Root.GetName]!" - political.22.t:0 "Communists Rise Up" - political.22.d:0 "After their request for a referendum was denied, the few reformers of the communist movement in [Root.GetName] rapidly lost influence to the more radical elements. With the [Root.GetRulingParty]'s refusal to acknowledge the public support for the suggested reforms, the romantic view of the revolution gradually grew more widespread and the leaders of the movement become those who could most easily start a riot. Those riots have now erupted into a full-scale civil war, with the future of the nation at stake." - political.22.a:0 "We won't allow them to ruin our country!" - political.22.b:0 "The fire of the revolution must be extinguished with the blood of the oppressors!" - political.23.t:0 "The [Root.GetAdjective] Spring" - political.23.d:0 "After their attempt at a public referendum to institute democracy was refused, the people behind the suggestion have dismissed the [Root.GetLeader] regime as incorrigible. A broad coalition of rebel groups, united by their common goal of instituting more representative political systems in [Root.GetName], have taken up arms and announced that they will not rest until the [Root.GetRulingParty] is overthrown." - political.23.a:0 "Spare us from this mob rule!" - political.23.b:0 "At long last, [Root.GetName] is free!" - political.24.t:0 "Fascists Ridiculed" - political.24.d:0 "The [Root.GetAdjective] people's infatuation with nationalistic pride and attempts to revive the glories of the past appears to have passed. A rude awakening for its ardent supporters, whose uniforms, militaristic posturing and over-the-top speeches are now more commonly the subject of mockery than sympathies.\n\nOnce considered a threat to the [Root.GetRulingParty] power base, [Root.GetAdjective] belligerent is now increasingly seen as an absurd, extremist position and an attack on the most fundamental values of our nation, the very nation they claim to hold in such high regard. The word seems more suited as an insult than a political designation." - political.24.a:0 "What a bunch of clowns." - political.25.t:0 "Communist Fad Blows Over" - political.25.d:0 "Many communists had predicted that [Root.GetName] was going to be the next nation to fall to the so-called international revolution, but after a few months of strikes and red flags in the streets, the movement seems to have died down. The working class, the supposed driving force of the revolution, has more pressing concerns than overthrowing [Root.GetLeader] and seem decidedly unimpressed with how well these revolutions have played out elsewhere. Meanwhile, the intellectuals who wrote passionate calls for slitting the throats of the oppressors have turned out to be surprisingly reluctant to instigate anything that might actually upset their comfortable lifestyle.\n\nTalk of the revolution will likely continue, whether over cheap beers or expensive wines, but it will likely be talk and nothing more." - political.25.a:0 "What a bunch of hypocrites." - political.26.t:0 "Democratic Movement Goes Silent" - political.26.d:0 "After a few months of loud opposition against [Root.GetLeader]'s regime, calling for public elections and more liberal laws on freedom of assembly and speech, the movement seems to have fallen apart. People now express more concern about the stability of [Root.GetName] if such reforms were to take place, with those who clamor for democracy being seen more as troublemakers than everything else.\n\nMore mysteriously, many of the leading figures of the movement appear to have gone missing or stopped their work suddenly. Perhaps some of them chose to go into exile when they saw the failure of their efforts. Regardless, the [Root.GetRulingParty] government denies all knowledge and involvement." - political.26.a:0 "What a bunch of quitters." - political.27.t:0 "[Root.GetLeader] Abandons Neutral Foreign Policy" - political.27.d_belligerent:1 "After [Root.GetRulingParty]'s recent rise to power, [Root.GetLeader] announced that [Root.GetName] would no longer keep its Neutral Foreign Policy.\n'The world has become tangled and complex. We are no longer safe on our own. We must stand with our fascist partners against our enemies. If we do not choose a side, we will perish alone.'" - political.27.d_revolutionary:0 "After [Root.GetRulingParty]'s recent rise to power, [Root.GetLeader] announced that [Root.GetName] would no longer keep its Neutral Foreign Policy.\n'The world has become tangled and complex. This country has always stood on it principles and been ready to defend them. We are no longer safe on our own. Neutrality is no longer the safe haven it used to be and those who seek power in this world do not respect it. We must stand with our communist brothers against the powers that seek to oppress us. Against the bourgeois majority who wants nothing more than keep us down. If we do not take a stand, we will perish alone.'" - political.27.a:0 "For the future of [Root.GetName]" - political.28.t:0 "[Root.GetNameDefCap] Reunited" - political.28.d:1 "The terrible civil war that has devastated our land draws to an end, and we have finally reached a political agreement. We now see eye to eye with our fellow [Root.GetAdjective]s, and together we will rebuild our great nation. The enemies that have sought to capitalize on our infighting must now face a united [Root.GetAdjective] state.\n\nThe new [Root.GetRulingIdeology] [Root.GetName] will never be divided again!" - political.28.a:0 "United at last!" - political.29.t:0 "End of Civil Conflict" - political.29.d:0 "The civil war that has divided our nation has now ended, and our cause has prevailed. We cannot, however, let those who supported our adversaries continue to spread their insidious propaganda among the population. A firm hand is required in the days to come, so that we may stand united, ready, and strong against any external threats that would endanger our fledgling government." - political.29.a:0 "It will be done." - THREAT_FROM_EFFECT:0 "Threat from actions" - war_justification.1.t:0 "[Root.GetLeader] Speaks Against [From.GetName]" - war_justification.1.d:1 "'Does [From.GetName] belong to the [From.GetAdjective]? Let us ask ourselves a better question: Does the future belong to the [From.GetAdjective] or does it belong to [Root.GetNameDef]?'\n\n[Root.GetLeader]'s speech today suggested that [Root.GetName] is on the path to war. Political tensions have been building over the past month and it seems the [Root.GetAdjective] people are coming to accept that war is inevitable." - war_justification.1.a:0 "The future belongs to [Root.GetName]!" - war_justification.2.t:0 "[Root.GetLeader] Denounces [From.GetAdjective] Ideals" - war_justification.2.d:1 "'The [From.GetAdjective] claim to have liberty and democracy, claim to want peace, but all of these things they pride themselves on are hollow. Their democracy divides the people where it should stand united and their liberty only betrays a lack of discipline. We [Root.GetAdjective]s see through these lies... and we can see that this peace, peace on their terms, is a lie as well.'\n\n[Root.GetRulingParty] has long derided the weakness of the [From.GetAdjective] nation, but lately the rhetoric has grown more aggressive. The day of armed conflict grows closer." - war_justification.2.a:0 "[Root.GetName] stands united under [Root.GetLeader]." - war_justification.3.t:0 "[Root.GetLeader] Warns Against [From.GetAdjective] Communism" - war_justification.3.d:1 "'Is there a bigger threat to our way of life, or indeed the way of life itself, than revolutionary? This plague that threatens to make the slaves, not the masters, rule every nation, to abolish the nation itself, to abolish people and their history. We will take [From.GetName] and abolish the communist plague.'\n\n[Root.GetLeader]'s hatred of communists has been well known since before [Root.GetRulingParty]'s rise to power, but it appears to have intensified recently in the specific case of the [From.GetAdjective] government. Our quest to purge Marxism off the face of the Earth may start there." - war_justification.3.a:0 "Those who reject nations will see their own perish." - war_justification.4.t:0 "[Root.GetName] Prepares for Great Struggle" - war_justification.4.d:1 "'The [From.GetAdjective] are a people who will not part easily with power. However, they must also realize that the trajectory of our two nations can only end in a clash. We must steel ourselves for the struggle to come. For [From.GetName] will not be taken without a fight.'\n\nThe possibility of an understanding between the similarly minded governments of [From.GetName] and [Root.GetName] has given way to a campaign to take their territory by force." - war_justification.4.a:0 "History will be written through our victory." - war_justification.5.t:0 "[Root.GetLeader] Brings Revolution to [From.GetName]" - war_justification.5.d:0 "'While we have consolidated the socialist society in [Root.GetName], many nations still suffer under the despots of old. The workers of [From.GetName] have no voice, no means to organize, and any attempts to institute socialism will be crushed savagely by the [From.GetLeader] regime. We cannot wait for the gears of the international revolution to turn for the [From.GetAdjective] people. With the revolution we have proven that we could crush the capitalist oppressors here, and we will crush the oppressors in [From.Capital.GetName] as well!'\n\n[Root.GetLeader] has abandoned all attempts at diplomatic rhetoric towards [From.GetRulingParty]-controlled [From.GetName]. The quest to eradicate all borders is now strictly focused on eradicating their borders." - war_justification.5.a:0 "[From.GetAdjective] workers, your liberation is near!" - war_justification.6.t:0 "[Root.GetLeader] Calls to Aid [From.GetAdjective] Workers" - war_justification.6.d:0 "'Is there a greater lie than the supposed liberty of the [From.GetAdjective] people? Where they once slaved under the princes and dukes who claimed ownership of the soil, they are now forced to sell their labor to those who claim ownership of the factories. Their freedom to choose one master over the other can hardly be called liberty. Likewise, their freedom to elect their leaders is a false choice, as propaganda would never allow the true socialists to take power. A people so thoroughly indoctrinated can only be saved by a [Root.GetAdjective] intervention.'\n\n[Root.GetLeader] has polemicized against the government in [From.GetName] for a long time in party meetings, but this rhetoric is now used more frequently in public. There is little reason to believe that this conflict could be resolved peacefully." - war_justification.6.a:0 "We will crush their bourgeois dictatorship!" - war_justification.7.t:0 "[From.GetAdjective] Communism Failing" - war_justification.7.d:0 "'Comrades, although the greatest revolutionaries have once been called traitors, it has become plain to see that the revolution itself has been betrayed. How else would you explain the rule of the [From.GetRulingParty] of [From.GetName], who have cast aside every hint of Marxist ideas to build a degenerated worker's state where they can reign under false premises? In strengthening their own power at the price of the international revolution, they have shown that they care little for the ideals they claim to hold. We must bring the true revolution to them.'\n\nAlthough initially supportive of the [From.GetAdjective] revolution, [Root.GetLeader] has expressed increased disappointment with how it has developed. The [Root.GetRulingParty] may have to intervene before it is too late." - war_justification.7.a:0 "There is time yet to salvage their attempt at socialism." - war_justification.8.t:0 "[Root.GetLeader] Calls for Crushing [From.GetAdjective] Nationalism" - war_justification.8.d:0 "'Is there any society more repugnant to the future of the revolution, any more alien to the plight of the worker, than the fascist regime of [From.GetName]? Calling upon the people to devote themselves fanatically to the decrepit institution of the nation state, they have dressed up age-old ways of savagery in a modern costume, trying to present themselves as an alternative future to the inevitable international victory of the working class. It is only a matter of time until they strike against us or our allies. Let us strike first.'\n\nNo one has expected less than mutual contempt between us and the [From.GetAdjective], but the animosity has intensified lately. It now appears that conflict will arise sooner rather than later." - war_justification.8.a:0 "Death to fascists!" - war_justification.9.t:0 "Diplomacy with [From.GetName] Breaks Down" - war_justification.9.d:0 "'Despite our attempts to find a diplomatic solution to our conflict with [From.GetName], negotiations have once again broken down, leaving us with limited options. The authoritarian [From.GetLeader] regime has displayed the unreasonable approach to this matter typical of leaders who are not accountable to their people. Barring a complete turnaround in the policies of [From.GetAdjective] leadership, we will be left with no recourse but to fight.'\n\n[Root.GetAdjective] intervention in [From.GetName] has been a hot issue, with some politicians in the opposition claiming that [Root.GetRulingParty] has pursued a hawkish policy from the start. Whatever their original intent, a future war now suddenly seems very real and inevitable." - war_justification.9.a:0 "Sometimes, you need to climb the mountain of conflict." - war_justification.10.t:0 "[Root.GetLeader] Calls for Intervention in [From.GetName]" - war_justification.10.d:0 "'It is with heavy heart that we must confront the reality of our situation: An invasion of [From.GetName] may be our only recourse. It is of too great a strategic advantage to attempt any other solution in our current situation. Although we trust that neither the [Root.GetAdjective] nor the [From.GetAdjective] people want war, but history has led us to this point and our options are limited. We can only hope that through this assertion of our military power, we can avoid further bloodshed in the future.'\n\nAlthough it is a popular theory that democracies do not go to war against other democracies, recent developments have pointed to a [Root.GetAdjective] invasion of [From.GetName] in the future. History may surprise us yet." - war_justification.10.a:0 "[From.GetName] is a dubious democracy anyway." - war_justification.11.t:0 "[Root.GetLeader] Speaks Against Red Menace" - war_justification.11.d:0 "'Without a doubt, [From.GetName] revolutionary is one of the greatest threats to liberty and order in this era. Relentless and ruthless, it threatens to devour not only the [From.GetAdjective] people's hope of a prosperous, cooperative society, but that of its neighbors as well. If we do not act now, we may well see this first domino fall too late, leaving more failed social experiments in its wake. How many more need die before we intervene?'\n\nThe threat of subversive activity undermining our democracy, fueled by [From.GetAdjective] ambitions, has become a hotly debated topic recently. While representatives in opposition have called this a Red Scare aimed at pursuing war with [From.GetName], the rhetoric of the [Root.GetRulingParty] has been highly successful so far." - war_justification.11.a:0 "They follow a violent ideology, what reaction can they expect but violence?" - war_justification.12.t:0 "[Root.GetLeader] Confronts [From.GetAdjective] belligerent" - war_justification.12.d:0 "'In modern history, perhaps even in history as a whole, there has been no worse tyranny than the iron grip in which [From.GetRulingParty] now holds [From.GetName]. People may argue that we should not provoke conflict, that we should trust [From.GetLeader] to honor treaties and promises in the future, but these people fail to see that treaties made under the reign of belligerent are useless. To these dishonorable liars, might makes right, and the paper on which an agreement is written burns just as easily as the books of their detractors.'\n\nPeople who have long hoped to avoid a direct confrontation with [From.GetName] have now been strongly opposed by [Root.GetLeader], who argues that we in Machiavellian terms are merely postponing war to the advantage of the enemy. At this rate, we may strike the first blow after all." - war_justification.12.a:0 "There can be no peace in our time until they are gone." - war_justification.13.t:0 "[Root.GetLeader] Calls for War Against [From.GetName]" - war_justification.13.d:0 "'Although we may be a peaceful people, our nature alone does not determine the course we must take in history. This is a time of war. For too long, the [From.GetAdjective] have possessed the means that we need to make it through the trials we may face, and it's apparent that they will not part with them peacefully. Despite our best efforts to build a modern state, some matters can only be settled through the old trials of battle.'\n\n[Root.GetLeader]'s hostile rhetoric towards [From.GetName] has gone to great lengths to justify an invasion. Some portion of the population support this course, but the decision lies in the lands of our leader." - war_justification.13.a:0 "It may be a difficult decision, but we must stand behind it." - war_justification.14.t:0 "[Root.GetLeader] Challenges [From.GetAdjective] Pretensions" - war_justification.14.d:0 "'[From.GetName] may think themselves more modern and advanced than us, but the truth is that their nation has not been tested as ours has, nor are they prepared for the threats now plain to see on the horizon. By their disdain towards us, and preventing us to seize that which is rightfully ours, they have made us one of those threats to themselves. Their weak and divided nation will hardly resist our claims.'\n\nThe derisive opinion of [From.GetName] long held by the [Root.GetRulingParty] has developed from criticism to hostility. Although popular opinion is that the [From.GetAdjective] people want to avoid war, [Root.GetLeader] claims that their elected leaders have provoked it through their arrogance." - war_justification.14.a:0 "They do not know how strong our hardships have made us." - war_justification.15.t:0 "[Root.GetLeader] Wants to Restore Order in [From.GetName]" - war_justification.15.d:0 "'The [Root.GetAdjective] national spirit is strong, but not all nations are so fortunate. [From.GetName] has had its traditions destroyed and rightful rulers long since murdered and buried, all in the name of the idea of the great Marxist revolution. It is our duty to restore order to this world led astray by bloodthirsty usurpers and to assert the strength of [Root.GetName] against this threat.'\n\nWhile the [Root.GetRulingParty] has always opposed revolutionary, [From.GetName] has been a target of particular attacks in recent speeches. Whether or not the attack on the [Root.GetAdjective] nation from communists is a real threat, the preemptive attack on [From.GetAdjective] revolutionary is already in the works." - war_justification.15.a:0 "Those murdered in the revolution will be avenged!" - war_justification.16.t:0 "[Root.GetLeader] Calls Out [From.GetAdjective] Oppressors" - war_justification.16.d:0 "'My opponents would have you believe that my rule is like that of the [From.GetRulingParty] in [From.GetName]. They could not be more wrong. While [From.GetLeader]'s successes are the result of a recent fad, a destructive mass movement bent on bullying other nations into submission, the [Root.GetRulingParty] stands in opposition to that movement as the ones who will not submit. I am prepared to do whatever is necessary to eliminate this threat, even if it means war.'\n\nThe [Root.GetLeader] regime has adopted a hostile policy towards the [From.GetAdjective] nation. Whatever our leaders may be called, fascist is a word reserved for our enemies." - war_justification.16.a:0 "Tradition and pragmatism will always triumph over fanaticism and terror." - war_justification.17.t:0 "[Root.GetLeader] Questions [From.GetAdjective] Sovereignty" - war_justification.17.d:0 "'Who determines the borders of a nation and how are they determined? Whatever way people may have found in the past to justify where [Root.GetName] ends and [From.GetName] begins, we live in a new era. The strategic importance of this border cannot be overstated, and we are well within our rights to shift it to ensure the continued security of our people.'\n\nListening to [Root.GetLeader]'s recent speeches, an invasion of [From.GetName] appears imminent. Dissenting voices have objected, but public support for war is on the rise." - war_justification.17.a:0 "We must rally behind this cause!" - war_justification.18.t:0 "[Root.GetLeader] Questions the Motives of [From.GetName]" - war_justification.18.d:0 "'There is no doubt that [From.GetName] is preparing for war. The changes in economic policy make it plain to see that the [From.GetAdjective] are not a people of peace, but rather waiting for the right opportunity to strike against us. Will we stand idly by and watch them arm themselves while [Root.GetName] is undefended? Or will we disarm this threat before it grows beyond our power?'\n\nThe hawks in the [Root.GetRulingParty] have turned their eyes towards [From.GetName], arguing that attack is the best defense. Their viewpoint is gaining traction and [Root.GetName] is preparing for war." - war_justification.18.a:0 "At least through war, there will be an end to this conflict." - war_justification.19.t:0 "[Root.GetLeader] Angered by [From.GetAdjective] Posturing" - war_justification.19.d:0 "'Those naïve citizens of [Root.GetName] who imagine the [From.GetAdjective] as a people of peace are entirely out of touch with reality. Those who live at our border do not have the luxury of such delusions, seeing their troops closing in on us just across it. This is a threat we cannot leave unanswered. With every passing day, [From.GetName] is preparing for war. It would be madness for us not to do the same.'\n\nThe [From.GetAdjective] military presence close to our territory has sparked increased concern as this nation appears more and more to be the enemy of the [Root.GetRulingParty]. Whether it is the cause or the effect of their polemic is a matter of contention." - war_justification.19.a:0 "Regardless, we must ready the people for war." - war_justification.20.t:0 "[Root.GetLeader] Advocates Invasion of [From.GetName]" - war_justification.20.d:0 "'If we want to have the strategic advantage in the foreseeable, not to say inevitable war with [From.GetName], there is no room to hesitate. This is about safeguarding our children's futures and ensuring that [Root.GetName] has a place in the world tomorrow. This is a matter of devotion to our cause and the ideals we take for granted. It's time to act.'\n\nA series of rousing speeches from [Root.GetRulingParty] leaders, most prominently [Root.GetLeader], has been calling the public to support an invasion of [From.GetName]. The geopolitical motives behind the invasion are less prominent in the rhetoric to patriotic sentiments, but this campaign appears highly efficient in convincing the public of its necessity." - war_justification.20.a:0 "The nation stands behind this important decision." - war_justification.201.t:0 "[From.GetLeader] Speaks Against [Root.GetName]" - war_justification.201.d:1 "'Does [Root.GetName] belong to the [Root.GetAdjective]? Let us ask ourselves a better question: Does the future belong to the [Root.GetAdjective] or does it belong to [From.GetName]?'\n\n[From.GetLeader]'s speech today, suggested that [From.GetName] is on the path to war. Political tensions have been building over the past month and it seems the [From.GetAdjective] people have accepted that war is inevitable. [Root.GetName] must also prepare." - war_justification.201.a:0 "Why can we not be allowed to live in peace?" - war_justification.202.t:0 "[From.GetLeader] Denounces [Root.GetAdjective] Ideals" - war_justification.202.d:1 "'The [Root.GetAdjective] claim to have liberty and democracy, claim to want peace, but all of these things they pride themselves on are hollow. Their democracy divides the people where it should stand united and their liberty only betrays a lack of discipline. We [From.GetAdjective]s see through these lies... and we can see that this peace, peace on their terms, is a lie as well.'\n\n[From.GetRulingParty] has long derided the weakness of the [Root.GetAdjective] nation, but lately the rhetoric has grown more aggressive. The day of armed conflict grows closer." - war_justification.202.a:0 "As expected from fascist scum like [From.GetLeader]." - war_justification.203.t:0 "[From.GetLeader] Warns Against [Root.GetAdjective] Communism" - war_justification.203.d:1 "'Is there a bigger threat to our way of life, or indeed the way of life itself, than revolutionary? This plague that threatens to make the slaves, not the masters, rule every nation, to abolish the nation itself, to abolish people and their history. We will take [From.GetName] and abolish the communist plague.'\n\n[From.GetLeader]'s hatred of communists has been well known since before [From.GetRulingParty]'s rise to power, but it appears to have intensified recently in the specific case of the [Root.GetAdjective] government. Our quest to purge Marxism off the face of the Earth may start there." - war_justification.203.a:0 "If they fear our cause, they fear their own people." - war_justification.204.t:0 "[From.GetName] Prepares for Great Struggle" - war_justification.204.d:1 "'The [Root.GetAdjective] are a people, who will not part easily with power. However, they must also realize that the trajectory of our two nations can only end in a clash. We must steel ourselves for the struggle to come. For [Root.GetName] will not be taken without a fight.'\n\nThe possibility of an understanding between the similarly minded governments of [Root.GetName] and [From.GetName] has given way to a campaign to take their territory by force." - war_justification.204.a:0 "Let them come!" - war_justification.205.t:0 "[From.GetLeader] Bring Revolution to [Root.GetName]" - war_justification.205.d:0 "'While we have consolidated the socialist society in [From.GetName], many nations still suffer under the despots of old. The workers of [Root.GetName] have no voice, no means to organize, and any attempts to institute socialism will be crushed savagely by the [Root.GetLeader] regime. We cannot wait for the gears of the international revolution to turn for the [Root.GetAdjective] people. We have proven that we could crush the capitalist oppressors here, and we will crush the oppressors in [Root.Capital.GetName] as well!'\n\n[From.GetLeader] has abandoned all attempts at diplomacy with our government. The communist task of eradicating all borders is now strictly focused on eradicating our borders." - war_justification.205.a:0 "[Root.GetLeader] is a better ruler than any revolutionary opportunist!" - war_justification.206.t:0 "[From.GetLeader] Calls to Aid [Root.GetAdjective] Workers" - war_justification.206.d:0 "'Is there a greater lie than the supposed liberty of the [Root.GetAdjective] people? Where they once slaved under the princes and dukes who claimed ownership of the soil, they are now forced to sell their labor to those who claim ownership of the factories. Their freedom to choose one master over the other can hardly be called liberty. Likewise, their freedom to elect their leaders is a false choice, as propaganda would never allow the true socialists to take power. A people so thoroughly indoctrinated can only be saved by a [From.GetAdjective] intervention.'\n\nUnwilling to accept that our people may be satisfied without their social experiments, the communist regime in [From.GetName] has openly threatened to attack our nation. There is little reason to believe that this conflict could be resolved peacefully." - war_justification.206.a:0 "What merits can their convictions hold if they must force them on us?" - war_justification.207.t:0 "[Root.GetAdjective] Communism Failing" - war_justification.207.d:0 "'Comrades, although the greatest revolutionaries have once been called traitors, it has become plain to see that the revolution itself has been betrayed. How else would you explain the rule of the [Root.GetRulingParty] of [Root.GetName], who have cast aside every hint of Marxist ideas to build a degenerated worker's state where they can reign under false premises? In strengthening their own power at the price of the international revolution, they have shown that they care little for the ideals they claim to hold. We must bring the true revolution to them.'\n\nAlthough initially supportive of [Root.GetRulingParty]'s victory in [Root.Capital.GetName], [From.GetLeader] has drifted away from [Root.GetLeader]'s philosophy. The conflict has escalated to the point where they are preparing to invade to enforce their brand of socialism on us." - war_justification.207.a:0 "They do not understand what the revolution means to the [Root.GetAdjective] people." - war_justification.208.t:0 "[From.GetLeader] Calls for Crushing [Root.GetAdjective] Nationalism" - war_justification.208.d:0 "'Is there any society more repugnant to the future of the revolution, any more alien to the plight of the worker, than the fascist regime of [Root.GetName]? Calling upon the people to devote themselves fanatically to the decrepit institution of the nation state, they have dressed up age-old ways of savagery in a modern costume, trying to present themselves as an alternative future to the inevitable international victory of the working class. It is only a matter of time until they strike against us or our allies. Let us strike first.'\n\nNo one has expected less than mutual contempt between us and the [Root.GetAdjective], but the animosity has intensified lately. Hearing [From.GetLeader] speak, it appears that conflict will arise sooner rather than later." - war_justification.208.a:0 "Death to communists!" - war_justification.209.t:0 "Diplomacy with [Root.GetName] Breaks Down" - war_justification.209.d:0 "'Despite our attempts to find a diplomatic solution to our conflict with [Root.GetName], negotiations have once again broken down, leaving us with limited options. The authoritarian [Root.GetLeader] regime has displayed the unreasonable approach to this matter typical of leaders who are not accountable to their people. Barring a complete turnaround in the policies of [Root.GetAdjective] leadership, we will be left with no recourse but to fight.'\n\n[From.GetAdjective] intervention in our domestic affairs has been a hot issue, with some politicians in their opposition claiming that [From.GetRulingParty] has pursued a hawkish policy from the start. Whatever their original intent, a future war now suddenly seems very real and inevitable." - war_justification.209.a:0 "Their condescending rhetoric will not intimidate us." - war_justification.210.t:0 "[From.GetLeader] Calls for Intervention in [Root.GetName]" - war_justification.210.d:0 "'It is with heavy heart that we must confront the reality of our situation: An invasion of [Root.GetName] may be our only recourse. It is of too great a strategic advantage to attempt any other solution in our current situation. Although we trust that neither the [From.GetAdjective] nor the [Root.GetAdjective] people want war, but history has led us to this point and our options are limited. We can only hope that through this assertion of our military power, we can avoid further bloodshed in the future.'\n\nAlthough it is a popular theory that democracies do not go to war against other democracies, recent developments have pointed to a [From.GetAdjective] invasion of [Root.GetName] in the future. History may surprise us yet." - war_justification.210.a:0 "[From.GetName] is a dubious democracy anyway, pursuing such aggressive action." - war_justification.211.t:0 "[From.GetLeader] Speaks Against Red Menace" - war_justification.211.d:0 "'Without a doubt, [Root.GetName] revolutionary is one of the greatest threats to liberty and order in this era. Relentless and ruthless, it threatens to devour not only the [Root.GetAdjective] people's hope of a prosperous, cooperative society, but that of its neighbors as well. If we do not act now, we may well see this first domino fall too late, leaving more failed social experiments in its wake. How many more need die before we intervene?'\n\nThe nascent worker's movement has intimidated [From.GetAdjective] leaders. While representatives in their opposition have called this a Red Scare aimed at pursuing war with us, the rhetoric of the [From.GetRulingParty] has been highly successful so far." - war_justification.211.a:0 "As long as there is profit to be made, capitalists will manufacture a war." - war_justification.212.t:0 "[From.GetLeader] Confronts [Root.GetAdjective] belligerent" - war_justification.212.d:0 "'In modern history, perhaps even in history as a whole, there has been no worse tyranny than the iron grip in which [Root.GetRulingParty] now holds [Root.GetName]. People may argue that we should not provoke conflict, that we should trust [Root.GetLeader] to honor treaties and promises in the future, but these people fail to see that treaties made under the reign of belligerent are useless. To these dishonorable liars, might makes right, and the paper on which an agreement is written burns just as easily as the books of their detractors.'\n\nJealous of the glorious society we are building and the legacy it is founded upon, the [From.GetAdjective] seem prepared to start a war to destroy it. So much for their pretensions of peace." - war_justification.212.a:0 "Inevitable. Better to have it over with." - war_justification.213.t:0 "[From.GetLeader] Calls for War Against [Root.GetName]" - war_justification.213.d:0 "'Although we may be a peaceful people, our nature alone does not determine the course we must take in history. This is a time of war. For too long, the [Root.GetAdjective] have possessed the means that we need to make it through the trials we may face, and it's apparent that they will not part with them peacefully. Despite our best efforts to build a modern state, some matters can only be settled through the old trials of battle.'\n\nIn a recent speech to the [From.GetAdjective] people the hostile rhetoric towards [Root.GetName] has intensified and [From.GetLeader] has gone to great lengths to justify an invasion. Some portion of the population support this course, but the decision lies in the lands of their leader." - war_justification.213.a:0 "They will regret making us their enemy." - war_justification.214.t:0 "[From.GetLeader] Challenges [Root.GetAdjective] Pretensions" - war_justification.214.d:0 "'[Root.GetName] may think themselves more modern and advanced than us, but the truth is that their nation has not been tested as ours has, nor are they prepared for the threats now plain to see on the horizon. By their disdain towards us, and preventing us to seize that which is rightfully ours, they have made us one of those threats to themselves. Their weak and divided nation will hardly resist our claims.'\n\nThe derisive opinion of [Root.GetName] long held by the [From.GetRulingParty] has developed from criticism to hostility. Although popular opinion is that the [Root.GetAdjective] people want to avoid war, [From.GetLeader] claims that our elected leaders have provoked it through their arrogance." - war_justification.214.a:0 "The voices for peace among the [From.GetAdjective] people are, of course, silenced." - war_justification.215.t:0 "[From.GetLeader] Wants to Restore Order in [Root.GetName]" - war_justification.215.d:0 "'The [From.GetAdjective] national spirit is strong, but not all nations are so fortunate. [Root.GetName] has had its traditions destroyed and rightful rulers long since murdered and buried, all in the name of the idea of the great Marxist revolution. It is our duty to restore order to this world led astray by bloodthirsty usurpers and to assert the strength of [From.GetName] against this threat.'\n\nWhile the [From.GetRulingParty] has always opposed revolutionary, [Root.GetName] has been a target of particular attacks in recent speeches. Fearing their nation's inevitable progress to the next stage of history, a preemptive attack on [Root.GetAdjective] revolutionary is already in the works." - war_justification.215.a:0 "It's too late to reverse the progress we've made." - war_justification.216.t:0 "[From.GetLeader] Calls Out [Root.GetAdjective] Oppressors" - war_justification.216.d:0 "'My opponents would have you believe that my rule is like that of the [Root.GetRulingParty] in [Root.GetName]. They could not be more wrong. While [Root.GetLeader]'s successes are the result of a recent fad, a destructive mass movement bent on bullying other nations into submission, the [From.GetRulingParty] stands in opposition to that movement as the ones who will not submit. I am prepared to do whatever is necessary to eliminate this threat, even if it means war.'\n\nThe [From.GetLeader] regime has adopted a hostile policy towards the [Root.GetAdjective] nation. Our visionary plans for future greatness have put their nation to shame, and unsurprisingly, they feel threatened." - war_justification.216.a:0 "If they want to test our might, they will regret it." - war_justification.217.t:0 "[From.GetLeader] Questions [Root.GetAdjective] Sovereignty" - war_justification.217.d:0 "'Who determines the borders of a nation and how are they determined? Whatever way people may have found in the past to justify where [From.GetName] ends and [Root.GetName] begins, we live in a new era. The strategic importance of this border cannot be overstated, and we are well within our rights to shift it to ensure the continued security of our people.'\n\nListening to [From.GetLeader]'s recent speeches, an invasion of [Root.GetName] appears imminent. Dissenting voices have objected, but public support for war is on the rise." - war_justification.217.a:0 "Has the world learned nothing from the Great War?" - war_justification.218.t:0 "[From.GetLeader] Questions the Motives of [Root.GetName]" - war_justification.218.d:0 "'There is no doubt that [Root.GetName] is preparing for war. The changes in economic policy make it plain to see that the [Root.GetAdjective] are not a people of peace, but rather waiting for the right opportunity to strike against us. Will we stand idly by and watch them arm themselves while [From.GetName] is undefended? Or will we disarm this threat before it grows beyond our power?'\n\nThe hawks in the [From.GetRulingParty] have turned their eyes towards [Root.GetName], arguing that attack is the best defense. Their viewpoint is gaining traction and [From.GetName] is preparing for war." - war_justification.218.a:0 "This is exactly why we need to be ready." - war_justification.219.t:0 "[From.GetLeader] Angered by [Root.GetAdjective] Posturing" - war_justification.219.d:0 "'Those naïve citizens of [From.GetName] who imagine the [Root.GetAdjective] as a people of peace are entirely out of touch with reality. Those who live at our border do not have the luxury of such delusions, seeing their troops closing in on us just across it. This is a threat we cannot leave unanswered. With every passing day, [Root.GetName] is preparing for war. It would be madness for us not to do the same.'\n\nOur military presence close to [From.GetAdjective] territory has sparked increased concern, since they interpret our troop movements as proof hostile intent. They hardly seem to have considered that their aggressive rhetoric is the reason for our defensive measures." - war_justification.219.a:0 "We can hardly disarm after these threats." - war_justification.220.t:0 "[From.GetLeader] Advocates Invasion of [Root.GetName]" - war_justification.220.d:0 "'If we want to have the strategic advantage in the foreseeable, not to say inevitable war with [Root.GetName], there is no room to hesitate. This is about safeguarding our children's futures and ensuring that [From.GetName] has a place in the world tomorrow. This is a matter of devotion to our cause and the ideals we take for granted. It's time to act.'\n\nA series of rousing speeches from [From.GetRulingParty] leaders, most prominently [From.GetLeader], has been calling the public to support an invasion of [Root.GetName]. The geopolitical motives behind the invasion are less prominent in the rhetoric to patriotic sentiments, but this campaign appears highly efficient in convincing the public of its necessity." - war_justification.220.a:0 "We better prepare. The war will come." - war_justification.301.t:0 "[Root.GetLeader] Criticized for Weak Foreign Policy" - war_justification.301.d:0 "'We had the chance to strike against our enemies, but the [Root.GetRulingParty] let it pass by. Not only is this yet another damning case in a string of missed opportunities to strengthen [Root.GetName]'s position internationally, it is a sign that their claim to be acting in the interest of the [Root.GetAdjective] people is mostly empty rhetoric. It is time for a change in policy.'\n\nOur failure to pursue the war many had expected has been the target of scathing criticism from our political opponents. Not following through on our military plans will make it more difficult for us to convince the people in which direction we're taking [Root.GetName]." - war_justification.301.a:0 "Don't they want to avoid war?" - war_justification.301.b:0 "There is no room for public disagreement outside of party meetings." - war_justification.301.c:0 "We cannot allow people to accuse [Root.GetLeader] of cowardice!" - nuke_dropped.1.t:0 "Atomic Bombing of [From.From.GetName]" - nuke_dropped.1.d:0 "For the first and hopefully last time in history, a nuclear bomb has been detonated in [From.From.GetName] as part of international warfare. The unprecedented destruction stands as a testament to the devastating power of this new weapon, which is feared not only for what it can do to its targets, but what implications it has for the one who deploys it and for humanity itself.\n\nThe world holds its breath waiting for what will come next. Will this force [From.From.Owner.GetName] to surrender to avoid further terror, or will it only strengthen their resolve to strike back against those who would resort to such measures?" - nuke_dropped.1.a:0 "The Atomic Era has truly begun." - nuke_dropped.1.b:0 "We will do whatever is necessary to protect the [Root.GetAdjective] people." - nuke_dropped.2.t:0 "Atomic Bombing of Hiroshima" - nuke_dropped.2.d:0 ""The streets were like a scene from hell."\n - Kuniyoshi Aikawa\n\nToday, a nuclear bomb was detonated over the city of Hiroshima at an altitude of 580 meters. More than two thirds of the city were instantly destroyed. Despite the city being built to withstand earthquakes, only a few sturdy structures survived the blast.\n\nWhile the power of the atomic bomb has been played up in the public mind, the human cost of the weapon has been played down. Neither side wants to contemplate the horror of the event, but its legacy will be one of lives lost in the blink of an eye and lasting fallout." - nuke_dropped.2.a:0 "How many more will fall before this war ends?" - nuke_dropped.2.b:0 "We must act quickly to aid the victims." - nuke_dropped.3.t:0 "Atomic Bombing of Nagasaki" - nuke_dropped.3.d:0 "A nuclear bomb, originally intended for Kokura, was detonated today over the Nagasaki. Weather conditions forced the planes to divert their mission, a combination of smoke, clouds and technical difficulties being deciding factors in an event that may well change history.\n\nThe effects of the bomb were contained somewhat by the city's location in a valley, but the damage is still severe. Some military installations were struck, but the catastrophic civilian losses overshadow them by far. It may take decades before we know the long-term effects of this weapon with certainty." - nuke_dropped.3.a:0 "Will this lead to [From.Owner.GetAdjective] surrender?" - nuke_dropped.3.b:0 "We had hoped Nagasaki would be spared." - nuke_dropped.4.t:0 "Atomic Bombing of Berlin" - nuke_dropped.4.d:0 "Today, at [GetDateText], the German capital of Berlin was struck by a nuclear explosion. The city has suffered several attacks, in this war and the last, but all else pale in comparison to this. Not since the Thirty Years' War has Berlin seen comparable devastation - considering its growth, this was seen as an impossibility.\n\nThe Führerbunker appears to have survived the blast at least partially due to the bomb detonating away from its planned epicenter, and [From.Owner.GetLeader] is rumored to still be alive, if outraged. How [From.Owner.GetAdjective] leaders should be evacuated and if they can be protected from the fallout is another matter, however." - nuke_dropped.4.a:0 "Today, I am relieved not to be a Berliner." - nuke_dropped.4.b:0 "Our enemies have struck at the heart of the nation!" - nuke_dropped.5.t:0 "Atomic Bombing of London" - nuke_dropped.5.d:0 "A nuclear explosion has devastated the city of London today. Despite the city's anti-air defenses, [From.Owner.GetName] was not prepared for this attack. At [GetDateText], Big Ben chimed for the last time, having been melted by the blast. Early reports suggest Buckingham Palace has been completely leveled and the whereabouts of the royal family are currently unknown.\n\n[From.Owner.GetLeader] has nevertheless been confirmed to have survived and is preparing a rousing speech for the radio later today. With morale at an all-time low, the British people is in dire need of this - or a very eloquent surrender." - nuke_dropped.5.a:0 "It's difficult to maintain a stiff upper lip in the face of a nuclear blast wave." - nuke_dropped.5.b:0 "God save the King!" - nuke_dropped.6.t:0 "Atomic Bombing of Kyoto" - nuke_dropped.6.d:0 "The city of Kyoto, a prominent [From.Owner.GetAdjective] industrial center, was struck today by a nuclear bomb. It is speculated that the city was chosen as a target because it has been regarded as an intellectual center.\n\nThe beauty and historical significance of the Kyoto led many to assume it would be spared from the bomb, but it appears the terror of raining destruction on such a place has rather been seen as a benefit, increasing the psychological impact of the attack. The city's location in the valley somewhat limited the blast, but the old Imperial Palace and many industrial buildings have been completely destroyed." - nuke_dropped.6.a:0 "Legacy and beauty mean nothing in a war like this." - nuke_dropped.6.b:0 "If they destroy the old, we will build the new." - nuke_dropped.7.t:0 "Atomic Bombing of Tokyo" - nuke_dropped.7.d:0 "Today, a nuclear strike was directed at the heart of the Japanese Empire. The capital of Tokyo, although expected to be the target of firebombing, was never assumed to be a prioritized target of this new weapon. Yet ultimately, perhaps due to the significance of the new capital and Imperial Palace which has now been destroyed, an even more all-consuming fire has fallen on the city.\n\nAlthough [From.Owner.GetLeader] is reported to have survived, the event has raised questions about how far Japan's enemies are willing to go. If the war does not end with this, what targets remain? What is left to threaten with?" - nuke_dropped.7.a:0 "Does this mean the end of the Japanese Empire?" - nuke_dropped.7.b:0 "As long as [From.Owner.GetLeader] lives, so does the Empire." - nuke_dropped.8.t:0 "Atomic Bombing of Washington D.C." - nuke_dropped.8.d:0 "A nuclear bomb was detonated today over the capital of the United States. In an attack clearly directed at the political center and historical legacy of the US, the White House, the Capitol and a number of monuments and memorials were wiped off the face of the Earth. Even the Burning of Washington over a century ago pales in comparison to the destruction visited upon the city by this devastating weapon.\n\nAlthough President [From.Owner.GetLeader] has been brought to safety, the nation has been shaken to its core. No doubt, the US hoped to be the first and only country to wield such a weapon. Those hopes have now been shattered in the worst possible way." - nuke_dropped.8.a:0 "One nation, indivisible, versus one atom, divisible." - nuke_dropped.8.b:0 "The eagle will rise from the ashes like a phoenix." - nuke_dropped.9.t:0 "Atomic Bombing of Rome" - nuke_dropped.9.d:0 "A nuclear explosion struck the city of Rome today, shocking people around the world. Due to its historical and artistic treasures, many had never thought the ancient city would be the target of such indiscriminate destruction. With the Vatican City also partially destroyed and the whereabouts of the Pope unknown, the event has horrified not only Italians, but Catholics around the world.\n\nRome's rapid growth in the past decade has been nearly completely undone by the attack. For a while, it looked like the city could aid the nation's recovery after the war was over. Those hopes have now been turned to dust, along with many people." - nuke_dropped.9.a:0 "Bomba Iacta Est!" - nuke_dropped.9.b:0 "Rome won't be rebuilt in one day..." - nuke_dropped.10.t:0 "Atomic Bombing of Paris" - nuke_dropped.10.d:0 "Today, a nuclear device was detonated over the city of Paris, causing widespread destruction and countless casualties. France was in shock as its capital suffered what may be the most devastating attack it ever experienced, despite centuries of wars and revolutions. The Parisians had perhaps expected conquest, but not utter, brutal desolation.\n\nAny victory parades at Champs-Élysées past the remains of the Arc de Triomphe seem unlikely in the city's current state. Perhaps the coming decades will see the birth of a new Paris, but Paris in the public mind, the city built in the Belle Époque, is gone forever." - nuke_dropped.10.a:0 "The city of light has burned out." - nuke_dropped.10.b:0 "Only yesterday, it seemed like we'd always have Paris." - nuke_dropped.11.t:0 "Atomic Bombing of Moscow" - nuke_dropped.11.d:0 "A city many have tried and failed to conquer, Moscow was the target of a nuclear attack today. The explosion was directed at the heart of [From.Owner.GetAdjective] leadership, the Kremlin having been nearly completely destroyed by the blast.\n\n[From.Owner.GetLeader], having grown more aware and fearful of all possible and impossible threats recently, evacuated in time and survived. However, even the vastness of [From.Owner.GetName] may not be enough to escape such a ruthless enemy. Indeed, if this continues, the nation will soon consist only of two kinds of wastelands: Those which were there in the first place, and those created by its enemies." - nuke_dropped.11.a:0 "Won't a nuclear winter only make Moscow a more difficult target?" - nuke_dropped.11.b:0 "They may burn every city we have, but they will never take them." - nuke_dropped.12.t:0 "Atomic Bombing of Copenhagen" - nuke_dropped.12.d:0 "Today, the city of Copenhagen was struck by a nuclear explosion. Having grown after escaping destruction in the Great War thanks to Denmark's unaligned, the capital has never experienced an attack close to this devastating since the Napoleonic Wars. The surrounding area of Öresund has also seen significant fallout and survivors have begun escaping to Fyn and the mainland in fear of further attacks.\n\nKing Christian X's whereabouts are currently unknown, and the nation's morale has been severely damaged by the attack. It remains to be seen if this is the beginning of the end for one of Europe's oldest nations." - nuke_dropped.12.a:0 "Something is irradiated in the state of Denmark." - nuke_dropped.12.b:0 "The city has burned before, but not perished." - nuke_dropped.12.c:0 "With plutonium we bring the Danes to their knees!" - nuke_dropped.13.t:0 "Atomic Bombing of Stockholm" - nuke_dropped.13.d:0 "The beautiful city of Stockholm, proud Venice of the North, was struck by a nuclear bomb today. Despite their best efforts to stay neutral in the past, the Swedes have now paid the ultimate price for international conflict. The epicenter of the blast was in the middle of south central Stockholm, an area intended for future development and grand construction projects, now irreversibly destroyed.\n\nMuch of the city is beyond recognition, but the old structures at Slussen seem to have survived the blast better than expected. It has been decided that it should stand untouched forever as a monument to the city's resilience." - nuke_dropped.13.a:0 "With this, Swedish unaligned will be but a memory." - nuke_dropped.13.b:0 "The Swedish tiger will not lose its stripes!" - generic.1.t:0 "[From.GetName] Is Influencing Our Politics" - generic.1.d_neutral_good:0 "For a long time the [From.GetAdjective] government has sought to align the path of our countries, and has expressed a great interest in [Root.GetAdjective] politics. Recently this intensified when [From.GetRulingParty] started pushing their [From.GetRulingIdeology] propaganda with a number of speeches and reading material distributed to the [Root.GetAdjective] people. \n\nNow even a number of politicians and other officials are being swayed by the [From.GetAdjective] propaganda, and have started advocating for [From.GetRulingIdeologyNoun] in [Root.GetName]." - generic.1.d_bad:0 "For a long time the [From.GetAdjective] government has sought to align the path of our countries, and has often tried to meddle in [Root.GetName]'s politics. Recently this has intensified, as [From.GetRulingParty] started pushing their [From.GetRulingIdeology] propaganda with no respect for [Root.GetAdjective] political traditions. A number of speeches and other [From.GetRulingIdeology] material is already being distributed to the [Root.GetAdjective] people. It seems that even a number of politicians and other officials are being swayed by the [From.GetAdjective] propaganda and have begun advocating for [From.GetRulingIdeologyNoun] in [Root.GetName]." - generic.1.a:0 "Interesting" - generic.1.b:0 "How dare they!" - country_capitulated.0.t:0 "[Root.GetName] has capitulated" - country_capitulated.0.d_positive_both_no_faction:1 "\n[From.From.GetLeader] has announced that the cowardly [Root.GetAdjective] nation could no longer withstand the pressure from the overwhelming presence of [From.From.GetAdjective] forces throughout the country. The [Root.GetAdjective] government chose to flee the country and has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nThough the war continues elsewhere, this is a great victory for [From.From.GetNameDef]." - country_capitulated.0.d_positive_prev_no_faction:1 "\n[From.From.GetLeader] has announced that the cowardly [Root.GetAdjective] nation could no longer withstand the pressure from the overwhelming presence of [From.From.GetAdjective] forces throughout the country. The [Root.GetAdjective] government chose to flee the country and has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nThough the war against what remains of the [Root.GetFactionName] continues elsewhere this is a great victory for [From.From.GetNameDef]." - country_capitulated.0.d_positive_prev_faction:1 "\n[From.From.GetLeader] has announced that the cowardly [Root.GetAdjective] nation could no longer withstand the pressure from the overwhelming presence of [From.From.GetAdjective] forces throughout the country. The [Root.GetAdjective] government chose to flee the country and has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nThough the war against what remains of the [Root.GetFactionName] continues elsewhere this is a great victory for all of the [From.From.GetFactionName]." - country_capitulated.0.d_negative_both_no_faction:1 "\n[Root.GetLeader] has announced that the [Root.GetAdjective] nation can no longer withstand the pressure from the occupying [From.From.GetAdjective] forces, committing travesties throughout the country. The [Root.GetAdjective] government has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nDespite this devastating loss the war against [From.From.GetNameDef] is far from over." - country_capitulated.0.d_negative_prev_no_faction:1 "\n[Root.GetLeader] has announced that the [Root.GetAdjective] nation can no longer withstand the pressure from the occupying [From.From.GetAdjective] forces, committing travesties throughout the country. The [Root.GetAdjective] government has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nThough the war against [From.From.GetNameDef] continues, this is an unfortunate setback for all of the [Root.GetFactionName]." - country_capitulated.0.d_negative_prev_faction:1 "\n[Root.GetLeader] has announced that the [Root.GetAdjective] nation can no longer withstand the pressure from the occupying [From.From.GetAdjective] forces, committing travesties throughout the country. The [Root.GetAdjective] government has gone into exile. Their main forces have capitulated, and [From.From.GetNameDef] is now in control of their home area.\nThough the war against [From.From.GetNameDef] and the rest of the [From.From.GetFactionName] continues, this is an unfortunate setback for all of the [Root.GetFactionName]." - country_capitulated.0.d_neutral_both_no_faction:1 "\nThe [Root.GetAdjective] government has gone into exile and their main forces have capitulated to [From.From.GetNameDef], who is now in control of their home area.\n\nAlthough the struggles between [From.From.GetName] and [Root.GetName] are over, [From.From.GetNameDef] is still at all-out war, and the fighting continues elsewhere." - country_capitulated.0.d_neutral_prev_no_faction:1 "\nThe [Root.GetAdjective] government has gone into exile and their main forces have capitulated to [From.From.GetNameDef], who is now in control of their home area.\n\nThe struggles in [Root.GetName] was only a small part of the conflict. The war between [From.From.GetNameDef] and what remains of [Root.GetFactionName] continues elsewhere." - country_capitulated.0.d_neutral_prev_faction:1 "\nThe [Root.GetAdjective] government has gone into exile and their main forces have capitulated to [From.From.GetNameDef], who is now in control of their home area.\n\nThe struggles between [From.From.GetNameDef] and [Root.GetNameDef] was only a small part of the conflict. The war between [From.From.GetFactionName] and what remains of [Root.GetFactionName] continues elsewhere." - country_capitulated.0.a:0 "Great news!" - country_capitulated.0.b:0 "These are dark times" - country_capitulated.0.c:0 "Uncertain times" - GAME_OVER_TT:0 "§RThe game will end for you.§!" - CAN_ANGERED_WORKERS:0 "This will upset the population" - generic.2.t:0 "[From.GetName] seeks to join the [Root.GetFactionName]" - generic.2.d.a:0 "In the face of increasing threats to liberty and cooperative values, the [alliance_applicant.GetAdjective] look to us as the defenders of freedom. They now wish to be admitted into our alliance, both to enjoy our protection and to stand with us against the forces that would threaten freedom." - generic.2.d.b:0 "Our plight to overturn the current world order has not escaped the notice of like-minded nations. The [alliance_applicant.GetAdjective] recognize that their best chance to carve out a prosperous future for themselves is to align with us in the coming conflict, and they have therefore offered to formally join us against our enemies." - generic.2.d.c:0 "[alliance_applicant.GetName] has recognized that she must band together with fellow-minded people to strengthen the place of the common people in the world. Accepting our leading role in the international plight of the worker, the [alliance_applicant.GetAdjective] now request to formally enter into an alliance with us." - generic.2.d.e:0 "As the current upheavals in international politics continue to reverberate through the world, the [alliance_applicant.GetAdjective] have deemed us to be their greatest chance of surviving these tumultuous times. They therefore request to be admitted into our alliance, so that we may weather the coming storm together." - generic.2.a:0 "All who stand for liberty may stand with us." - generic.2.b:0 "The world belongs to all who are strong!" - generic.2.c:0 "We stand together." - generic.2.e:0 "And weather it, we shall!" - generic.2.f:0 "We are better off without them." - generic.2.g:0 "We already have the allies we need." - generic.3.t:0 "[alliance_inviter.GetName] welcomes us to the [alliance_inviter.GetFactionName]" - generic.3.d:0 "[alliance_inviter.GetName] has decided to accept our request to join the [alliance_inviter.GetFactionName]. Henceforth we shall stand or fall together." - generic.3.a:0 "Together we shall defend liberty." - generic.3.b:0 "None can stand against us!" - generic.3.c:0 "The workers' plight could not ask for finer champions!" - generic.3.e:0 "We shall set our differences aside, for now." - generic.4.t:0 "[alliance_inviter.GetName] denies request to join the [alliance_inviter.GetFactionName]" - generic.4.d:0 "[alliance_inviter.GetName] has decided to reject our request to join the [alliance_inviter.GetFactionName]. We will have to make do without their help." - generic.4.a:0 "They call themselves defenders of liberty?" - generic.4.b:0 "Then we will crush them, too!" - generic.4.c:0 "Unfortunate!" - generic.4.e:0 "Our differences were too great." - news.289.t:0 "[alliance_applicant.GetName] joins the [alliance_inviter.GetFactionName]" - news.289.d:0 "\nEarlier today, [alliance_inviter.GetName] and [alliance_applicant.GetName] issued a joint statement that the latter has now been formally granted member status of the [alliance_inviter.GetFactionName]. Whether this partnership will be used for offensive or defensive purposes remains to be seen, but undoubtedly extensive joint military planning is already under way." - news.289.a:0 "We are stronger together." - news.289.b:0 "They seek strength in numbers." - news.289.c:0 "It will not avail them!" - news.289.e:0 "The war escalates..." - news.289.f:0 "Our alliance grows stronger." - generic.5.t:0 "[From.GetName] invites [Root.GetName] to the [From.GetFactionName]" - generic.5.d.a:0 "With a suspicious eye on recent developments in world politics, [alliance_inviter.GetName] extends us their hand of friendship, offering us their protection and urging us to stand with them in defence of the principles of liberty and democracy. As a member of the [alliance_inviter.GetFactionName], our people's freedom may well be safeguarded." - generic.5.d.b:0 "Recognizing that sometimes even the strong need allies, the [alliance_inviter.GetAdjective] have invited us to join the [alliance_inviter.GetFactionName]. If we choose to accept, this may well provide ample opportunity for us to find our place in the sun." - generic.5.d.c:0 "Our ideological allies in [alliance_inviter.GetName] have made note of our valuable contributions to the workers' cause, and this morning we received an invitation us to join the [alliance_inviter.GetFactionName]. Standing together with other socialist republics, we could spread the revolution with renewed strength." - generic.5.d.e:0 "It appears the [alliance_inviter.GetAdjective] consider us to be of strategic interest to them, and that they deem it more profitable that we work together than that we should let ourselves be divided by our ideological differences. This morning, the [alliance_inviter.GetAdjective] Ambassador delivered an invitation for us to become a member state of the [alliance_inviter.GetFactionName]." - generic.5.a:0 "We will make our stand with them." - generic.5.b:0 "We only need a few thousand dead..." - generic.5.c:0 "We will fight alongside our comrades!" - generic.5.e:0 "It is the profitable choice." - generic.6.t:0 "[alliance_applicant.GetName] accepts invitation to the [alliance_inviter.GetFactionName]" - generic.6.d:0 "[alliance_applicant.GetName] has decided to accept our offer to join the [alliance_inviter.GetFactionName]. Henceforth we shall stand or fall together." - generic.7.t:0 "[alliance_applicant.GetName] rejects offer to join the [alliance_inviter.GetFactionName]" - generic.7.d:0 "[alliance_applicant.GetName] has decided to reject our offer to join the [alliance_inviter.GetFactionName]. We will have to make do without their help." - generic.7.a:0 "Our help is not wanted." - excellent:0 "Excellent." - unfortunate:0 "Unfortunate." - stability.21.t:0 "Draft Dodging" - stability.21.desc.a:0 "A new report by the War Office shows a marked reduction in available manpower. It appears that the latest batch of recruits is much smaller than initially expected. The discrepacy is currently under investigation, but first leads point towards a large number of people who are technically fit for service managing to avoid the draft through various means. 18 year old students are suddenly skilled workers employed in critical war industry, former athletes fail their fitness tests and in some cases, recruits have simply vanished without a trace.\n\nWhen people are caught and interrogated, they point towards the poor conditions in the army, the indifferent officers and not wanting to die for a lost cause. Military leaders demand a harsh crackdown on people avoiding the draft, but many in the government believe that improving the living conditions of enlisted soldiers might be the better approach." - stability.21.desc.b:0 "The ineffective official response to the widespread avoidance of the draft has only made the problem worse. More and more recruits never show up after receiving their drafting letter. Counter-Intelligence has intercepted a professionally made pamphlet advising people on how to avoid the draft, suggesting things like bribing doctors to certify the recruit to be medically unfit. Exceptions for family fathers have led to war widows with children finding themselves mobbed with marriage proposals while the number of people applying for exceptions for ethical reasons have hit record numbers.\n\nMilitary leaders have suggested eliminating the last few exceptions and make examples out of a few shirkers that have been caught. Others in the government have suggested that we should appeal to the sense of civic duty in our citizens and point out the consequences of a defeat in this war." - stability.21.desc.c:0 "With government responses to draft dodging having no positive effects whatsoever, more and more people have started to wonder why they should put themselves at risk while others stay in safety. Recruits that do turn up often report being harrassed or ridiculed in the streets as fools fighting for a doomed cause. Reports of mothers forbidding their children from answering the draft order are everywhere, and the War Office has submitted a report claiming that they are no longer sure how many people they are supposed to draft, as their bureaucracy has started to break down under the strain of processing all those missing soldiers." - stability.21.a:0 "Nothing can be done about it." - stability.21.d:0 "We should arrest anyone found evading the draft!" - stability.21.e:0 "A pay rise for the enlisted soldiers is perhaps in order." - stability.21.f:0 "It is time for harsher measures." - stability.21.g:0 "Appeal to the people's sense of civic duty." - stability.21.h:0 "We must make an example." - stability.21.i:0 "We must give the people something to fight for." - stability.22.t:0 "Strikes!" - stability.22.desc.a:0 "Production in several factories has slowed down dramatically over the last few days as the workers have declared a strike on all war production. Demanding "Peace and Bread!", they have so far refused all attempts to negotiate a settlement. Some in the government have advocated a sharp military response, followed by a swift execution of the ringleaders as enemy agents and traitors. However, others in the civil service have recommended a more measured approach, pointing out that a heavy-handed response may well backfire if the soldiers involved are not as loyal as we thought they were." - stability.22.desc.b:0 "Government efforts to convince the strikers to return to work seem to have had no effect whatsoever. On the contrary, strikes have been reported in further factories, and the last few hold outs in the originally affected work sites have also put down their tools after facing the anger of their colleagues. While stockpiles have so far been able to cushion the blow to front line supplies somewhat, it is only a question of time before the production outages start to affect our ability to prosecute the war.\n\nThe War Office has again urged the government to take an unyielding line with the strikers, but other factions inside the administration have suggested that offering to meet the workers half-way may be enough to convince them to return to work." - stability.22.desc.c:0 "What started as industrial action in a few isolated places has now spread across the entire country, affecting even industries that are only connected to the war effort in tertiary ways. Even the workings of the government itself have become affected, as many low level clerks, messengers, and drivers have refused to show up to work in increasing numbers. \n\nIn many places, worker councils have taken over the factory buildings. Reports from the secret police indicate that some places seem to have started production of weapons again - for a major uprising against what is being called "The War Regime".\n\nMilitary High Command believes that decisive action by loyal troops could still win the day, while the civilian side of the government argues that this risks a civil war and certain defeat." - stability.22.a:0 "This will blow over." - stability.22.b:0 "Make a demonstration of military force in the towns." - stability.22.c:0 "Make propaganda heroes out of the people still willing to work." - stability.22.d:0 "Draft the workers into military service and put the factories under military control." - stability.22.e:0 "Offer to increase the food rations of workers." - stability.22.f:0 "Send in the troops, arrest the strikers, execute the ringleaders." - stability.22.g:0 "Propose new welfare legislation." - stability.23.t:0 "Mutinies in the Army" - stability.23.desc.a:0 "Alarming news have reach Military High Command about a number of units in our Army refusing orders from superior officers. While none of the units have left their position in the line, representatives of the soldiers have made it quite clear that they will not obey any orders to attack the enemy.\n\nThe rebellion has so far been contained to a small number of battalions and a handful of training and support units, but many in the War Office fear that this uprising will soon spread to other units and may eventually render us unable to continue the war. Decisive action is needed." - stability.23.desc.b:0 "Efforts to address the mutinies in the army have shown no effect. Emboldened by the lack of effective government response, the muntineers have expanded their list of demands to include an immediate cease-fire followed by a comprehensive peace treaty and demobilization.\n\nThe War Office strongly recommends that we send a strong signal to the mutineers to deter any further action on their part." - stability.23.desc.c:0 "With the government evidently unwilling or unable to address their issues, the mutineers have decided to take measures into their own hands. Elections for "Worker and Soldier Councils" have been announced, with the express goal of taking over the country and making peace with the enemy.\n\nUnless action is taken swiftly, these councils may very well end up replacing our government in some areas of the country and render us unable to continue the war." - stability.23.a:0 "We can't do anything about that now." - stability.23.b:0 "Surround the mutinious units with loyalists and order them to stand down." - stability.23.c:0 "Hold a patriotic speech before the mutineers." - stability.23.d:0 "Publically announce that anyone found supporting the mutineers will be charged with treason." - stability.23.e:0 "Announce a peace initiative. Make sure it is unacceptable to the enemy." - stability.23.f:0 "Mobilize loyalist militias and arrest all soldiers not at their duty stations." - stability.23.g:0 "Offer the soldiers to permit them to elect their own officers." - 15_days_tt:0 "This will take about §Y15 days§! to implement.\n" - 30_days_tt:0 "This will take about §Y30 days§! to implement.\n" - 45_days_tt:0 "This will take about §Y45 days§! to implement.\n" - stability.31.t:0 "Military Crackdown succeeds" - stability.31.desc:0 "Our swift response has proven very effective. Military police units, supported by local law enforcement and patriotic volunteers, swarmed out in a well-coordinated operation to visit every missing draftee. Most were willing to answer the call when they were informed of the consequences of failing to report for duty. Military High Command has publically declared that anyone who showed up at their duty station will not be charged with any crime or punished for failing to do so in the past. Still, a number of people have categorically refused to take up arms for their country and have been arrested." - stability.31.a:0 "Decisive action prevented worse." - stability.32.t:0 "Draft Riots" - stability.32.desc:0 "Our attempts at resolving the situation through military force have not been met with success. It appears that someone in our administration has leaked our planned operation to the public, which responded quickly. When military police and other law enforcement agencies tried to apprehend known draft dodgers, they found their way blocked by angry mobs, demanding an end to the war and to forced conscription. In several cases, street battles erupted between the police and the protesters, leading to a number of fatalities when the soldiers were forced to use their weapons to defend themselves. It took several hours until the police gained full control over the situation.\n\nAn ugly mood has settled over the capital as the barricades are cleared away and the dead are buried. Reports from the War Office show no change in the number of recruits reporting for duty. Many in the government wonder how much longer we can continue fighting under these circumstances." - stability.32.a:0 "The situation has not necessarily developed to our advantage." - stability.33.t:0 "The Conscription Rebellion" - stability.33.desc:0 "Our attempts at resolving the situation through military force have not been met with success. It appears that someone in our administration has leaked our planned operation to the public, which responded quickly. When military police and other law enforcement agencies tried to apprehend known draft dodgers, they found their way blocked by angry mobs, demanding an end to the war and to forced conscription. In several cases, street battles erupted between the police and the protesters, leading to a number of fatalities when the soldiers were forced to use their weapons to defend themselves. \n\nThe situation quickly spiralled out of control after that, as citizens rushed the soldiers and stormed police stations to arm themselves. Several cities in the country are now in a state of armed insurrection against the government. Ironically, the rebels seem to have no issues finding soldiers willing to take up arms." - stability.33.a:0 "Oh, so NOW they want to fight!?" - stability.34.t:0 "Draft Reform proves effective" - stability.34.desc:0 "The social measures passed by the government as part of a larger process of reforming the military recruitment policy have proven surprisingly popular. Higher pay and more frequent leave are often cited as the biggest new benefits, but many also point to the new government programs to support war widows and orphans. Fewer and fewer men can justify refusing their country's call to the colors, and public support for draft-dodgers has all but disappeared.\n\nIndeed, there has been a recent upswing in public support for the government as more and more people realize that the [ROOT.GetAdjective] way of life is under attack." - stability.34.a:0 "A wise decision." - stability.35.t:0 "The 591. Penal Battalion" - stability.35.desc:0 "Seeing the severity of the situation, the Military High Command has decided that more drastic measures are required to show that evading one's civic duty to defend their country will not be tolerated. At dawn, military police raided the homes of a number of carefully selected, well known and connected people who have used their influence to allow others to avoid the draft. Still in their nightgowns, they have found themselves conscripted into the military and escorted to the barracks under armed guard, where they will be formed up into a separate unit, to avoid their subversive influence from spreading to other units. \n\nThe news of this has spread quickly, and it appears that most people who until now believed that they could get away with ignoring their draft notice have changed their mind. Recruitment stations across the country report that a growing number of people have come by to ask what exactly the consequences would be if a "friend" of theirs who had attempted to avoid the draft would turn themselves in." - stability.35.a:0 "They may yet redeem themselves." - stability.36.t:0 "Local Elites Voice Their Protest" - stability.36.desc:0 "Seeing the severity of the situation, the Military High Command has decided that more drastic measures are required to show that evading one's civic duty to defend their country will not be tolerated. At dawn, military police raided the homes of a number of carefully selected, well known and connected people who have used their influence to allow others to avoid the draft. Still in their nightgowns, they have found themselves conscripted into the military. Their families have mobilized their extensive support networks to protest this descision. The War Office has been flooded with calls and letters from simple workers who want their factory manager back to undersecretaries in various other ministeries, demanding to know why people working in fields critical to the war effort have been removed from their work. It appears that even some cabinet members have second thoughts about the war - perhaps fearing for the safety of their own sons." - stability.36.a:0 "Have they no sense of duty?" - stability.37.t:0 ""A Somber and Sacred Duty"" - stability.37.desc:0 ""Of course I want to live. I want to go and finish school, I want to meet girls, I want to start a family - but if we lose this war, I won't be able to do these things, either. So I fight."\n\nThe letter, sent anonymously to every major newspaper in the country, has made huge waves. Claiming to be from a soldier who at first tried to avoid the draft, but then realized that he must fight to save his country, it has apparently struck a nerve with many others who felt similarly. Draft boards across the country report that the number of people who still refuse to answer their summons has been more than made up for by new volunteers who will no longer wait until they are called, while others go and fight to save their country and their way of life." - stability.37.a:0 "We will not let their lives be spent in vain." - stability.38.t:0 "The end of a coward" - stability.38.desc:0 ""They led him to the wall at the break of dawn. He refused a last cigarette, but accepted the blindfold. His last words were an apology to his mother for causing her so much pain. The firing squad aimed well. A few minutes later, the doctor present declared him dead."\n\nWhile unable to catch all people who have been evading the draft, authorities have been able to make a number of arrests. Given the grave situation we are in, the War Office has decided that these men be tried under military law for failing to report to duty. The first series of death sentences has been handed down and the condemned have been excuted by firing squad. These measures have evidently had the desired effect. It appears that most people decided to choose the possibility of death on the battlefield over the certainty of dishonorable death as a coward." - stability.38.a:0 "A shame that it had to come to this." - stability.39.t:0 "A martyr for peace" - stability.39.desc:0 ""They led him to the wall at the break of dawn. He refused a last cigarette, but accepted the blindfold. His last words were an apology to his mother for causing her so much pain. The firing squad aimed well. A few minutes later, the doctor present declared him dead."\n\nThe published report of the execution of a man sentenced to death for failing to report for duty seems to have had the opposite effect. Rather than bringing people back to the colors out of fear of the consequences, it has made those executed into instant martyrs for the peace movement. Their names and life stories have been published and very clearly edited to make them appear in the best possible light. Mass peace demonstrations have started in several major cities, demanding an end to the war. The War Office reports that they have received a number of letters of draftees stating openly that they will not appear for duty - saying that they would not, under any circumstances, be party to another execution except as the person to be executed." - stability.39.a:0 "Things have not necessarily improved." - stability.40.t:0 "A New Deal for [Root.GetNameDef]" - stability.40.desc:0 "In a radio transmitted speech today, [Root.GetLeader] announced what he called a "Social Revolution". Over the next hour, he laid out a system of reforms that touch every part of social life, promising every returning soldier an education, a well-paying job and a generous pension. He also announced a major building programm for affordable housing for young families, to begin the day an armistice is signed. This appears to have had a significant effect on general morale. Recruitment offices across the country report conscripts appearing and asking about options to extend their service beyond the current conflict, with others all but demanding a posting to frontline units to ensure extra benefits." - stability.40.a:0 "And we pay for all this how...?" - strikes_event.1.t:0 "Order Restored" - strikes_event.1.desc:0 "Moving quickly, Military High command mobilized a number of training units for service and formed ad-hoc groups of soldiers on leave. Marching these formations past the gates of the factories had the desired effect, as most strikers did not want to force a confrontation with potentially deadly consequences. The few that did try to persuade the soldiers to make common cause found their words having little effect as soldiers asked why the workers in the cozy rear should be allowed to let down the fighting men on the front." - strikes_event.1.a:0 "Why indeed." - strikes_event.2.t:0 "Bloody Monday" - strikes_event.2.desc:0 "Moving quickly, Military High command mobilized a number of training units for service and formed ad-hoc groups of soldiers on leave. Moving these formations to the affected cities proved a lot more difficult than expected, however, as the strikers blocked railway lines and forced the troops to march in on foot, giving them ample time to prepare. When our troops reached the barricaded factories, they found the strikers ready for them. Attempts to clear roads were met with furious attacks by the workers throwing stones and bottles at the soldiers. \n\nIn several instances, the troops opened fire to defend themselves, killing a number of strikers and wounding scores more. this only enraged the mob even further, with screams of "Murderers!" filling the air from bystanders. The mood in the capital turned dramatically in favor of the strikers. At nightfall, the soldiers retreated, leaving the barricades intact.\n\nThere have been no further attempts to force the situation. The strikers remain in control of the factories, and no work is being done." - strikes_event.2.a:0 "Not as planned." - strikes_event.3.t:0 "Heroes on the Production Front" - strikes_event.3.desc:0 ""Industrial war is more than just divisions marching and planes bombing. It is more than just the duty of a soldier to fight and die for their country. An industrial war is won, first and foremost, in the factories and foundries. To abandon the battle on the assembly line is no better than abandoning it on the front line. And the victories of the assembly line should be celebrated just as much as the ones won by the front line."\n\nAll available propaganda resources have been rerouted to show the work of the armaments workers in the best possible light. [Root.GetLeader] has personally approved a new award to be given out for workers who have exceeded their quota by more than 100%, and the first recipients have been sent on tours around the country to instruct other workers in their methods.\n\nIt appears that this has made a lot of the strikers reconsider their stance. Work has ressumed in all previously affected factories." - strikes_event.3.a:0 "Heroes one and all." - strikes_event.4.t:0 "The War Production Department" - strikes_event.4.desc:0 "[Root.GetLeader] today announced some small changes to the draft. While skilled workers were previously exempted from the military draft, this exception has now been removed and all exempt men drafted immediately. At the same time, the War Office has been authorized to take direct control of any factory that produces goods relevant to the war effort if the leadership of those factories has shown a lack of ability.\n\nThe announcement was met with silent resignation in the affected cities, especially once it was announced that anyone resisting would be treated the same as a soldier who refused to follow orders. While morale amongst the workers in the factories is at rock-bottom, production has restarted." - strikes_event.4.a:0 "Should have done that from the start." - strikes_event.5.t:0 "A country in defiance" - strikes_event.5.desc:0 "[Root.GetLeader] today announced some small changes to the draft. While skilled workers were previously exempted from the military draft, this exception has now been removed and all exempt men drafted immediately. At the same time, the War Office has been authorized to take direct control of any factory that produces goods relevant to the war effort if the leadership of those factories has shown a lack of ability.\n\nThe announcement was met with great laughter in the affected cities, especially once it was announced that anyone resisting would be treated the same as a soldier who refused to follow orders. Policemen sent to deliver draft notices to workers were told to come back with more than ink on paper." - strikes_event.5.a:0 "Perhaps we should." - strikes_event.6.t:0 "Useful Eaters" - strikes_event.6.desc:0 "Without mentioning the strikes taking place, [Root.GetLeader] announced today that workers in war-relevant industries will get extra rations of sugar, coffee and meat to maintain their strength. Sadly, the rumors that the government was willing to hand out extra chocolate turned out to be false.\n\nWhile the ringleaders of the strike try to keep the workers from returning to work, most seem to have accepted that "Peace and Bread" were never going to happen and are happy with just the bread." - strikes_event.6.a:0 "They better earn their keep." - strikes_event.7.t:0 "Operation Black Oak" - strikes_event.7.desc:0 "The troops assembled outside the towns overnight, maintaining noise and light discipline to keep the element of surprise. As the sun crept over the horizon and the workers manning the barricades at the factories looked forward to relief by the day shift, the assault columns moved in. The tired workers were sluggish to organize the resistance and quickly overcome. Leaving a small detachment to guard the prisoners, the troops sweept the town, arresting everyone on the list of known factory workers. By noon, the military had taken full control of the cities and instituted a curfew. No further resistence is expected. The majority of workers will soon be released on the condition that they return to work, the ring leaders will be held and put on trial. Death sentences are expected to be handed down." - strikes_event.7.a:0 "Order has been restored." - strikes_event.8.t:0 "The Battle of Oak Street" - strikes_event.8.desc:0 "The troops assembled outside the towns overnight, but poor light and noise discipline gave the surprise away. As the troops moved in, they found the workers alert and ready for them. The first assault broke down in hails of thrown stones. A second assault with fixed bayonets was repulsed in brutal hand-to-hand fighting, leaving dozens of dead and dying in the streets.\n\nThe officers in charge have pulled back to consolidate their forces, while the workers are extending their fortifications and arming themselves with the weapons left behind in the retreat. A second day of fighting is expected tommorrow, but Military High Command does no longer believe that victory is likely." - strikes_event.8.a:0 "We are quickly running out of options." - strikes_event.9.t:0 "The Worker's Rights Protection Act" - strikes_event.9.desc:0 "With tensions running high across the capital, [Root.GetLeader] announced a new law to protect the rights of workers even in times of war. The sweeping legislation mandates paid sick leave without limits, mandatory accident insurance for every worker, the right to join any union as well as, for the first time, the right for any employed women to have maternity leave after the birth of a child.\n\nWhile many in the government consider this nothing less than a complete surrender to the strikers, the results are conclusive: work has resumed in all factories." - strikes_event.9.a:0 "Hopefully this will be enough." - mutiny_event.1.t:0 "Mutiny Crushed" - mutiny_event.1.desc:0 "After a few hours of tense negotiations at barracks gates and in front line dugouts, the mutiny in our army is over. Faced with the prospect of a fight they could not win, the mutineers quickly decided to stand down. \n\nThe primary issue then became the fate of those that had refused orders. Military High Command has opted for clemency and assured the mutineers that they would not be punished harshly. A few examples have been made in which some soldiers were demoted to a lower rank and transferred to a different unit." - mutiny_event.1.a:0 "Let's hope that is the last of it." - mutiny_event.2.t:0 "An empty threat" - mutiny_event.2.desc:0 "Attempts to scare the mutineers into submission have backfired spectacularly as the troops showed little fear of the units sent to supress them. Using skills honed on the front lines, they quickly organized a defense of their positions that would make any attempt to defeat them very costly. \n\nThe officers in charge of the loyalist units have pulled back and are awaiting further orders, but this small success has no doubt strengthened the mutineers' resolve." - mutiny_event.2.a:0 "No one could have predicted this." - mutiny_event.3.t:0 ""What ARE we fighting for?"" - mutiny_event.3.desc:0 ""It's not uncommon for a soldier to doubt whether what he is doing is really worth it. Can anything justify the sacrifices we ask of you? Can we really demand you to potentially die in pursuit of a goal that you would never see?\n\nIt is an unfortunate fact that we must live in the times we were born in. Fate has decided that we must be at war, to protect our freedom, our homes, our [Root.GetAdjective] way of life! We did not choose this war, it was forced on us! You know that I would not ask anything of you that I would not be willing to do myself, and I know that you will do whatever is necessary to secure victory."\n\n[Root.GetLeader]'s speech in front of the troops appears to have had the desired effect, as the soldiers broke out in spontaneous cheers and returned to their duties without more than the usual amount of complaining." - mutiny_event.3.a:0 "Good speech." - mutiny_event.4.t:0 "The Treason In War Act" - mutiny_event.4.desc:0 "While the War Office is doing its best to keep the current mutiny in the army from becoming widely known, censoring letters can only go so far. Soldiers on leave quickly spread the word that the army is no longer willing to bleed needlessly in this war.\n\nWithout mentioning the mutiny specifically, [Root.GetLeader] announced today that the government would now consider any act that reflected a lack of commitment to the war to be treason.\n\nThe punishment for treason is well known, and public support for the mutineers has all but evaporated. News of this was, of course, widely spread. Seeing little support from the general population, the soldiers have quietly resumed their duties." - mutiny_event.4.a:0 "We shouldn't have to spell this out." - mutiny_event.5.t:0 "Crackdown Attempt Fizzles" - mutiny_event.5.desc:0 "While the War Office is doing its best to keep the current mutiny in the army from becoming widely known, censoring letters can only go so far. Soldiers on leave quickly spread the word that the army is no longer willing to bleed needlessly in this war.\n\nAttempts by the government to stem the tide have completely failed. Reports from the Secret Police indicate that the mutineers have a strong backing in the general public, making it unlikely that we can isolate and surpress them." - mutiny_event.5.a:0 "This disrespect for laws is deeply worrying." - mutiny_event.6.t:0 "The [Root.GetAdjective] Peace Offer" - mutiny_event.6.desc:0 "[Root.GetLeader] announced to the press today that his latest peace offer has failed. While the causes for this unfortunate turn of events are very complex, the [Root.GetAdjective] demand that the other side pay for all damages caused, disarm completely and publically acknowledge that they started the war may have been the final straw.\n\nOur enemies have responded in kind, calling our reasonable requests a demand for unconditional surrender. They have promised that they will prosecute this war until the bitter end. \n\nWith our enemies evidently unwilling to see reason and promising to fight on, attempts by the mutineers to force a peace settlement have collapsed." - mutiny_event.6.a:0 "Terrible shame." - mutiny_event.7.t:0 "Military Crackdown succeeds." - mutiny_event.7.desc:0 "Despite a few instances in which small groups of mutineers decided to make a fight out of it, our operation to crush the rebellion has been a stunning success. Relying on numbers rather than skill, loyalist militias surrounded the muntineers' strongholds and demanded their surrender. Most soldiers decided not to take up arms against their own countrymen and surrendered peacefully. \n\nThe ringleaders will be tried in secret court martials, but the average soldier will be sent back to the front, albeit in a different unit to prevent mutineers from forming new cells." - mutiny_event.7.a:0 "Well done." - mutiny_event.8.t:0 "Brother against Brother" - mutiny_event.8.desc:0 "Our attempts to prevent the elections for the Worker and Soldier Councils have escalated the situation beyond even the most pessimistic estimation. Rather than surrendering, the mutineers have formed provisional Councils, elected field commanders and set up defenses in the streets. It is clear that they aim to make a fight out of this.\n\nThe rifts in the army now run through every unit and often even between members of the same family. [Root.GetNameDefCap] stands poised at the edge of a civil war." - mutiny_event.8.a:0 "This keeps getting worse." - mutiny_event.9.t:0 "A new breed of officer" - mutiny_event.9.desc:0 "Despite strong objections from the military, every unit in the [Root.GetAdjective] Army carried out elections to select their commander. The results have been very surprising, as most of the elected are accomplished soldiers with plenty of experience in the field. While many professional officers still consider this to be a personal insult, there can be little doubt that most soldiers dramatically prefer this situation." - mutiny_event.9.a:0 "This shouldn't work, should it?" - if_they_accept:0 "If they accept:\n" - canada_vanilla.1.title:0 "Ronnie, the Bren Gun Girl" - canada_vanilla.1.desc:0 "Around a million Canadian women entered the workforce during the Second World War. They were represented in the national media by a symbol of resilience and patriotism: Veronica Foster, popularly known as Ronnie, the Bren Gun Girl. She worked for John Inglis and Company at a Toronto gun factory while her three brothers fought overseas. The posters and short movies featuring her, and women like her, participating in the war effort likely inspired the better-known media campaign around 'Rosie the Riveter', after America's entry into the war." - canada_vanilla.1.opt:0 "'Factory work is no more difficult than housework', as the newsreels say." - ######################### FELLOWSHIP NEWS EVENTS - news.1000.t:0 "The Fellowship of the Ring" - news.1000.a:0 "Hmm..." - news.1000.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but I am a wizard after all.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1001.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have a dwarf.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1002.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small, but I'm grateful to Ironfoot for sending such a capable warrior.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1010.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have an elf.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1011.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Gondor could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1012.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Gondor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1020.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small, but I'm grateful to Thranduil for sending such a capable fighter.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1021.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Gondor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1022.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Gondor would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1100.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have a man of Gondor.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1101.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Thranduil could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1102.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Thranduil as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1110.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Erebor could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1111.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is sizeable enough. What worries me is the skill of it's members...' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1112.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Ironfoot, Gimli will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1120.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Erebor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1121.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Thranduil, his son Legolas will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1122.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. The dwarf and elf will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1200.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'Boromir will complement the fellowship nicely, yet I am displeased at Mirkwood and Erebor for their lack of collaboration.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1201.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Mirkwood as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1202.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Mirkwood would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1210.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Erebor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1211.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Denethor, his son Boromir will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1212.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. Boromir and Gimli will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1220.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Erebor would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1221.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. Boromir and Legolas will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" -news.1222.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I have full confidence in this fellowship! With such capable warriors, how can we not succeed?' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" diff --git a/localisation/english/gondor/gondor_events_l_english.yml b/localisation/english/gondor/gondor_events_l_english.yml index fa6b5e671..57c0c9d1c 100644 --- a/localisation/english/gondor/gondor_events_l_english.yml +++ b/localisation/english/gondor/gondor_events_l_english.yml @@ -1,5 +1,23 @@ l_english: ##### Event +gondor.1.t:0 "The beacons are lit!" +gondor.1.d:0 "The beacons are lit! Gondor calls for aid!" +gondor.1.a:0 "And Rohan shall answer!" +gondor.1.b:0 "What did Gondor ever do for us?!" + +gondor.2.t:0 "The battle for Osgiliath" +gondor.2.d:0 "Mordor forces have taken over Osgiliath. A host of our finest riders have gathered and will attempt to take the city back." +gondor.2.a:0 "That could end badly..." + +gondor.3.t:0 "Denethor commits suicide" +gondor.3.d:0 "The Stewart of Gondor has trown himself off the top of Minas Tirith." +gondor.3.a:0 "Oh dear..." + +gondor.4.t:0 "The Hunt for the One Ring: Boromir" +gondor.4.d:0 "Boromir could save the realm of Gondor if he were to take the ring from Frodo and return it to the white city." +gondor.4.a:0 "Have Boromir attempt to steal the One Ring." +gondor.4.b:0 "We will not stain Gondor's honour with such treachery!" + gondor.6.t:0 "[FROM.GetName] demands Poros" gondor.6.d:0 "[FROM.GetName] has laid claim on the territory of Poros, claiming historical precedents, and threating war if we dont transfer ownership." gondor.6.a:0 "We will not risk war over this." diff --git a/localisation/english/gondor/gondor_focuses_l_english.yml b/localisation/english/gondor/gondor_focuses_l_english.yml index 809a0173c..8a0b16540 100644 --- a/localisation/english/gondor/gondor_focuses_l_english.yml +++ b/localisation/english/gondor/gondor_focuses_l_english.yml @@ -18,7 +18,7 @@ GON_enforce_militair_loyalty_desc:0 "" GON_gondor_propaganda:0 "Loyalist Propaganda" GON_gondor_propaganda_desc:0 "" -GON_install_loyal_government_DAM:0 "Enforce Military Loyalty" +GON_install_loyal_government_DAM:0 "Install a Loyal Government" GON_install_loyal_government_DAM_desc:0 "" GON_publish_statement:0 "Publish a Statement" @@ -262,7 +262,7 @@ GON_ears_everywhere_desc:0 "" GON_expand_the_netwerk:0 "Network of Informants" GON_expand_the_netwerk_desc:0 "" -GON_sneaky_peaky:0 "Subersion and Infiltration" +GON_sneaky_peaky:0 "Subversion and Infiltration" GON_sneaky_peaky_desc:0 "" GON_we_see_everything:0 "Counterintelligence Measures" diff --git a/localisation/english/isengard/isengard_events_l_english.yml b/localisation/english/isengard/isengard_events_l_english.yml index 224c3a5d4..09a2e1df1 100644 --- a/localisation/english/isengard/isengard_events_l_english.yml +++ b/localisation/english/isengard/isengard_events_l_english.yml @@ -1,5 +1,36 @@ l_english: ##### Event +isengard.7.t:0 "The Hunt for the One Ring: Argonath" +isengard.7.d:0 "The One Ring is in the hands of the Fellowship. Our scouts report the fellowship travelling near Argonath, east of the dead marshes." +isengard.7.a:0 "This is our chance! Send a group of hunters to retrieve the ring." +isengard.7.b:0 "Leave them be." + +isengard.6.t:0 "Saruman dies" +isengard.6.d:0 "The lord of Isengard and Leader of the wizards, Saruman, is dead." +isengard.6.a:0 "Oh dear..." + +isengard.5.t:0 "Grima Wormtongue seeks refuge in Isengard" +isengard.5.d:0 "Having miserably failed his task to turn Rohan to our side, Grima Wormtongue seeks refuge in Orthanc." +isengard.5.a:0 "Whatever." + +isengard.4.t:0 "Saruman demands complete Submission" +isengard.4.d:0 "Saruman has declared himself Lord of Enedwaith. Either we take up arms against him or bend the knee and serve." +isengard.4.a:0 "We bow to our new overlord: Saruman." +isengard.4.b:0 "We'll shove the tower of Orthanc up the old wizards arse!" + +isengard.3.t:0 "Rohan refuses to give up the Westmarch" +isengard.3.d:0 "Rohan have declined our demands to surrender the Westmarch. Our troops stand ready for retaliation." +isengard.3.a:0 "We shall meet their stubborness with bloodshed." + +isengard.2.t:0 "Rohan surrenders the Westmarch" +isengard.2.d:0 "Rohan has met our demands and cede the region known as the Westmarch to us." +isengard.2.a:0 "Excellent." + +isengard.1.t:0 "Gandalf the Grey arrives in Isengard" +isengard.1.d:0 "Smoke rises from the Mountain of Doom. The hour grows late, and Gandalf the Grey rides to Isengard, seeking Sarumans counsel. Yet he would not hear his wisdom. Even when confronted with the unparalleled power of Sauron, he refuses to hand over the Ring leaving it instead in the careless hands of a halfling! What is to be done with this old fool? " +isengard.1.a:0 "Imprison him!" +isengard.1.b:0 "He is right. We must stand against Sauron." + isengard.8.t:0 "[From.GetName] suggests a alliance" isengard.8.d:0 "We both want the same thing, we both hate the same thing. Lets take over Middle-Earth together" isengard.8.a:0 "We should join hands" diff --git a/localisation/english/ithilien_crisis_l_english.yml b/localisation/english/ithilien_crisis_l_english.yml index 3b5d893ad..54c3f0a80 100644 --- a/localisation/english/ithilien_crisis_l_english.yml +++ b/localisation/english/ithilien_crisis_l_english.yml @@ -76,7 +76,7 @@ ithc_pillage_state_GON_desc:0 "A horde of orcs have streamed past the border int ithc_unpillage_state:0 "Restore Order in [FROM.GetName]" ithc_unpillage_state_desc:0 "[FROM.GetName] has recently been devastated by a raid of Mordor orcs. With sufficient power projection over the state, we could restore our control over it." ithc_unpillage_state_MOR:0 "Gondor restoring Order in [FROM.GetName]" -ithc_unpillage_state_MOR_desc:0 "Gondor is restoring order in [FROM.GetName] anhd undoing much of the damage our raids have done." +ithc_unpillage_state_MOR_desc:0 "Gondor is restoring order in [FROM.GetName] and undoing much of the damage our raids have done." ithc_evacuate_state_GON:0 "Evacuate [FROM.GetName]" ithc_evacuate_state_GON_desc:0 "[FROM.GetName] lies in peril. It may be best to safeguard the population and its riches by relocating them somewhere else." diff --git a/localisation/english/lar_events_l_english.yml b/localisation/english/lar_events_l_english.yml deleted file mode 100644 index ebcec18eb..000000000 --- a/localisation/english/lar_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from the vanilla game \ No newline at end of file diff --git a/localisation/english/lothlorien/lothlorien_events_l_english.yml b/localisation/english/lothlorien/lothlorien_events_l_english.yml index 8c2666d7c..de586bcc7 100644 --- a/localisation/english/lothlorien/lothlorien_events_l_english.yml +++ b/localisation/english/lothlorien/lothlorien_events_l_english.yml @@ -1,4 +1,44 @@ l_english: +lothlorien.1.t:0 "Lothlorien wishes to join our faction" +lothlorien.1.d:0 "Lothlorien wishes to join the Gondor Alliance." +lothlorien.1.a:0 "Accept" +lothlorien.1.b:0 "Decline" +#==================== +lothlorien.2.t:0 "The Question of the One Ring: Lothlórien" +lothlorien.2.d:0 "Now that the Fellowship is here with the One Ring, we have been presented quite the unique opportunity. We can attempt to take the ring from the Fellowship or aid them and increase their chance of destroying it." +lothlorien.2.a:0 "The Ring would be safer in our hands." +lothlorien.2.a.tt:0 "If Frodo refuses, we can try to escalate the situation and take the ring by force." +lothlorien.2.b:0 "The only hope for Middle-earth is in the Fellowship succeeding." +lothlorien.2.b.tt:0 "Will give us several options of aiding the fellowship on their journey to Mordor." +#==================== +lothlorien.3.t:0 "The Fellowship Needs Help" +lothlorien.3.d:0 "The Fellowship, tasked with protecting and destroying the One Ring, has arrived in our territory. We must decide whether to allow them shelter in Lorien and then decide what to do with the group." +lothlorien.3.a:0 "Give the Fellowship shelter." +lothlorien.3.b:0 "Refuse the Fellowship shelter." +#==================== +lothlorien.4.t:0 "Frodo willingly hands over the One Ring" +lothlorien.4.d:0 "The halfling has decided that the Ring would be safer in our hands." +lothlorien.4.a:0 "He made the right decision." +#==================== +lothlorien.5.t:0 "Frodo refuses" +lothlorien.5.d:0 "The halfling has decided to follow the advice of Gandalf, and take the Ring to Mordor himself." +lothlorien.5.b:0 "Perhaps its for the better." +lothlorien.5.b.tt:0 "Will give us several options of aiding the fellowship on their journey to Mordor." +lothlorien.5.a:0 "The Hobbit doesn't grasp the severity of the situation. We must have that ring one way or the other." +lothlorien.5.a.tt:0 "We will start a violent confrontation with the fellowship to attempt to take the ring." +#==================== +lothlorien.6.t:0 "Gearing up the Fellowship" +lothlorien.6.desc:0 "The fellowship must continue its journey to Mordor. What should we do to help them in their effort?" +lothlorien.6.a:0 "We will give them useful gifts." +lothlorien.6.a.tt:0 "Will raise the $fs_ad_symbol$ attack-level of all fellowship members by one" +lothlorien.6.b:0 "Have Haldir join the fellowship." +lothlorien.6.b.tt:0 "Haldir will join the fellowship on their journey." +lothlorien.6.c:0 "Thoughts and prayers" +lothlorien.6.d:0 "We have need of Haldir here. He should stay in Lothlórien." +lothlorien.6.d.tt:0 "Haldir will leave the fellowship and become available as a general again." +lothlorien.6.e:0 "We have need of Orophin here. He should stay in Lothlórien." +lothlorien.6.e.tt:0 "Orophin will join the fellowship on their journey." +#==================== lothlorien.7.t:0 "Festivities come to a close" lothlorien.7.d:0 "Amidst the encroaching darkness of the world around us, our people have enjoyed two well-deserved weeks of public celebrations, mirth and unity. We have kindled a fire of hope that shall endure as we face the trials ahead. As our people gather beneath the radiant Mallorn trees of Caras Galadhon, they expect a public speech by one of our leading figures." lothlorien.7.a:0 "Lady Galadriel should give a speech!" diff --git a/localisation/english/lothlorien/lothlorien_focus_l_english.yml b/localisation/english/lothlorien/lothlorien_focus_l_english.yml index c2c638cbb..07c57bec1 100644 --- a/localisation/english/lothlorien/lothlorien_focus_l_english.yml +++ b/localisation/english/lothlorien/lothlorien_focus_l_english.yml @@ -2,7 +2,7 @@ lth_acknowledgethemordorthreat:0 "Acknowledge the Mordor Threat" lth_acknowledgethemordorthreat_desc:0 "A shadow stirs in the east. It's threat is spreading along the misty mountains and engulfing our peaceful enclave. The looming storm can no longer be denied, and requires a radical rethinking of our present imperatives." lth_thegreatschism:0 "The Schism" -lth_thegreatschism_desc:0 "Lord Celeborn and Lady Galadriel blessed Lothlórien with their joint, benevolent rule for many centuries. Only broken hearts could lead them down a darker path." +lth_thegreatschism_desc:0 "Lord Celeborn and Lady Galadriel have blessed Lothlórien with their joint, benevolent rule for many centuries. Only broken hearts could lead them down a darker path." lth_preemtptivedepartures:0 "Preemptive Departures" lth_preemtptivedepartures_desc:0 "With the looming threat of the east, and the golden wood torn by inner quarrels, it might be prudent for some elves to depart towards the Undying Lands early." lth_appointedrepresentatives:0 "Appointed Representatives" diff --git a/localisation/english/lothlorien/lothlorien_l_english.yml b/localisation/english/lothlorien/lothlorien_l_english.yml deleted file mode 100644 index 263792aef..000000000 --- a/localisation/english/lothlorien/lothlorien_l_english.yml +++ /dev/null @@ -1,245 +0,0 @@ -l_english: -offersheltertothefellowship:0 "Offer Shelter to the Fellowship" -offersheltertothefellowship_desc:0 "" -offersheltertothefellowship:0 "Offer Shelter to the Fellowship" -offersheltertothefellowship_desc:0 "" -antiorcsentiment:0 "Anti-Orc Sentiment" -antiorcsentiment_desc:0 "" -stabilizethesouth:0 "Stabilize the South" -stabilizethesouth_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" -stabilizetheeast:0 "Stabilize the East" -stabilizetheeast_desc:0 "" -maintaintraderelations:0 "Maintain trade relations" -elvenprotectionleague:0 "Elven Protection League" -lth_warwithrohan:0 "War with Rohan" -taketheringfromfrodo:0 "Take the Ring from Frodo!" -taketheringfromfrodo_desc:0 "The likelihood of success of taking the ring from Frodo will depend on the strength of the fellowship. The stronger the fellowship, the less likely you are to get the ring with this focus." -preparefortheworst2:0 "Prepare for the Worst II" -endurethedarkness:0 "Endure the Darkness" -LTH_extraresearchslot:0 "Extra Research Slot" -supportthestrongest:0 "Support the Strongest" -protectthevulnerable:0 "Protect the Vulnerable" -askgondortojoin:0 "Ask to join Gondor" -shareknowledgewithmen:0 "Share knowledge with men" -elvenprotectionleage:0 "Elven Protection League" -freedomdefensecommittee:0 "Freedom Defense Committee" -lth_spreadtherevolution:0 "Spread the Revolution" -wartimeintervention:0 "Wartime Intervention" -theangmarplan:0 "The Angmar Plan" -theisengardplan:0 "The Isengard Plan" -themordorplan:0 "The Mordor Plan" -therhunplan:0 "The Rhun Plan" -theharadplan:0 "The Harad Plan" -embargoangmar:0 "Embargo Angmar" -embargoisengard:0 "Embargo Isengard" -embargomordor:0 "Embargo Mordor" -embargorhun:0 "Embargo Rhun" -embargoharad:0 "Embargo Harad" -directintervention:0 "Direct Intervention" -limitedintervention:0 "Limited Intervention" -offersheltertothefellowship:0 "Offer Shelter to the Fellowship" -offersheltertothefellowship_desc:0 "" -antidrawvensentiment:0 "Anti-Drawven Sentiment" -antidrawvensentiment_desc:0 "" -antiorcsentiment:0 "Anti-Orc Sentiment" -antiorcsentiment_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" -antidrawvensentiment:0 "Anti-Drawven Sentiment" -antidrawvensentiment_desc:0 "" -imperialglory:0 "Imperial Glory" -imperialglory_desc:0 "" -stabilizethesouth:0 "Stabilize the South" -stabilizethesouth_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" -stabilizetheeast:0 "Stabilize the East" -stabilizetheeast_desc:0 "" -acknowledgethemordorthreat:0 "Acknowledge the Mordor Threat" -acknowledgethemordorthreat_desc:0 "" -gearupthefellowship:0 "Gear up the Fellowship" -gearupthefellowship_desc:0 "Gearing up the fellowship will reduce the likelihood of either Gondor, Isengard or Mordor ever getting the Ring." -antidrawvensentiment:0 "Anti-Drawven Sentiment" -antidrawvensentiment_desc:0 "" -imperialglory:0 "Imperial Glory" -imperialglory_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" -prioritizeselfpreservation:0 "Prioritize Self Preservation" -prioritizeselfpreservation_desc:0 "" -prioritizevictory:0 "Prioritize Victory" -prioritizevictory_desc:0 "" -keepthepeoplefed:0 "Keep the People Fed" -keepthepeoplefed_desc:0 "" -victorythroughstrength:0 "Victory through Strength" -victorythroughstrength_desc:0 "" -victorythroughunity:0 "Victory through Unity" -victorythroughunity_desc:0 "" -victorythroughsubmission:0 "Victory through Submission" -victorythroughsubmission_desc:0 "" -victorythroughequity:0 "Victory through Equity" -victorythroughequity_desc:0 "" -victorythroughstrength:0 "Victory through Strength" -victorythroughstrength_desc:0 "" -victorythroughsubmission:0 "Victory through Submission" -victorythroughsubmission_desc:0 "" -ensureastablesupplyofresources:0 "Ensure a stable supply of resources" -ensureastablesupplyofresources_desc:0 "" -globalaspirations:0 "Global Aspirations" -globalaspirations_desc:0 "" -spiritualmobilization:0 "Spiritual Mobilization" -spiritualmobilization_desc:0 "" -declarationofliberty:0 "Declaration of Liberty" -declarationofliberty_desc:0 "" -intercepttheringatthegladdenfields:0 "Intercept the Ring at the Gladden Fields" -intercepttheringatthegladdenfields_desc:0 "The likelihood of success of taking the ring from Frodo will depend on the strength of the fellowship. The stronger the fellowship, the less likely you are to get the ring with this focus." -standwithsauron:0 "Stand with Sauron" -standwithsauron_desc:0 "" -getridofgaladriel:0 "Get rid of Galadriel" -getridofgaladriel_desc:0 "" -globalaspirations:0 "Global Aspirations" -globalaspirations_desc:0 "" -spiritualmobilization:0 "Spiritual Mobilization" -spiritualmobilization_desc:0 "" -standwithsauron:0 "Stand with Sauron" -standwithsauron_desc:0 "" -anationforelves:0 "A Nation for Elves" -anationforelves_desc:0 "" -anationforelves:0 "A Nation for Elves" -anationforelves_desc:0 "" -totalisolation:0 "Total Isolation" -totalisolation_desc:0 "" -unitetheelves:0 "Unite the Elves" -unitetheelves_desc:0 "" -lth_keeptheringforyourself:0 "Keep the Ring for yourself!" -lth_keeptheringforyourself_desc:0 "" -unitewithmen:0 "Unite with Men" -unitewithmen_desc:0 "" -lth_givetheringtosauron:0 "Give the Ring to Sauron" -lth_givetheringtosauron_desc:0 "" -anationforall:0 "A Nation for all" -anationforall_desc:0 "" -anationforelves:0 "A Nation for Elves" -anationforelves_desc:0 "" -preparefortheworst:0 "Prepare for the Worst" -preparefortheworst_desc:0 "" -lit_elvensupremacy:0 "Elven Supremacy" -lit_elvensupremacy_desc:0 "" -inviterivendell:0 "Invite Rivendell" -inviterivendell_desc:0 "" -seekoutrohan:0 "Seek out Rohan" -seekoutrohan_desc:0 "" -lth_renewairforce:0 "Renew the Airforce" -lth_expandairbases:0 "Expand Airbases" -lth_airsuperiorityfocus:0 "Air Superiority Focus" -lth_destructionfocus:0 "Destruction Focus" -lth_airstrategies:0 "Air Strategies" -lth_closeairsupport:0 "Close Air Support" -lth_strategicbombers:0 "Strategic Bombing" -lth_rockettechnology:0 "Rocket Technology" -integrateorcsintothegaladhrim:0 "Integrate Orcs into the Galadhrim" -integrateorcsintothegaladhrim_desc:0 "" -spreadtherevolution:0 "Spread the Revolution" -spreadtherevolution_desc:0 "" -thefateoflothlorien:0 "The Fate of Lothlorien" -lth_expandthegaladhrim:0 "Expand the Galadhrim" -lth_tankimprovements:0 "Tank Improvements" -lth_swiftnessfocus:0 "Swiftness Focus" -lth_armorfocus:0 "Armor Focus" -lth_mobilewarfare:0 "Mobile Warfare" -lth_specialforces:0 "Special Forces" -lth_improveelvenbows:0 "Improve Elven Bows" -lth_adaptablearrowtips:0 "Adaptable Arrow Tips" -lth_poisonarrows:0 "Poison Arrows" -lth_militarytechnology:0 "Military Technology" -lth_nucleartechnology:0 "Nuclear Technology" -lth_industryeffort:0 "Idustry Effort" -lth_forestrailways:0 "Forest Railways" -lth_gladdenfieldroads:0 "Gladden Field Roads" -lth_parthcelebrantroads:0 "Parth Celebrant Roads" -lth_technologyinnovations:0 "Technology Innovations" -lth_refineelvenscience:0 "Refine Elven Science" -lth_universityoflorien:0 "University of Lòrien" -lth_manufacturingeffort:0 "Manufacturing Effort" -lth_improvedmanufacturingmethods:0 "Improved Manufacturing Methods" -lth_recyclingconsumergoods:0 "Recycling Consumer Goods" -lth_armysupplies:0 "Army Supplies" -lth_weaponmanufacturing:0 "Weapon Manufacturing" -lth_automatedproductionline:0 "Automated Productionline" -elvensupremacy:0 "Elven Supremacy" -elvensupremacy_desc:0 "" -integrateorcsintothegaladhrim:0 "Integrate Orcs into the Galadhrim" -integrateorcsintothegaladhrim_desc:0 "" -peacefully:0 "... peacefully" -peacefully_desc:0 "" -oneleadertorulethemall:0 "One Leader to rule them all" -oneleadertorulethemall_desc:0 "" -oneleadertorulethemall:0 "One Leader to rule them all" -oneleadertorulethemall_desc:0 "" -invitemirkwood:0 "Invite Mirkwood" -invitemirkwood_desc:0 "" -seekoutgondor:0 "Seek out Gondor" -seekoutgondor_desc:0 "" -byforce:0 "... by Force" -byforce_desc:0 "" -peacefully:0 "... peacefully" -peacefully_desc:0 "" -oneleadertorulethemall:0 "One Leader to rule them all" -oneleadertorulethemall_desc:0 "" -warwithrohan:0 "War with Rohan" -warwithrohan_desc:0 "" -appointamatriarch:0 "Appoint a Matriarch" -appointamatriarch_desc:0 "" -appointamatriarch:0 "Appoint a Matriarch" -appointamatriarch_desc:0 "" -appointapatriarch:0 "Appoint a Patriarch" -appointapatriarch_desc:0 "" -seekouttherangersofthenorth:0 "Seek out the Rangers of the North" -seekouttherangersofthenorth_desc:0 "" -unitethecause:0 "Unite the Cause" -unitethecause_desc:0 "" -appointamatriarch:0 "Appoint a Matriarch" -appointamatriarch_desc:0 "" -appointapatriarch:0 "Appoint a Patriarch" -appointapatriarch_desc:0 "" -bewitchbeorn:0 "Bewitch Beorn" -bewitchbeorn_desc:0 "" -elvishimperialism:0 "Elvish Imperialism" -elvishimperialism_desc:0 "" -influenceelrond:0 "Influence Elrond" -influenceelrond_desc:0 "" -bewitchbeorn:0 "Bewitch Beorn" -bewitchbeorn_desc:0 "" -elvishimperialism:0 "Elvish Imperialism" -elvishimperialism_desc:0 "" -influenceelrond:0 "Influence Elrond" -influenceelrond_desc:0 "" -antidrawvensentiment:0 "Anti-Drawven Sentiment" -antidrawvensentiment_desc:0 "" -antiorcsentiment:0 "Anti-Orc Sentiment" -antiorcsentiment_desc:0 "" -stabilizethesouth:0 "Stabilize the South" -stabilizethesouth_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" -stabilizetheeast:0 "Stabilize the East" -stabilizetheeast_desc:0 "" -antidrawvensentiment:0 "Anti-Drawven Sentiment" -antidrawvensentiment_desc:0 "" -antiorcsentiment:0 "Anti-Orc Sentiment" -antiorcsentiment_desc:0 "" -antimensentiment:0 "Anti-Men Sentiment" -antimensentiment_desc:0 "" - -LTH_global_aspirations:0 "Global aspirations" -LTH_global_aspirations_desc:0 "" -LTH_elven_protection_league:0 "Elven protection league" -LTH_elven_protection_league_desc:0 "" -LTH_integrated_orcs:0 "integrated orcs" -LTH_integrated_orcs_desc:0 "" -LTH_commune_for_all:0 "Commune for all" -LTH_commune_for_all_desc:0 "" -LTH_commune_for_elves:0 "Commune for elves" -LTH_commune_for_elves_desc:0 "" \ No newline at end of file diff --git a/localisation/english/mirkwood/mirkwood_events_l_english.yml b/localisation/english/mirkwood/mirkwood_events_l_english.yml index 6627534be..aae7625fb 100644 --- a/localisation/english/mirkwood/mirkwood_events_l_english.yml +++ b/localisation/english/mirkwood/mirkwood_events_l_english.yml @@ -1,5 +1,36 @@ l_english: ##### Event +mirkwood.1.t:0 "Dwarf attack on Dale" +mirkwood.1.d:0 "The dwarves of Erebor have declared war on our former ally, the city-state of Dale. What is to be done?" +mirkwood.1.a:0 "Stand with Dale" +mirkwood.1.b:0 "None of our business" + +mirkwood.2.t:0 "Mirkwood demands we stand down" +mirkwood.2.d:0 "The Elves of the Mirkwood do not appreciate our quarrel with Dale. They demand we stand our army down and seize all hostilites or they invade." +mirkwood.2.a:0 "Stand down. We cannot risk war with the elves." +mirkwood.2.b:0 "We will not stand down before any elf!" + +mirkwood.3.t:0 "Mirkwood asks for an alliance" +mirkwood.3.d:0 "The Elves of the Mirkwood have always been drawn to the beauties of nature. Now they seek to unite with the ents." +mirkwood.3.a:0 "Thranduil has always been a close ally and friend." +mirkwood.3.b:0 "The elf is too hasty. We must think on this." + +mirkwood.4.t:0 "Spider attack on the Elven King's Halls!" +mirkwood.4.d:0 "The Great Spiders of the Mirkwood have launched an attack on out greatest Elven city. The spiders have been fended off, but many of our valiant warriors lost their lives. If the Spiders are not dealt with soon, they might start an all out war on us!" +mirkwood.4.a:0 "The Spiders must be dealt with." + +mirkwood.5.t:0 "The Spiders declare war" +mirkwood.5.d:0 "The Great Spiders of the Mirkwood have gathered in the West and taken up arms against us! They have declared themselves a free and independent nation of Mirkwood and will not stop until put down violently." +mirkwood.5.a:0 "War it is then." + +mirkwood.6.t:0 "Orcs of Dol Guldur overrun Emyn Lûm!" +mirkwood.6.d:0 "A Horde of orcs coming from the ruin of Dul Guldur have overrun the southern city of Emyn Lûm. Our soldiers have reclaimed the land and driven the orcs back to Dol Guldur, but many lost their lives. If Dol Guldur is not dealt with, Sauron and his disciples may launch an all out attack from the fortress!" +mirkwood.6.a:0 "Dol Guldur must be dealth with." + +mirkwood.7.t:0 "Dol Guldur declares war" +mirkwood.7.d:0 "The Orcs of Dol Guldur, lead by the ringwarith Khamûl, have taken up arms against us and now control all of Dol Guldur's surroundings!" +mirkwood.7.a:0 "War it is then." + mirkwood.8.t:0 "Dol Guldur" mirkwood.8.d:0 "We have recieved word that enemy troops are gathering at the fortress of Dol Guldur. Mordor's heavy-handed meddling in the region is becoming a rising cause for concern and must be dealt with urgently!" mirkwood.8.a:0 "This is bad..." diff --git a/localisation/english/mordor/mordor_events_l_english.yml b/localisation/english/mordor/mordor_events_l_english.yml index 89de95ae3..832139483 100644 --- a/localisation/english/mordor/mordor_events_l_english.yml +++ b/localisation/english/mordor/mordor_events_l_english.yml @@ -104,4 +104,67 @@ mordor.63.b:0 "We are not ready for a war" mordor.64.t:0 "[From.GetName] proposes to use force against Rivendell" mordor.64.d:0 "The elven threat is only growing more and more. Only political actions arent enough anymore. We should stand strong and use force now we still can. We should attack at once!" mordor.64.a:0 "Force is the only option left" -mordor.64.b:0 "We are not ready for a war" \ No newline at end of file +mordor.64.b:0 "We are not ready for a war" + +mordor_civil_war:0 "Orcs march agains Sauron" +mordor.1.t:0 "Civil War!" +mordor.1.d:0 "A horde of influential orcs have risen up and taken arms against tyrannical ruling. They claim that Saurons defeat at the hands of the Last Alliance proved him a weak leader. In response, the Dark Lord has gathered his most loyal servants and issued a black speech ultimatium. The rebels at Barad-dûr have been purged and Sauron stands ready to destroy the traitors. A significant portion of the military have sided with these Anarchists. Despite their poor training, their enthusiasm remains unquestioned.\n\nThe battle-lines have been drawn - which faction should we support?" +mordor.1.a:0 "The Dark Lord Sauron!" +mordor.1.b:0 "The Free Orcs of Mordor!" + +mordor.2.t:0 "Mordor demands submission" +mordor.2.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." +mordor.2.a:0 "Accept" +mordor.2.b:0 "Decline" + +mordor.4.t:0 "Mordor demands submission" +mordor.4.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." +mordor.4.a:0 "Accept" +mordor.4.b:0 "Decline" + +mordor.6.t:0 "Mordor demands submission" +mordor.6.d:0 "Mordor demands we submit to their might and serve them unconditionally. Declining means war." +mordor.6.a:0 "Accept" +mordor.6.b:0 "Decline" + +mordor.3.t:0 "Dagorlad submits" +mordor.3.d:0 "Dagorlad has agreed to serve our needs unconditionally." +mordor.3.a:0 "Accept" + +mordor.5.t:0 "Rhun submits" +mordor.5.d:0 "Rhun has agreed to serve our needs unconditionally." +mordor.5.a:0 "Accept" + +mordor.7.t:0 "Harad submits hesitantly" +mordor.7.d:0 "Harad has agreed to serve our needs, but a large consensus have condemned this move, which might lead to an uprising." +mordor.7.a:0 "Accept" + +mordor.8.t:0 "Harad stands firm" +mordor.8.d:0 "Harad has declined our offer of servitude. But our calls have been heard by the people of Harad, an uprising may be sparked." +mordor.8.a:0 "Accept" + +mordor.9.t:0 "The Haradrim object to Saurons rule" +mordor.9.d:0 "A large group of anti-Mordor advocates have taken up arms against us, refusing the rule of our new soverign, Sauron." +mordor.9.a:0 "Fine. It will be their blood we spill first." + +mordor.10.t:0 "Haradwaith claims sovereignty" +mordor.10.d:0 "A large group of pro-Mordor advocates have taken up arms against us, no doubt Mordor will join their efforts." +mordor.10.a:0 "There shall be blood, then." + +mordor.11.t:0 "The Hunt for the One Ring: The Dead Marshes" +mordor.11.d:0 "The One Ring draws closer to its master. Shall we send a force to retrieve it or wait for it to return itself to Sauron?" +mordor.11.a:0 "Search the Dead Marshes." +mordor.11.b:0 "Await its inevitable return." + +mordor.12.t:0 "The Hunt for the One Ring: The Shire" +mordor.12.d:0 "Someone has used the ring in a far away place. The dark lord can sense it. Futhermore, the last known ring carrier, Gollum, has told us where the One Ring is now. A foreign place called The Shire. The return of the Nazgul comes at a perfect time, shall they go fetch the ring they desire more than anything else?" +mordor.12.a:0 "Send the Black Riders." +mordor.12.b:0 "What is a Shire?" + +mordor.42.t:0 "The one Ring has been found!" +mordor.42.d:0 "The Nazgul have found the Ring!" +mordor.42.a:0 "Finally." + +mordor.43.t:0 "The One Ring is ours!" +mordor.43.d:0 "Our forces have captured the One Ring from the enemy." +mordor.43.a:0 "At last." \ No newline at end of file diff --git a/localisation/english/moria/moria_events_l_english.yml b/localisation/english/moria/moria_events_l_english.yml index e13b08554..723fee82f 100644 --- a/localisation/english/moria/moria_events_l_english.yml +++ b/localisation/english/moria/moria_events_l_english.yml @@ -39,4 +39,19 @@ moria.8.c.gimli_leaves:0 "Gimli will stay with the fellowship." moria.9.t:0 "Balrog Attack" moria.9.d:0 "As we continue our struggle to bring Moria under our control, another great threat makes its presence known once more. A Balrog of Morgoth, known as 'Durin's Bane' has been roaming the lower tunnels, leaving nothing but terror and destruction in its wake.\n\nToday, this dark servant of Morgoth happened upon one of our outposts and left behind nothing but a pile of ashes." moria.9.a:0 "A grim predicament." -moria.9.a_tt:0 "\nReminder: The states $STATE_73$ and $STATE_134$ have a severely crippling state-modifier §Y$moria_loose_balrog$§!." \ No newline at end of file +moria.9.a_tt:0 "\nReminder: The states $STATE_73$ and $STATE_134$ have a severely crippling state-modifier §Y$moria_loose_balrog$§!." + +moria.1.t:0 "We are under attack!" +moria.1.d:0 "The gates are in splinters and a horde of orcs is flooding the mines! The dwarves will send word to Erebor and try to stand firm. What side will we support?" +moria.1.a:0 "We stand with the dwarves!" +moria.1.b:0 "The time of orcs has come!" + +moria.2.t:0 "Moria asks for help!" +moria.2.d:0 "Moria is being overrun by orcs! Balin is dead and Gloin has called for our help. What shall we do?" +moria.2.a:0 "Leave them to their fate." +moria.2.b:0 "Send them our sharpest axes!" +moria.2.c:0 "Send an expeditionary force." + +moria.3.t:0 "Erebor answers the call!" +moria.3.d:0 "Ironfoot has heard our call and dwarven reinforcements have arrived! Now is our chance to beat them back!" +moria.3.a:0 "Finally!" \ No newline at end of file diff --git a/localisation/english/mtg_events_l_english.yml b/localisation/english/mtg_events_l_english.yml deleted file mode 100644 index ebcec18eb..000000000 --- a/localisation/english/mtg_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from the vanilla game \ No newline at end of file diff --git a/localisation/english/nsb_events_l_english.yml b/localisation/english/nsb_events_l_english.yml deleted file mode 100644 index ebcec18eb..000000000 --- a/localisation/english/nsb_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from the vanilla game \ No newline at end of file diff --git a/localisation/english/replace/autonomy_l_english.yml b/localisation/english/replace/autonomy_l_english.yml deleted file mode 100644 index 6f96d7780..000000000 --- a/localisation/english/replace/autonomy_l_english.yml +++ /dev/null @@ -1,67 +0,0 @@ -l_english: - SHI_display_of_strength:0 "Display of Strength" - SHI_question_arthedain_strength:0 "Question Arthedains Strength" - SHI_abandon_arthedain:0 "Abandon Arthedain" - ###################################### - autonomy_supervised_state:0 "Supervised State" - autonomy_colony:0 "Colony" - autonomy_fiefdom:0 "Fiefdom" - autonomy_puppet:0 "Puppet" - autonomy_integrated_puppet:0 "Integrated Puppet" - autonomy_annex:0 "Annexed" - autonomy_free:0 "Free" - autonomy_collaboration_government:0 "Collaboration Government" - autonomy_personal_union:0 "Personal Union" - AUTONOMY_CAN_TAKE_DESC:1 "$OWNER|UH$ can become a $NEXTLEVEL|H$" - AUTONOMY_CANT_TAKE_DESC:1 "$OWNER|UH$ can not become a $NEXTLEVEL|H$ yet" - AUTONOMY_CAN_LOSE_DESC:1 "$OWNER|UH$ can be reduced to a $PREVLEVEL|H$" - AUTONOMY_CANT_LOSE_DESC:1 "$OWNER|UH$ can not be reduced to a $PREVLEVEL|H$ yet" - AUTONOMY_CHANGE_TO_DESC:1 "$OWNER|UH$ will become a $LEVEL|H$" - AUTONOMY_MOVING_DESC:1 "§GChange autonomy level to a $LEVEL|H$§!" - AUTONOMY_CURR_DESC:0 "Currently $COUNTRY|H$ is a $LEVEL|H$" - AUTONOMY_PROGRESS_DESC:1 "$OWNER|UH$ has £autonomy_texticon $CURRENT|H0$/$TOTAL|H0$ points until being able to become $NEXTLEVEL|H$" - AUTONOMY_PROGRESS_PREV_DESC:1 "$OWNER|UH$ has $CURRENT|H0$ points too many to be reduced to $PREVLEVEL|H$" - AUTONOMY_RELATION_DESC:1 "$SUBJECT|UH$ is a $LEVEL|H$ of $MASTER|H$" - AUTONOMY_RELATION_DESC2:1 "$SUBJECT|UH$ is a $LEVEL|H$ of a foreign power" - AUTONOMY_COUNTRY_EFFECT:0 "Country" - AUTONOMY_MASTER_COUNTRY_EFFECT:0 "Master" - SHOW_SUBJECTS_DESC:0 "Open subjects view" - SHOW_SUBJECTS_DISABLED_DESC:0 "§RWe don't have any subjects to display§!" - MANAGE_SUBJECTS_HEADER:0 "Subjects" - CONTINUOUS_AUTONOMY_EFFECT:0 "$REASON$: £autonomy_texticon $VAL|+=2$" - EVENT_AUTONOMY_EFFECT:0 "$REASON$: £autonomy_texticon $VAL|+=2$" - LL_TO_OVERLORD_FREEDOM_EFFECT:0 "Subject lend leasing to overlord" - LL_TO_PUPPET_FREEDOM_EFFECT:0 "Overlord lend leasing to subject" - MONTHLY_LL_FREEDOM_TO_PUPPET:0 "$FLAG$ $VALUE|-2$" - MONTHLY_LL_FREEDOM_TO_MASTER:0 "$VALUE|+2$" - MONTHLY_LL_FREEDOM_VALUE_DESC:0 "Monthly impact on autonomy in case of full delivery" - MONTHLY_LL_FREEDOM_DESC:0 "Monthly after full delivery $COUNTRY|H$ gets £autonomy_texticon $VALUE|+=2$ " - MONTHLY_REQUEST_LL_TO_MASTER:0 "§RRequesting lend lease from puppet can give them more autonomy§!" - MONTHLY_REQUEST_LL_TO_PUPPET:0 "§RRequesting lend lease from master might lose autonomy§!" - EXPORT_FREEDOM_EFFECT:0 "Subject exporting to overlord" - WAR_SCORE_FREEDOM_EFFECT:0 "Subject contributed war score" - EFFECT_FREEDOM_EFFECT:0 "Subject received" - ACTIVE_ATTACHES_EFFECT:0 "Active Attaches" - MASTER_SURRENDER_FREEDOM_EFFECT:0 "Master capitulated" - MISSING_AUTONOMY_SCORE:0 "Need £autonomy_texticon $VAL|2Y$ more autonomy" - TOO_MUCH_AUTONOMY_SCORE:0 "Has $VAL|2Y$ too much autonomy" - AUTONOMY_CHANGE_COST:1 "Cost (£pol_power ): $VALUE$" - AUTONOMY_FREEDOM_PROMOTE_COST:0 "Need £autonomy_texticon $SCORE|H0$ more to promote to that level" - AUTONOMY_FREEDOM_DEMOTE_COST:0 "Need £autonomy_texticon $SCORE|H0$ to demote to that level" - CONTINUOUS_AUTONOMY_EFFECTS:0 "§HContinuous effects on autonomy§!" - EVENT_AUTONOMY_EFFECTS:1 "§HEffects on autonomy§!" - ADD_AUTONOMY_SCORE_DESC:0 "Add £autonomy_texticon $VALUE|H2$" - ADD_AUTONOMY_SCORE_DETAILED_DESC:0 "Add £autonomy_texticon $VALUE|H2$ to the $COUNTRY|H$" - COLONIAL_FORCES_GENERAL_DESCRIPTION:2 "§GClick to view templates of subjects and Governments in Exile§!\n\nDivisions created with colonial templates can include more manpower from the colony if the colony's autonomy is lowered." - COLONIAL_FORCES_NO_SUBJECTS:2 "§RWe have no subjects or Governments in Exile we could recruit templates from§!" - FOREIGN_TEMPLATE_DESC:1 "This template is $COUNTRY_ADJ|H$, and they are our subject. We can copy this template and create colonial forces on its base. Colonial forces draw manpower from the subject at a rate determined by their autonomy level." - COLONIAL_TEMPLATE_DESC:1 "This is a colonial template of $COUNTRY_DEF|H$. Colonial forces draw manpower from the subject at a rate determined by their autonomy level." - FOREIGN_EXILE_TEMPLATE_DESC:0 "This template is $COUNTRY_ADJ|H$, and we host their government-in-exile. We can copy this template and create exile forces on its base. Exile forces draw manpower from the government-in-exile." - EXILE_TEMPLATE_DESC:0 "This is an exile template of $COUNTRY_DEF|H$. Exile forces draw manpower from the government-in-exile." - CONSTRUCTION_MASTER_BUILDING_LEVELS:1 "$MASTER|UH$ is currently building $LVL|H$ levels of $BUILDING|H$ for us." - CONSTRUCTION_MASTER_BUILDING_REDUCE_LEVELS:0 "We are allowed to reduce this construciton level only by $LVL|R$." - CONSTRUCTION_MASTER_BUILDING_CANT_REDUCE:0 "§RWe are not allowed to reduce the level or cancel this construction.§!" - CONSTRUCTION_INFO_MASTER:0 "This construction is built on the $WHO|H$ territory. If we don't use all factories, they can contribute using theirs." - CONSTRUCTION_INFO_SUBJECT:0 "This construction is built for us by the $WHO|H$. If they don't use all factories, we can contribute using ours." - autonomy_communist_satellite:0 "Satellite" - autonomy_occupation_zone:0 "Occupation Zone" diff --git a/localisation/english/replace/buildings_l_english.yml b/localisation/english/replace/buildings_l_english.yml deleted file mode 100644 index 71c137e68..000000000 --- a/localisation/english/replace/buildings_l_english.yml +++ /dev/null @@ -1,86 +0,0 @@ -l_english: - infrastructure:0 "Infrastructure" - infrastructure_plural:0 "Infrastructure" - infrastructure_desc:0 "This building provides the state with improvement of infrastructure. It increases your supply power in strategic regions and increases your divisions' speed." - arms_factory:0 "Military Factory" - arms_factory_plural:0 "Military Factories" - arms_factory_desc:0 "This building provides the state with industry for production of new military equipment. Can be converted to civilian industry if needed." - dockyard:0 "Naval Dockyard" - dockyard_plural:0 "Naval Dockyards" - dockyard_desc:0 "This building provides the state with industry for building new ships." - industrial_complex:0 "Civilian Factory" - industrial_complex_plural:0 "Civilian Factories" - industrial_complex_desc:0 "This building provides the state with industry for production of civilian goods or construction of new buildings. Can be converted to military industry if needed." - air_base:0 "Air Base" - air_base_plural:0 "Air Bases" - air_base_desc:0 "This building provides the state with deployment for your air forces." - naval_base:0 "Naval Base" - naval_base_plural:0 "Naval Bases" - naval_base_desc:1 "Extends the range of your fleet and provides repair services for it. Allows overseas supply and export of resources. Higher levels increases the supply throughput." - bunker:0 "Land Fort" - bunker_plural:0 "Land Forts" - bunker_desc:0 "This building inflicts an attack penalty of $VALUE|+%0$ for each fort level on the attacker in combat. Attacking from multiple directions will reduce forts effect." - coastal_bunker:0 "Coastal Fort" - coastal_bunker_plural:0 "Coastal Forts" - coastal_bunker_desc:0 "This building inflicts an attack penalty of $VALUE|+%0$ for each fort level on the attacker in naval invasion combat." - anti_air_building:0 "Anti-Air" - anti_air_building_plural:0 "Anti-Air" - anti_air_building_desc:0 "This building provides the state with protection from enemy bombers and ability to fire at attacking aircraft." - synthetic_refinery:0 "Farm" - synthetic_refinery_plural:0 "Farms" - #synthetic_refinery_desc:0 "This building provides the state with +1 £resources_strip|3 and +2 £resources_strip|1." - synthetic_refinery_desc:0 "This building provides the state with" - synthetic_refinery_amount:0 "$VALUE|Y0=$" - synthetic_refinery_resource:0 "£resources_strip|$FRAME$" - radar_station:0 "Radar Station" - radar_station_plural:0 "Radar Stations" - radar_station_desc:3 "Radar allows you to gain intel on enemy troops in nearby states.\nA higher radar level in a state increases the effective range of the radar.\nRadar also provides the state with better detection of enemy air forces, giving your planes a better chance to engage them.\nIn addition radar increases the detection of enemy fleets at sea." - rocket_site:0 "Rocket Site" - rocket_site_plural:0 "Rocket Sites" - rocket_site_desc:0 "This building provides the state with deployment for produced rockets." - nuclear_reactor:0 "Nuclear Reactor" - nuclear_reactor_plural:0 "Nuclear Reactors" - nuclear_reactor_desc:0 "This building provides the state with production of enriched Uranium for use in Nuclear weapons." - BUILDING_BOMBED:0 "$BUILDING$ bombed!" - BUILDING_SABOTAGED:0 "$BUILDING$ sabotaged!" - BUILDING_REPAIRED:0 "$BUILDING$ repaired!" - BUILDING_DAMAGE_REASON_COLLATERAL:0 "$BUILDING$ suffered collateral damage!" - NUKE_DROPPED:0 "Nuclear bomb dropped!" - BUILDING_DAMAGED:0 "Damaged levels: $DAMAGED|-$/$CURRENT|H$" - CAPACITY:0 "$VAL$/$MAX$" - CAPACITY_PLUS:0 "$VAL$+$PLUS$/$MAX$" - AIR_BASE_LEVEL:0 "$NAME|H$: $VAL|Y$" - AIR_BASE_LEVEL_UNKNOWN:0 "$NAME|H$" - ROCKET_SITE_CAPACITY:0 "Capacity: $VAL$/$MAX$" - NAVAL_BASE_LEVEL_UNKNOWN:0 "§YNaval base§!" - NAVAL_BASE_LEVEL:0 "§YNaval base§!: $VAL|Y$" - NAVAL_BASE_SUPPLY_LIMIT:0 "Supply throughput limit: $VAL|Y$" - NAVAL_BASE_CAPACITY:0 "Capacity: $USED|1G$/$TOTAL|0G$" - NAVAL_BASE_CAPACITY_OVER:0 "Capacity: $USED|1R$/$TOTAL|0R$" - NAVAL_BASE_CAPACITY_PENALTY:0 "Repair power capacity penalty: $PENALTY|%0R$" - BUILDING_LEVEL:1 "§TState level: $LEVEL|H$§!" - BUILDING_CURRENT_MAX_LEVEL_CAPPED:0 "Building current max level limited by:" - BUILDING_CURRENT_MAX_LEVEL_NONCAPPED:0 "Building current max level is not limited." - BUILDING_CURRENT_MAX_LEVEL_CAPPED_MANPOWER:0 "State population: $MANPOWER|*Y$" - BUILDING_CURRENT_MAX_LEVEL_CAPPED_POP_PER_LEVEL:0 "Population per building level: $POPLEVEL|*Y$" - BUILDING_CURRENT_MAX_LEVEL_CAPPED_BUILDING_MAX_FACTOR:0 "State max factor: $MAXFACTOR|%0Y$" - BUILDING_CURRENT_MAX_LEVEL_CAPPED_MIN_MAXLEVEL:0 "Min max level due to population: $MAXLEVEL|Y$" - BUILDING_SLOT_REMOVE_BUILDING_LEVEL:0 "Remove the building." - BUILDING_SLOT_REMOVE_CONSTRUCTION_LEVEL:0 "Remove a construction level of the building." - BUILDING_SLOT_REMOVE_CONVERSION_LEVEL:0 "Revert the building conversion." - BUILDING_SLOT_REMOVE_COOLDOWN:0 "In wartimes it's only possible to remove buildings once every $DAYS|Y$ days. Next removal can be done at $DATE|Y$." - CLICK_TO_CONVERT:1 "§GClick§! to convert to $BUILDING|Y$" - INSERT_CONVERSION:0 "§GCtrl+Click§! to convert and place at the beginning of the queue.\n§GAlt+Click§! to convert and place at the end of the queue." - INSERT_CONSTRUCTION:0 "§GCtrl+Click§! to build and place at the beginning of the queue.\n§GAlt+Click§! to build and place at the end of the queue." - BUILDING_CURRENT_MAX_LEVEL:0 "Max level for $BUILDING|Y$: $MAXLEVEL|Y$" - BUILDING_CURRENT_MAX_LEVEL_SHARED_SLOTS:0 "Max $BUILDING|Y$ in a State: $MAXLEVEL|Y$" - BUILDING_LEVEL_HEALTH:0 "Level health: $VALUE|%2Y$" - AIR_DEFENSE_IN_STATE:1 "\n§HIndustry bombing damage reduction:§! $TOT_INDUSTRY|%G$\n§HOther bombing damage reduction:§! $TOT|%G$\nAnti-Air: $AA|-%$\n" - RADAR_ONMAP_TOOLTIP:0 "§HRadar station§! level: $LVL|G$/$TOT|H$\nBelongs to: $WHO|H$" - RADAR_ONMAP_DAMAGED_TOOLTIP:0 "§HRadar station§! level: $LVL|R$/$TOT|H$\nBelongs to: $WHO|H$" - RADAR_ONMAP_TOOLTIP_COVERAGE:0 "\n§HRegions coverage:§!" - RADAR_ONMAP_TOOLTIP_COVERAGE_ENTRY:0 "\n $PERC|%$ in $REGION$" - RADAR_ONMAP_TOOLTIP_SUPPRESS:0 "\nHold §GCtrl§! to §Rsuppress§! this tooltip." - fuel_silo:0 "Food Silo" - fuel_silo_plural:0 "Food Silos" - fuel_silo_desc:0 "This building provides your nation with more room for stockpiling §HFood§!." diff --git a/localisation/english/replace/core_l_english.yml b/localisation/english/replace/core_l_english.yml deleted file mode 100644 index 906d32b7d..000000000 --- a/localisation/english/replace/core_l_english.yml +++ /dev/null @@ -1,1957 +0,0 @@ -l_english: - SEPARATION_LINE:0 "--------------\n" - MENU_MESSAGES_DISABLE_ALL:0 "Disable all" - FILTER:0 "Filter" - TO_ME:0 "To me" - FROM_ME:0 "From me" - INTERESTING:0 "Interesting" - OTHERS:0 "Others" - DECAY:0 "Decay" - non_core:0 "Non-Core" - SM_LANGUAGE:0 "Language" - ENGLISH_SUPPORTED:0 "Yes" - SPANISH_SUPPORTED:0 "Yes" - GERMAN_SUPPORTED:0 "Yes" - FRENCH_SUPPORTED:0 "Yes" - ENGLISH:0 "English" - SPANISH:0 "Spanish" - GERMAN:0 "German" - FRENCH:0 "French" - HEADER:0 "$KEY|1H$\n" - UNIT_SPEED:0 "Division speed: $VALUE|H$ km/h" - HEADER_DISABLED:0 "$KEY|g$" - HEADER_ENABLED:0 "$KEY|W$" - HIGHLT:0 "$KEY|H$" - LORE:0 "$KEY|L$" - MOVE_CAPITAL_AT_WAR:0 "You cannot move the capital to this province while at war." - REGION:0 "Region" - CONTINENT:0 "Continent" - IS_ATPEACE:0 "At Peace" - IS_ATWAR:0 "At War" - RESEARCH_TIME_TOOLTIP:0 "Time to Research: $DAYS|Y$ days " - RESEARCH_TIME_TOOLTIP_WITH_XP:0 "Time to Research: $DAYS|Y$ days ($DAYS_WITH_XP|Y$ days for $XP_TEXT$)" - RESEARCH_TIME_TOOLTIP_WITH_XP_COST_FACTOR:2 "Doctrine cost: $COST|Y$ $VALUE|Y$ \nDue to: \nBase Cost: $BASE|Y$" - WAIT_FOR_HOTJOIN:0 "Please wait while the host sets up the game for you. Once you got a savegame transferred to you, you can choose a country and join the game." - HOST_PREPARING_GAME:0 "Please wait while the host\nprepares the game for you." - HOTJOIN_CONFIRM:0 "Confirm" - HOTJOIN_ACCEPT:0 "Accept hotjoin request" - HOTJOIN_DECLINE:0 "Decline hotjoin request" - READY:0 "Ready!" - UNREADY:0 "Ready?" - diff_very_easy_player:0 "Civilian Difficulty" - diff_easy_player:1 "Recruit Difficulty" - diff_hard_player:1 "Veteran Difficulty" - diff_very_hard_player:0 "Elite Difficulty" - NOT_READY_TO_PLAY_MP:0 "$PLAYER|H$ is not ready" - READY_TO_PLAY_MP:0 "$PLAYER|H$ is ready" - LOADING_GUI:0 "Loading GUI" - LOADING_HISTORY:0 "Loading History" - NOT_SELECT:0 "No country selected" - April:0 "April" - August:0 "August" - December:0 "December" - February:0 "February" - Friday:0 "Friday" - January:0 "January" - July:0 "July" - June:0 "June" - March:0 "March" - Monday:0 "Monday" - November:0 "November" - October:0 "October" - Saturday:0 "Saturday" - September:0 "September" - Sunday:0 "Sunday" - Thursday:0 "Thursday" - Tuesday:0 "Tuesday" - Wednesday:0 "Wednesday" - Jan:0 "Jan" - Feb:0 "Feb" - Mar:0 "Mar" - Apr:0 "Apr" - Jun:0 "Jun" - Jul:0 "Jul" - Aug:0 "Aug" - Sep:0 "Sep" - Oct:0 "Oct" - Nov:0 "Nov" - Dec:0 "Dec" - EV_SHE:0 "she" - EV_HE:0 "he" - EV_HER:0 "her" - EV_HIM:0 "him" - EV_HIS:0 "his" - EV_HERS:0 "hers" - EV_HERSELF:0 "herself" - EV_HIMSELF:0 "himself" - HOTJOIN_LABEL:0 "Hotjoin: " - PREPARING_AFTER_HOTJOIN:0 "Preparing game after hotjoin." - HOTJOIN_LOBBY_REENTER:0 "Lobby reopened due to hotjoining players." - GAME_RESUME_IN:0 "Game will resume in $VALUE$ seconds." - SERVER_HOTJOIN:0 "server due to hotjoin." - WAITING_FOR_HOTJOINING_PLAYER:0 "Waiting for hotjoining player..." - PLAYER_ENTERING_GAME:0 "Hotjoining player is now entering the game." - COOP_NOT_ALLOWED:0 "§RCo-op not allowed.§!" - LAG_BEHIND_HEADER:0 "$NAME$ is lagging behind!" - LAG_BEHIND_TEXT:0 "The game speed has been lowered to let him/her catch up." - MP_NOT_IN_SYNC:0 "$PLAYER|H$ is not in sync, please ask them to reconnect!" - MENU_BAR_LOCALGAMES:0 "Local" - MENU_BAR_CLOUDGAMES:0 "Cloud" - CONFIRMDELETETITLE:0 "Delete file" - CONFIRMDELETETEXT:1 "Are you sure you want to §RDISBAND§! $NAME$?" - CONFIRMDELETETEXT_NAVY:0 "Are you sure you want to §RDESTROY§! $NAME$?" - CONFIRMDELETETEXT_RETURNDESC:2 "The used equipment will be returned to storage and the §Yunits§! will go back to the §Ymanpower pool§!. Any §Yexpeditionary forces§! will be sent home." - CONFIRMDELETETEXT_NAVYDESC:0 "The ships will be §RDESTROYED§! and the §Yunits§! will go back to the §Ymanpower pool§!." - CONFIRMDELETEUNIT:0 "Disband unit" - CONFIRMDELETEUNITS:0 "Disband units" - CONFIRMDELETE_TASK_FORCE:0 "Delete task force" - CONFIRMDELETE_TASK_FORCES:0 "Delete task forces" - CONFIRMDELETESHIP:0 "Delete ship" - CONFIRM_DELETE_ALL_ORDERS:0 "Delete all orders" - CONFIRM_DELETE_ALL_ORDERS_TEXT:1 "Are you sure you want to §RDELETE ALL ORDERS§! from this Army?" - CONFIRM_DELETE_ALL_AG_ORDERS_TEXT:1 "Are you sure you want to §RDELETE ALL ORDERS§! from this Army Group?" - CONFIRM_DELETE_ORDER:0 "Delete order" - CONFIRM_DELETE_ORDER_TEXT:0 "Are you sure you want to §RDELETE§! $ORDER$ order?" - CONFIRM_DELETE_ORDER_INVASION:0 "currently painted §YInvasion§!" - CONFIRM_DELETE_ORDER_PARADROP:0 "currently painted §YParadrop§!" - CONFIRM_DELETE_ORDER_AREA_DEFENSE:1 "currently painted §YArea Defense Order§!" - CONFIRM_DIALOG_MULTI_UNITS:1 "$NUM|Y$ units" - CONFIRM_DIALOG_MULTI_TASK_FORCES:0 "$NUM|Y$ task forces" - CONFIRMDELETE_RAILWAY_GUN:0 "Delete railway gun" - CONFIRMDELETE_RAILWAY_GUNS:0 "Delete railway guns" - CONFIRMUNASSIGN_RAILWAY_GUN:0 "Unassign selected railway guns from assigned armies" - CONFIRM_DIALOG_MULTI_RAILWAY_GUNS:0 "$NUM|Y$ railway guns" - CONFIRMDELETETEXT_RAILWAY_GUNS:0 "Are you sure you want to §RDESTROY§! $NAME$?" - CONFIRMDELETETEXT_RAILWAY_GUNS_TEXT:0 "The railway guns will be §RDESTROYED§! and the §Yunits§! will go back to the §Ymanpower pool§!." - CONFIRMDELETETEXT_RAILWAY_GUNS_ENCIRCLED_SINGLE:0 "§RThe unit is encircled, you will lose all of its equipment and $VALUE|%0$ of its manpower!§!" - CONFIRMDELETETEXT_RAILWAY_GUNS_ENCIRCLED_MULTI:0 "§R$NUM$ units are encircled, you will lose all of their equipment and $VALUE|%0$ of their manpower!§!" - CONFIRM_DELETE_OVERSEAS_SINGLE:0 "§RThe unit is not located in home theater, you will lose $VALUE|%0$ of its equipment!§!" - CONFIRM_DELETE_OVERSEAS_MULTI:0 "§R$NUM$ units are not located in home theater, you will lose $VALUE|%0$ of their equipment!§!" - CONFIRM_DELETE_ENCIRCLED_SINGLE:0 "§RThe unit is encircled, you will lose all of its equipment and $VALUE|%0$ of its manpower!§!" - CONFIRM_DELETE_ENCIRCLED_MULTI:0 "§R$NUM$ units are encircled, you will lose all of their equipment and $VALUE|%0$ of their manpower!§!" - CONFIRM_REFUND_OPERATION:0 "Refund $OPERATION|H$" - CONFIRM_REFUND_OPERATION_DESC:0 "The preparations for this operation will be cancelled and any equipment that has been invested into the operation will be returned to our stockpile." - EXPEDITIONARIES_CHAGE_TEMPLATE:0 "§RExpeditionary forces cannot switch templates§!" - SPECIAL_UNIT_CHAGE_TEMPLATE:0 "§RUnits cannot change templates§!" - CHANGE_TEMPLATE_DISABLED_BORDERWAR:0 "§RUnits in a border conflict cannot change templates§!" - CHANGE_TEMPLATE_DISABLED_SCRIPT:0 "§RThis template is locked and cannot be changed§!" - CHANGE_TEMPLATE_DISABLED_FAKE_UNITS:0 "§RSome of the units are fake intel units and template cannot be changed§!" - CHANGE_TEMPLATE_DISABLED_ENCIRCLED:0 "§RSome units are encircled and cut off from supply and can not have their template changed§!" - SPECIAL_UNIT_CANNOT_BE_DISBANDED:0 "§RUnits cannot be disbanded§!" - CONFIRMUNASSIGNUNIT:0 "Unassign unit" - CONFIRMUNASSIGNUNITS:1 "Unassign all selected units from this army" - CONFIRMASSIGNUNITS:0 "Reassign Units" - CONFIRMASSIGNUNITS_DISBAND_ARMY_DESC:0 "After the unit assignment $TO_REMOVE|R$ will be §Rdisbanded§!." - CONFIRMASSIGNUNITS_DISBAND_ORDER_DESC:1 "After the unit assignment §HArea Defense Orders§! of $TO_REMOVE|R$ will be §Rdeleted§!." - CONFIRMASSIGNUNITS_CONFIRM_DESC:0 "Are you sure you want to §HREASSIGN§! all units to $ARMY|H$?" - CAN_NOT_UNASSIGN_BORDER_WAR:0 "§RCannot unassign units from the Border War!§!" - OPERATION_SELECT:0 "§GClick to select§!" - OPERATION_DESELECT:0 "§GClick to deselect§!" - CONFIRMUNASSIGNTEXT:0 "Are you sure you want to UNASSIGN $NAME|H$?" - CONFIRDISBANDGROUPTEXT:2 "All §GArmies§! that won't have any §YDivisions§! will be automatically §RRemoved§! and all orders will be §RLost§!!" - REASSIGN_FULL_ORDERS_GROUP_HEADER:1 "Reassign Armies" - REASSIGN_FULL_ORDERS_GROUP_TEXT:2 "All §YArmies§! that won't have any §YDivisions§! will be automaticly §RRemoved§! and all orders will be §RLost§!!\n\nAre you sure you want to §YREASSIGN§! all units to other §YArmy§!?" - REASSIGN_ALL_SHIPS_HEADER:0 "Reassign Taskforces" - REASSIGN_ALL_SHIPS_TEXT:0 "Are you sure you want to assign all ships of $TASKFORCES|H$ to $PARENT|H$ and §RDisband§! empty taskforces?" - REASSIGN_ALL_TASKFORCES_HEADER:0 "Reassign Fleets" - REASSIGN_ALL_TASKFORCES_TEXT:0 "Are you sure you want to assign all taskforces of $FLEETS|H$ to $PARENT|H$ and §RDisband§! empty fleets?" - CONFIRMDELETE_ORDERS_GROUP_HEADER:1 "Remove Army" - CONFIRMDELETE_ORDERS_GROUP_TEXT:1 "All units from this Army will become unassigned, and all painted orders will be deleted.\nAre you sure you want to §RRemove§! the §RArmy§!?" - CONFIRMDELETE_ARMY_GROUP_HEADER:0 "Remove Army Group" - CONFIRMDELETE_ARMY_GROUP_TEXT:0 "All units belonging to sub-armies will be unassigned and all painted orders will be deleted.\nAre you sure you want to §RRemove§! the §RArmy Group§!?" - CONFIRMCHANGE_GROUP_LEADER:0 "Reassign the Commander" - CONFIRMCHANGE_GROUP_LEADER_TEXT:1 "$NAME|H$ is already assigned to another §GArmy§! and will be reassigned.\nAre you sure you want to §RReassign§! the §GCommander§!?" - CONFIRMCHANGE_GROUP_LEADER_IN_TRANSFER_TEXT:1 "$NAME|H$ is already assigned to another §GArmy§! that has been sent as a §Yvolunteers§!.\nAre you sure you want to §RReassign§! the §GCommander§!?" - CONFIRMCHANGE_NAVY_LEADER:0 "Reassign the Commander" - CONFIRMCHANGE_NAVY_LEADER_TEXT:0 "$NAME|H$ is already assigned to another §GFleet§! and will be reassigned.\nAre you sure you want to §RReassign§! the §GCommander§!?" - CONFIRMCHANGE_UNIT_TEMPLATE:1 "Change Divison Template" - CONFIRMCHANGE_UNIT_TEMPLATE_SINGLE:1 "Are you sure you want to §YCHANGE§! the §YDivision Template§! to $TEMPLATE|H$ for this §YUnit§!? It may take a while for the new equipment to arrive." - CONFIRMCHANGE_UNIT_TEMPLATE_MULTI:1 "Are you sure you want to §YCHANGE§! the §YDivision Template§! to $TEMPLATE|H$ for these $COUNT|Y$ §YUnits§!? It may take a while for the new equipment to arrive." - CONFIRMCHANGE_UNIT_TEMPLATE_EQUIPMENT_NEEDED_ENOUGHT:1 "$AMOUNT|0H$ $EQUIPMENT$ (§G$STOCK|0*$ available§!)" - CONFIRMCHANGE_UNIT_TEMPLATE_EQUIPMENT_NEEDED_NOT_ENOUGHT:1 "$AMOUNT|0H$ $EQUIPMENT$ (§R$STOCK|*0$ available§!)" - CONFIRMCHANGE_UNIT_TEMPLATE_GAIN:0 "$AMOUNT|0H$ $EQUIPMENT$" - CONFIRMCHANGE_UNIT_TEMPLATE_EQUIPMENT_NOT_NEEDED:0 "No additional equipment needed." - CONFIRMCHANGE_UNIT_TEMPLATE_EQUIPMENT_NEEDED_TITLE:1 "We need:" - CONFIRMCHANGE_UNIT_TEMPLATE_EQUIPMENT_GAIN_TITLE:0 "Will gain:" - MENU_BAR_DISK_QUOTA:0 "$AVAIL$ free of $TOTAL$" - FE_CONTENT:0 "Content" - DLC_NEWITEMINSTALLED_TITLE:0 "New item installed" - DLC_NEWITEMINSTALLED_DESC:0 "$NAME$ has been installed, you should restart EU4." - DLC_AVAILABLE_TITLE:0 "Available content" - DLC_AVAILABLE_DESC:0 "There is $NUM|H$ available DLCs awaiting your attention." - CONTENTVIEW_HEADER:0 "Installed Content" - CONTENTVIEW_ACTIVE:0 "Active" - CONTENTVIEW_INACTIVE:0 "Inactive" - CONTENTVIEW_BROWSE:0 "Browse" - CONTENTVIEW_DLC:0 "DLC" - CONTENTVIEW_MOD:0 "Mod" - MUSIC_CUR_PLAYING:0 "Music currently playing: '$MUSIC|Y$'." - MUSIC_NO_CUR_PLAYING:0 "No music playing at the moment." - GAME_BOOT_IN:0 "Game will boot up in $MIN$ minutes." - GAME_START_IN:0 "Game will start in $MIN$ minutes." - GAME_ENDS_IN:0 "Game will end in $MIN$ minutes." - GAME_START_WHEN_ALL_READY:0 "Game will start as soon as all players are ready." - COUNTRY_LOCKED_BY_SERVER:0 "$COUNTRY$ is locked by the server." - FE_IRONMAN:0 "Ironman mode" - FE_IRONMAN_TOOLTIP:0 "In Ironman mode, console cheats are disabled and the game is automatically saved regularly to a single file. In games played with this setting, there is no turning back." - FE_HISTORICAL:0 "Historical AI Focuses" - FE_HISTORICAL_TOOLTIP:0 "AI countries will, where applicable, pick §HNational Focuses§! in a historical order. Select this if you want other countries to follow their historical paths more closely." - IRONMAN_START:0 "Start Ironman" - SUB_UNIT_RANGED_VALUE:0 "$MIN$ - $MAX$ $SUBUNIT$" - SUB_UNIT_ACCURAT_VALUE:0 "$VALUE$ $SUBUNIT$" - UNKNOWN_ARMY_DESC:0 "Insufficient Intel to provide Unit details" - KNOWN_ARMY_DESC:0 "Intel on $KNOWN|H$ units" - UNKNOWN_NAVY_DESC:0 "Insufficient Intel to provide Fleet details" - ADDITIONAL_UNKNOWN_NAVY_DESC:0 "Unknown Fleets present" - UNKNOWN_RAILWAY_GUN_DESC:0 "Insufficient Intel to provide Railway gun details" - KNOWN_RAILWAY_GUN_DESC:0 "Intel on $KNOWN|H$ Railway guns" - KNOWN_SHIPS:0 "Known ships:" - DIVISION_TEMPLATE_HEADER:0 "$AMOUNT|H$ of $TEMPLATE|H$ ($COUNTRY|H$)" - DIVISION_TEMPLATE_HEADER_FRIEND:0 "$AMOUNT|H$ of $TEMPLATE|H$ ($COUNTRY|G$)" - DIVISION_TEMPLATE_HEADER_HOSTILE:0 "$AMOUNT|H$ of $TEMPLATE|H$ ($COUNTRY|R$)" - DIVISION_TEMPLATE_HEADER_NEUTRAL:0 "$AMOUNT|H$ of $TEMPLATE|H$ ($COUNTRY$)" - RAILWAY_GUN_HEADER_SINGLE:0 "$NAME|Y$ ($COUNTRY|H$)" - RAILWAY_GUN_HEADER_MULTIPLE:0 "$COUNT|Y$ Railway Guns ($COUNTRY|H$)" - RAILWAY_GUN_NAME_PATTERN:0 "$VARIANT$ $NR$" - PLAYER_AI_PREFS_DISABLED:0 "Option allowed only in multiplayer session." - PLAYER_AI_PREFS_HEADER:0 "AI settings" - PLAYER_AI_PREFS_DESC:0 "In this window you can toggle the AI behavior of your country when you leave the multiplayer session.\nThe settings are stored in the save file, so if the other players continue the game without you, the AI will control your country according to these settings." - PLAYER_AI_PREFS_OPTION1_TITLE:0 "Start Wars" - PLAYER_AI_PREFS_OPTION2_TITLE:0 "Keep Alliances" - PLAYER_AI_PREFS_OPTION3_TITLE:0 "Seek Fast Peace" - PLAYER_AI_PREFS_OPTION4_TITLE:0 "Move Merchants" - PLAYER_AI_PREFS_OPTION1_DESC:0 "Controls if the AI may start wars" - PLAYER_AI_PREFS_OPTION2_DESC:0 "Controls if the AI will keep your current alliances and honor Call to Arms requests" - PLAYER_AI_PREFS_OPTION3_DESC:0 "Controls if the AI will try to make peace as soon as possible in wars" - PLAYER_AI_PREFS_OPTION4_DESC:0 "Controls if the AI may move Merchants to other Nodes" - PLAYER_AI_PREFS_TIMEOUT_TITLE:0 "Timeout date: $DATE$" - PLAYER_AI_PREFS_TIMEOUT_DESC:0 "Timeout desc" - PLAYER_AI_PREFS_TIMEOUT_NEVER:0 "Never" - DEFAULT:0 "Default" - DELETE_TASK_FORCE:0 "§RDelete Task Force§!" - DELETE_SHIP:0 "§RDelete Ship§!" - DELETE_RAILWAY_GUN:0 "§RDelete Railway Gun§!" - ACHIEVEMENTS_DISABLED_MODIFIED_SAVE:0 "§YSave game belongs to another user or is edited. Achievements will be disabled.§!" - ACHIEVEMENTS_DISABLED_MODIFIED_GAME:0 "§YEU4 is running a mod or is altered in other means. Achievements will be disabled.§!" - ACHIEVEMENTS_DISABLED_WRONG_PLAYER:0 "§YThis game is meant to be played as $COUNTRY$. Achievements will be disabled.§!" - ACHIEVEMENTS_ENABLED:0 "Achievements enabled." - SAVEITEM_PLAYER_COUNTRY:0 "Player: $COUNTRY$" - SAVEITEM_DATE:0 "Date:$DATE_WITH_INTRO_SPACE$" - SAVEITEM_IRONMAN:0 "Ironman: $YESNO$" - SAVEITEM_SYNCED:0 "Cloud synced: $YESNO$" - SAVEITEM_MULTIPLAYER:0 "Multiplayer: $YESNO$" - SAVEITEM_DIFFICULTY:0 "Difficulty: $DIFFICULTY$" - SAVEITEM_FILESIZE:0 "File size: $SIZE$" - SAVEITEM_SIZE_VALUE:0 "$VALUE|1Y$ $POSTFIX|Y$" - SAVEITEM_DELETE_FILE:0 "§GRight-click to Delete.§!" - AUTOSAVE_TOCLOUD:0 "Autosave to cloud" - LOADING_SAVEGAME:0 "Loading savegame: $NAME$" - LOADING_SAVEGAME_NO_NAME:0 "Loading savegame" - LOADING_DATABASES:0 "Loading databases" - LOADING_MAP_SPRITES:0 "Loading sprites" - OLD_SAVEGAME:0 "§RThis save is from another version of the game and cannot be loaded.§!" - OLD_SAVEGAME_POPUP:0 "This save is from another version of the game and cannot be loaded." - OLD_SAVEGAME_ALLOWED:0 "§RThis save is from another version of the game and may behave unpredictably when loaded.§!" - CANTCONTINUEGAME:0 "Can't continue game from the last save $SAVE$" - CANTCONTINUEGAME_TITLE:0 "Failed to load save" - CONFIRMUNSYNCTITLE:0 "Unsynchronize file" - CONFIRMUNSYNCTEXT:0 "Are you sure you want to remove $NAME|H$ from cloud?" - CLOUDSAVE_SPACE_NEEED:0 "$NEEDED$ needed to save the game." - CLOUDSAVE_UNSYNC_LABEL:0 "Select game(s) to remove from cloud.\nFile(s) will not be removed from local computer." - CONTENTVIEW_PUBLISH:0 "Publish" - CONTENTVIEW_PUBLISH_HEADER:0 "Publish to Steam workshop" - CONTENTVIEW_PUBLISH_TITLE_LABEL:0 "Title:" - CONTENTVIEW_PUBLISH_DESC_LABEL:0 "Description:" - CONTENTVIEW_UPDATE:0 "Update" - CONTENTVIEW_MANAGE:0 "Manage" - CONTENTVIEW_TERMS:0 "By submitting this item, you agree to the workshop terms of service." - FE_IRONMAN_MULTIPLAYER:0 "Ironman is not available in multiplayer." - FE_IRONMAN_NOCLOUD:0 "Ironman needs Steam Cloud enabled and user to be logged on to Steam." - MAP_SAVED:0 "Map saved!" - SCREENSHOT_TAKEN:0 "Screenshot taken!" - AUTOSAVING:0 "Autosaving..." - AUTOSAVING_OOS_DUMP:0 "Autosaving Out-of-Sync Dump...\n$DUMP_NAME$" - CONFIRMLOADSAVETITLE:0 "Load Game" - CONFIRMLOADSAVETEXT:0 "Are you sure you wish to load save game $NAME$ and abort your current game?" - CANT_BUILD_UNDER_SIEGE:0 "Can't build in a province under siege." - LOAD_GFX_PDXMAP_SHADERS:0 "Loading Map(Creating Shaders)..." - LOAD_GFX_PDXMAP_TERRAIN:0 "Loading Map(Creating Terrain)..." - LOAD_GFX_PDXMAP_BORDERS:0 "Loading Map(Creating Borders)..." - LOAD_GFX_PDXMAP_TEXTURES:0 "Loading Map(Creating Textures)..." - LOAD_GFX_PDXMAP_TREES:0 "Loading Map(Creating Trees)..." - LOAD_GFX_PDXMAP_RIVERS:0 "Loading Map(Creating Rivers)..." - LOAD_GFX_PDXMAP_STATIC_OBJECTS:0 "Loading Map(Creating objects)..." - LOAD_INIT:0 "Initializing Game..." - LOAD_EVENTS:0 "Loading Events" - weather_none:0 "Clear" - weather_mud:0 "Mud" - flooded:0 "Flooded" - unplanned_offensive:0 "Unplanned Offensive" - weather_rain_light:0 "Rain" - rain_light_icon:0 "GFX_modifiers_weather_icons:1" - weather_rain_heavy:0 "Storm" - rain_heavy_icon:0 "GFX_modifiers_weather_icons:2" - weather_snow:0 "Snowing" - snow_icon:0 "GFX_modifiers_weather_icons:3" - weather_blizzard:0 "Blizzard" - blizzard_icon:0 "GFX_modifiers_weather_icons:4" - weather_sandstorm:0 "Sandstorm" - sandstorm_icon:0 "GFX_modifiers_weather_icons:5" - weather_arctic_water:0 "Arctic Water" - arctic_water_icon:0 "GFX_modifiers_weather_icons:7" - water_shallow_sea_icon:0 "GFX_modifiers_terrain_icons:1" - water_deep_ocean_icon:0 "GFX_modifiers_terrain_icons:2" - water_fjords_icon:0 "GFX_modifiers_terrain_icons:3" - weather_extreme_cold:0 "Extremely cold" - weather_very_cold:0 "Very cold" - weather_very_hot:0 "Very hot" - weather_extreme_hot:0 "Extremely hot" - weather_ground_snow_medium:0 "Snow" - weather_ground_snow_high:0 "Deep snow" - water_modifier_shark_infested_name:0 "Shark Infested Waters" - water_modifier_shark_infested_icon:0 "GFX_modifiers_weather_icons:6" - resistance_effect:0 "§HLocal resistance§!" - WEATHER_LEVEL_OF_RAINFALL:1 "$VAL|H$ cm of §Hrain§!" - WEATHER_LEVEL_OF_SNOWFALL:1 "$VAL|H$ cm of §Hsnow§!" - weather_period_duration:0 "Earliest weather change on $VAL|H$" - TECH_RESEARCH_TIME_LABEL:0 "Research time: $WEEKS|H$ week(s)" - THEATRE_NAME:0 "$THEATRE|H$ Theater" - MP_PAUSE_TOOLTIP:0 "$WHO|H$ paused the game. The game will be paused for another $SEC|0Y$ seconds unless $WHO|Y$ or the host unpauses." - CORE_PAUSE:0 "Click to pause the game" - CORE_UNPAUSE:0 "Click to unpause the game" - CORE_PAUSED:0 "Paused" - CORE_UNPAUSED:0 "Unpaused" - SPEED_INCREASE:0 "§TIncrease speed§!" - SPEED_DECREASE:0 "§TDecrease speed§!" - FE_SINGLE_PLAYER:0 "Single Player" - FE_MULTI_PLAYER:0 "Multiplayer" - FE_TUTORIAL:0 "Tutorial" - FE_CREDITS:0 "Credits" - FE_EXIT:0 "Quit" - OPTIONS:0 "Options" - MENU_BAR_LOAD_GAME:0 "Load Game" - MENU_BAR_LOAD:0 "Load" - MENU_BAR_QUIT:0 "Exit Game" - MENU_BAR_SAVE_GAME:0 "Save Game" - MENU_BAR_GAME_OPTIONS:0 "Game Options" - MENU_BAR_GAME_WIKI:0 "Hearts of Iron Wiki" - MENU_BAR_GAME_RESIGN:0 "Exit to Menu" - MENU_BAR_MESSAGE_SETTINGS:0 "Messages" - MENU_BAR_CLOSE:0 "Close" - MENU_BAR_SAVE:0 "Save" - MENU_BAR_SAVE_GAME_FILENAME:0 "Saved game filename:" - MENU_BAR_SAVED_GAME_RULES_FILENAME:0 "Saved game rules filename:" - MENU_BAR_SAVE_PLAY:0 "Save & Play" - MENU_BAR_IRONMAN_SAVE:0 "Ironman Save Game" - MENU_BAR_IRONMAN_PLAIN:0 "Ironman" - MENU_ACHIEVEMENTS:0 "Hearts of Iron IV Achievements" - MENU_HOMEPAGE:0 "Hearts of Iron IV Homepage" - MENU_FORUM:0 "Hearts of Iron IV Forum" - MENU_FACEBOOK:0 "Hearts of Iron IV Facebook" - MENU_TWITTER:0 "Hearts of Iron IV Twitter" - MENU_PRIVACY_POLICY:0 "Privacy Policy" - MAIN_MENU:0 "Main menu" - MAIN_MENU_BACK:0 "Back to Menu" - HELP_MENU:0 "Help" - ACHIEVEMENTS_VIEW:1 "View Achievements" - ACHIEVEMENTS_VIEW_LOCKED:1 "§RAchievements are not available§!" - ACHIEVEMENT_UNLOCKED_WHEN:0 "Will be earned when:" - ACHIEVEMENT_AVAILABLE:0 "Available" - ACHIEVEMENT_COMPLETED:0 "Completed" - ACHIEVEMENT_NOT_AVAILABLE:0 "Not Available" - DISMISSED_ALERTS_MENU:0 "§HDismissed alerts§!" - DISMISSED_ALERTS_NONE:0 "There are no dismissed active alerts" - DISMISSED_ALERTS_DESC_HEADER:0 "These alerts will be added:" - ENDGAME_CONTINUE:0 "Continue Game, no further score will be recorded from this point onward" - ENDGAME_SORT_NAME:0 "Sort by Name" - ENDGAME_SORT_FACTION:0 "Sort by Faction" - ENDGAME_SORT_SCORE:0 "Sort by Total Score" - ENDGAME_SORT_ARMY:0 "Sort by Army Score" - ENDGAME_SORT_NAVY:0 "Sort by Navy Score" - ENDGAME_SORT_AIR:0 "Sort by Air Score" - ENDGAME_SORT_INDUSTRY:0 "Sort by Industry Score" - ENDGAME_SORT_PROVINCE:0 "Sort by Land Score" - SCORE:0 "Score" - SCORE_CALC_TOTAL:0 "Army Score: $ARMY$\nNavy Score: $NAVY$\nAir Score: $AIR$" - SCORE_CALC_ARMY:0 "Number of Divisions: $ARMIES$" - SCORE_CALC_NAVY:0 "Number of Fleets: $NAVIES$" - SCORE_CALC_AIR:0 "Total Air superiority: $AIR_SUP$" - SCORE_CALC_INDUSTRY:0 "Number of Civilian Factories: $NUM_CIV$\nNumber of Military Factories: $NUM_MIL$\nNumber of Naval Dockyards: $NUM_NAVAL$" - SCORE_CALC_LAND:0 "Number of Controlled Provinces: $NUM_PROV$" - SCORE_CALC_SCORE_MULT:0 "\nx $MULT$ Score Multiplier" - CLOSE:0 "Close" - CLOSE_TOOLTIP:0 "§TClose§!" - LOAD_GFX:0 "Loading Graphics" - LOAD_FLAGS:0 "Creating Flags" - PROC_FLAGS:0 "Processing Flags" - FE_CONTINUE:0 "Continue" - FE_NEW:0 "New Game" - BACK:0 "Back" - SELECT:0 "Select" - M_MENU_BUTTON:0 "Main menu" - SHORTCUT:0 "Shortcut: $KEY$" - ADD_NEW_AIRWING:1 "Add new Air Wing" - ADD_NEW_AIRWING_VOLUNTEER_BASE:0 "§RCannot create airwing in the volunteer airbase§!" - CREATING_PROVINCE:0 "Creating Province #" - EXECUTE_HISTORY:0 "Executing history" - CREATING_CHKSUM:0 "Creating checksum" - GENERATING_GRADIENT_BORDERS:0 "Generating Gradient Borders" - PRECALC_NAVAL_DIST:0 "Precalculating Naval Distances" - FREQUENCY_INSTANT:0 "Instant" - FREQUENCY_DAY:0 "day(s)" - FREQUENCY_DAILY:0 "daily" - FREQUENCY_WEEK:0 "week(s)" - FREQUENCY_WEEKLY:0 "weekly" - FREQUENCY_MONTH:0 "§Tmonth(s)§!" - FREQUENCY_MONTHLY:0 "monthly" - FREQUENCY_YEAR:0 "year" - FREQUENCY_YEARLY:0 "yearly" - INIT_MAP_LOGIC:0 "Initializing map logic" - INIT_GAMESTATE:0 "Initializing game" - SUPPLY_CONTROL_EDGE:0 "§YControl of incoming edge provinces§!: $EDGE|0%$" - SUPPLY_SUPPORTED_BASE:0 "Local supply base: $VAL|+=$" - SUPPLY_SUPPORTED_BONUS_INPUT:0 "Neighbor spillover ($SPILL|Y%0$): $VAL|+=$" - SUPPLY_SUPPORTED_NAVAL_ROUTE_PENALTY:0 "Naval route efficiency: $PEN|%R$" - SUPPLY_SUPPORTED_VP:1 "$NAME|H$: $VAL|+=$" - SUPPLY_SUPPORTED_AIR_SUPPLY:0 "Air supply: $VAL|+=$" - AIR_SUPPLY_CHUNK_DESC:0 "This chunk is supported via §YAir Supply§!.\nSupplies dropped: $VAL|+=$" - WING_AIR_SUPPLY_CAPABILITY:0 "Air supply capability: $VAL|+=$" - SUPPLY_SUPPORTED_LOCAL_MODIFIERS:0 "Area modifiers: $MOD|=%+1$" - SUPPLY_SUPPORTED_INFRA:0 "§YInfrastructure§!: $VAL|+=$" - SUPPLY_PENALTY_VALUE:0 "§R($PERC|%0$ of $VAL|Y$ due to split ownership)§!" - SUPPLY_INFO:1 "§YRequired§!: $REQ$\n §YArmy§!: $REQ_ARMY$ ( Our: $REQ_OUR_ARMY|Y$, Allied: $REQ_ALLIED_ARMY|Y$ )\n §YNavy§!: $REQ_NAVY$\n §YAir§!: $REQ_AIR$\n\n§YSupported§!: $SUP$" - SUPPLY_INFO_FOREIGN:0 "§YSupported§!: $SUP$" - SUPPLY_INCOMING_INFRA_LIMIT:1 "§RLocal Infrastructure: $VAL$§!" - SUPPLY_INCOMING_FROM_PREV_INFRA:0 "§R $PREV_BONUS|0%$ of Previous Infrastructure: $PREV$§!" - SUPPLY_INCOMING_PORT_LIMIT:0 "§RLocal Naval Base(s) limits to: $VAL$§!" - SUPPLY_SUPPORTED_CAP:0 "Previous bottleneck$WHERE$: $CAP|R$" - SUPPLY_SUPPORTED_CAP_BOTTLENECK_PORT:0 " (Ports in $WHERE|R$)" - SUPPLY_SUPPORTED_CAP_BOTTLENECK_INFRA:0 " (Infrastructure in $WHERE|R$)" - SUPPLY_LOCAL_TITLE:0 "§HLocal§!: $VAL|+=$" - SUPPLY_INCOMING_TITLE:0 "§HIncoming§!: $VAL|+=$" - NAVAL_MISSION_ACTIVATE:0 "Activate" - NAVAL_MISSION_NAME_NONE:0 "Awaiting Orders" - NAVAL_MISSION_NAME_PATROL:0 "Patrol" - NAVAL_MISSION_NAME_PATROL_DESC:2 "Order the task force to patrol the fleet's area of operation.\n\nA task force can only patrol one region at a time.\nIt will attempt to spot enemy fleets in its active region. Radar and Air Superiority will help it spot the enemy faster.\n\nNote that the enemy can spot and engage you before you spot them." - NAVAL_MISSION_NAME_SEARCH_AND_DESTROY:0 "Search and Destroy" - NAVAL_MISSION_NAME_STRIKE_FORCE:0 "Strike Force" - NAVAL_MISSION_NAME_STRIKE_FORCE_DESC:3 "Order the task force to wait at the closest naval base until an enemy task force is spotted.\nOnce an enemy is spotted by one of your patrol task forces, your strike force will move to intercept it." - NAVAL_MISSION_NAME_SEARCH_AND_DESTROY_DESC:1 "Order the task force to actively seek out and engage enemy fleets in the selected region(s)." - NAVAL_MISSION_NAME_CONVOY_RAIDING:0 "Convoy Raiding" - NAVAL_MISSION_NAME_CONVOY_RAIDING_DESC:1 "Order the task force to raid enemy convoys in the selected region(s)." - NAVAL_MISSION_NAME_CONVOY_ESCORT:0 "Convoy Escort" - NAVAL_MISSION_NAME_CONVOY_ESCORT_DESC:1 "Order the task force to escort convoys in selected region(s) and protect them against enemy raids." - NAVAL_MISSION_NAME_INVASION:0 "Transport/Invasion" - NAVAL_MISSION_NAME_INVASION_DESC:1 "Order a task force to actively support troop transport and invasions in the selected §YInvasion orders§!.\n§GClick§! to enable this mission, then §GClick§! on the invasion arrow if you have drawn one." - NAVAL_MISSION_NAME_MINES_PLANTING:0 "Minelaying" - NAVAL_MISSION_NAME_MINES_PLANTING_DESC:2 "Order a task force to lay the sea mines in the selected regions. The highest potential penalty for your enemies is:\n" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SHORE_BOMBARDMENT:0 "£mapicon_unit_invalid_orders£ Low Shore Bombardment capabilities" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SHORE_BOMBARDMENT_DESC:0 "The task force will be unable to efficiently help divisions on the shore line in combat due to its low Shore Bombardment capabilities. Consider adding ships with §YHeavy Gun Attack§! to the task force." - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_DEPTH_CHARGES:0 "£mapicon_unit_invalid_orders£ Low amount of §YDepth Charges§!" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_DEPTH_CHARGES_DESC:0 "The task force will be unlikely to damage submarines. Consider adding ships with more §HDepth Charges§!." - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SUB_SURFACE_DETECTION:0 "£mapicon_unit_invalid_orders£ Low Sub Detection" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SUB_SURFACE_DETECTION_DESC:0 "The task force will be unlikely to detect submarines during combat. Consider adding more ships with §YSonars§!, §YRadars§! or §YAirplane Catapults§!." - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SURFACE_DETECTION:0 "£mapicon_unit_invalid_orders£ Low Surface Detection" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SURFACE_DETECTION_DESC:0 "The task force will be slow at detecting potential enemies. Consider adding more ships with §YRadars§! and §YAirplane Catapults§!." - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SPEED:0 "£mapicon_unit_invalid_orders£ Low Max Speed" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SPEED_DESC:0 "The task force average speed is too low and will hinder its spotting ability. Consider removing slow ships or adding faster ones." - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SURFACE_VISIBILITY:0 "£mapicon_unit_invalid_orders£ High Surface Visibility" - NAVAL_MISSION_MISSED_REQUIREMENT_WARN_SURFACE_VISIBILITY_DESC:0 "The task force is too visible and can be easily spotted and/or avoided by an enemy. Consider using smaller or less armored ships with a lower Surface Visibility." - NAVAL_MISSION_SET_REASON_FOR_PLANTING_NO_SHIPS:0 "Minelaying is §Rnot possible§!, because none of the ships in your fleet has an ability to do it!" - NAVAL_MISSION_SET_REASON_FOR_SWEEPING_NO_SHIPS:0 "Minesweeping is §Rnot possible§!, because none of the ships in your fleet has an ability to do it!" - NAVAL_MISSION_SET_REASON_FOR_NO_WAR:0 "You must be §Rat war§! in order to activate this mission." - NAVAL_MISSION_NAME_MINES_SWEEPING:0 "Minesweeping" - NAVAL_MISSION_NAME_MINES_SWEEPING_DESC:2 "Order a task force to search and neutralize the sea mines in the selected regions. The highest potential penalty that you may suffer from the enemy mines is:\n" - NAVAL_MISSION_NAME_NAVAL_INVASION_SUPPORT:0 "Naval Invasion Support" - NAVAL_MISSION_NAME_NAVAL_INVASION_SUPPORT_DESC:1 "Order ships to escort naval invasions and support them with shore bombardment." - NAVAL_MISSION_NAME_TRAINING:1 "Naval Exercises" - NAVAL_MISSION_NAME_TRAINING_DESC:3 "Order a task force to perform exercises in the region adjacent to the closest naval base.\nThis has a chance to damage ships over time.\nThe crew will not gain experience once they reach the Regular level.\nYou will gain §YNavy Experience§! while training.\nThe §YPride of the Fleet§! is less likely to get into an accident.\n\nHold §HShift§! and click to enable §HNaval Exercises§! until all ships are fully trained." - NAVAL_BTN_REMOVE_REGIONS:0 "§HRemove Region§!\n§GClick§! this button, then click on the region you want to remove for the currently selected fleet.\n§GRight-click§! this button to §Rremove all regions§! for the currently selected fleet." - NAVAL_BTN_REMOVE_REGIONS_NO_REGIONS:0 "§RNo regions to remove.§!" - NAVAL_CONFIRM_REMOVE_ALL_REGIONS:0 "Remove all regions" - NAVAL_CONFIRM_REMOVE_ALL_REGIONS_TEXT:0 "Are you sure you want to §RREMOVE ALL REGIONS§! for this Fleet?" - NAVAL_NO_STRIKE_FORCE_IN_REGION:0 "No strike force operating in the region" - NAVAL_STRIKE_FORCE_STATUS_HEADER:0 "§HStrike Forces status:§!" - NAVAL_STRIKE_FORCE_STATUS_ENTRY:0 " - $NAME|H$: " - NAVAL_STRIKE_FORCE_STATUS_READY:0 "£trigger_yes£ ready to engage" - NAVAL_STRIKE_FORCE_STATUS_ENGAGING:0 "£trigger_yes£ moving to engage" - NAVAL_STRIKE_FORCE_STATUS_ENGAGING_ANOTHER:0 "£trigger_no£ busy engaging another" - NAVAL_STRIKE_FORCE_STATUS_IN_COMBAT:0 "£trigger_no£ already in combat" - NAVAL_STRIKE_FORCE_STATUS_ENEMY_TOO_STRONG:0 "£trigger_no£ target too strong" - NAVAL_STRIKE_FORCE_STATUS_NOT_READY:0 "£trigger_no£ not ready" - NAVAL_STRIKE_FORCE_STATUS_NOT_ENOUGH_INTEL:0 "unknown enemy strength" - NAVAL_STRIKE_FORCE_STATUS_VERY_LIKELY_TO_ENGAGE:0 "very likely to engage" - NAVAL_STRIKE_FORCE_STATUS_LIKELY_TO_ENGAGE:0 "likely to engage" - NAVAL_STRIKE_FORCE_STATUS_UNLIKELY_TO_ENGAGE:0 "unlikely to engage" - NAVAL_STRIKE_FORCE_STATUS_VERY_UNLIKELY_TO_ENGAGE:0 "very unlikely to engage" - NAVAL_STRIKE_FORCE_STATUS_ENGAGEMENT_SETTING_DESC:0 " For Engagement Rule: $SETTING|H$" - NAVAL_MISSION_NAME_RESERVE_FLEET:0 "Reserve" - NAVAL_MISSION_NAME_RESERVE_FLEET_DESC:0 "A reserve fleet will wait in port and will reinforce the other task forces of its theater that have automatic reinforcement enabled." - NAVAL_MISSION_NAME_HOLD:0 "Hold" - NAVAL_MISSION_NAME_HOLD_DESC:3 "§GClick§! or £h \nCancel the current mission and move to the closest port.\n\n§GCtrl+Click§! or £ctrl +£h \nCancel the current mission and stay put.\n--------------\nCapital Ships placed on Hold in a sea province neighboring a land battle will be able to help out with §HShore Bombardment§!.\nCarriers placed on Hold while at sea will be able to use their airwings for standard air missions." - NAVAL_MINES_REDUCTION_EFFECT_FROM_SWEEPING:0 "Our combined minesweeping abilities will reduce effects of enemy mines by $FACTOR|0%$ for this task force." - NAVAL_GUI_BTN_MOVE:0 "§GRight-click§! on the map to §Hmove§! to the province.\nIf the navy has pending mission, it will be temporarily deactivated.\nUnit will proceed when formation is gathered." - NAVAL_GUI_BTN_ACTIVATE:0 "Activate Order" - NAVAL_GUI_BTN_DEACTIVATE:0 "§HDeactivate Order§!" - NAVAL_GUI_BTN_ACTIVATE_DESC:0 "Toggle Order §HActive§! status.\nTo activate it, you must first assign one or more §Yregions§! and at least one §YOrder§!." - NAVAL_GUI_BTN_REGIONS:0 "Click on the map:\n§GRight-click§! to §Yadd§!, or §YSHIFT§!+§GRight-click§! to §Yremove§! regions.\nRegions must be neighboring each other.\n§GRight-click§! on this button to §Rclear all regions§!." - NAVAL_GUI_BTN_MERGE:1 "Merge the selected task forces" - NAVAL_GUI_BTN_NEW_FLEET_FROM_EXISTING:1 "§HCreate a new fleet§!" - NAVAL_GUI_BTN_NEW_FLEET_FROM_EXISTING_DESC:0 "Create a new fleet with ships from this fleet" - NAVY_SELECT_HALF:0 "Halve the current selection of ships" - NAVY_SELECT_HALF_NEED_MORE_THAN_ONE_SHIP:0 "§RRequires at least two selected ships§!" - SHIP_ENGAGEMENT_BUTTON_FIRE_AT_WILL:0 "§HCurrent engagement rule - §RFire at will!§!§!" - SHIP_ENGAGEMENT_BUTTON_FIRE_AT_WILL_DESC:1 "The task force will always engage the enemy. Moving through a province with a spotted enemy or pending battle will make the task force engage." - SHIP_ENGAGEMENT_BUTTON_HOLD_FIRE:0 "§HCurrent engagement rule - §GDo not engage§!§!" - SHIP_ENGAGEMENT_BUTTON_HOLD_FIRE_DESC:1 "The task force will try to avoid engaging the enemy so it can move through provinces with enemy ships and battles.\nUnless... we are spotted and the enemy shoots first." - - SHIP_CURRENT_AGGRESSIVENESS_LEVEL:0 "Current engagement rule: $CURRENT|H$" - SHIP_CLICK_TO_CHANGE_AGGRESSIVENESS_LEVEL:0 "§GClick§! to change to $NEXT|H$" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_1:1 "Do Not Engage" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_2:1 "Engage At Low Risk" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_3:1 "Engage At Medium Risk" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_4:1 "Engage At High Risk" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_5:1 "Always Engage" - - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_1_DESC:1 "The task force will never try to engage with a spotted enemy. §HPatrol ships§! will continue to tail their current target and §HStrike Forces§! will stay at their base." - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_2_DESC:1 "The task force will be cautious about engaging enemies and will only take fights against much smaller forces." - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_3_DESC:1 "The task force will take higher risks while engaging enemies and will take fights against forces that have comparable strength." - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_4_DESC:1 "The task force will take very high risks while engaging enemies and will engage against forces that have the same strength." - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_5_DESC:1 "The task force will always engage spotted enemies." - SHIP_ENGAGEMENT_BUTTON_DISABLED_BECAUSE_DETACHED:0 "§RChanging aggressiveness setting is not possible for a detached task force§!" - SHIP_ENGAGEMENT_BUTTON_AGGRESSIVENESS_GENERAL_DESC:1 "\n--------------\n§GClick§! or §GRight-click§! to toggle between different aggressiveness settings. Higher aggressiveness settings will make your task forces take fights with stronger enemies." - SHIP_ENGAGEMENT_BUTTON_BACK_TO_REPAIR:1 "§HThe task force is on repair task§!" - SHIP_ENGAGEMENT_BUTTON_BACK_TO_REPAIR_DESC:1 "Click to cancel the repair task. The ships will return to their mission." - CURRENT_ASSIGNED_TASK_FORCE_FOR_PATROL:0 "There are $NUM|H$ task forces assigned to patrol the fleet area of operation." - CURRENT_ASSIGNED_TASK_FORCE_FOR_MISSION:0 "There are $NUM|H$ task forces assigned to $MISSION|H$ mission in this region." - CURRENT_ACTIVE_TASK_FORCE_FOR_MISSION:0 "Out of them, $NUM|H$ are currently active in the region." - CURRENT_NO_ACTIVE_TASK_FORCE_FOR_MISSION:0 "But none are currently active in the region." - CURRENT_ALL_ACTIVE_TASK_FORCE_FOR_MISSION:0 "All of them are currently active in the region." - CURRENT_ACTIVE_SHIPS_FOR_NAVAL_INVASION_SUPPORT:1 "In total there are $NUM|H$ task forces on $MISSION_NAME|H$ mission in this region and currently $NUM2|H$ of them are escorting invasion armies and $NUM3|H$ of them are supporting coastal combats." - CURRENT_ACTIVE_TASK_FORCE_FOR_SUPREMACY:0 "But only $NUM|H$ of them are close enough to give §HNaval Supremacy§!." - CURRENT_NO_ACTIVE_TASK_FORCE_FOR_SUPREMACY:0 "But none of them are close enough to give §HNaval Supremacy§!." - CURRENT_ACTIVE_TASK_FORCE_FOR_SUPREMACY_WARNING:1 "§R£mapicon_unit_no_orders Some task forces are too far away from this region to give §HNaval Supremacy§!§!" - SHIP_ENGAGEMENT_BUTTON_GENERAL_DESC:1 "\n--------------\n§GDo not engage§! will work only if:\n - The task force has no orders\n - The task force is patrolling\n§GDo not engage§! will auto-enable if the task force has been defeated and is returning to a naval base to be repaired." - SHIP_ENGAGEMENT_MAP_ICON:1 "The task force engagement rule is: §GDo not engage§! the enemies." - NAVAL_CAN_NOT_MOVE_THERE:0 "§ROur fleet does not have access to this region§!" - SHIP_CANNOT_GOTO_MISSION_AREA:0 "§RThe task force can not reach any of its fleet's selected areas.§!" - NAVAL_INVASION_CLICK_TO_ASSIGN_FLEETS:0 "§GClick§! to assign the fleets to that §YInvasion§!." - NAVAL_INVASION_MOVE_MOUSE_OVER_INVASION:1 "Move the mouse over the §YInvasion§! arrow, and §GClick§! to assign the fleets to it.\nIf you did not painted the invasion order yet, you can do it by selecting the §YArmy§! and use the §GNaval Invasion Order§! tool." - NAVAL_PROV_DESC_ADD_REGION:0 "§GRight-click§! to §Yadd§! region." - NAVAL_PROV_DESC_RIGHT_CLICK_TO_MOVE:0 "§GRight-click§! to move to location." - NAVAL_PROV_DESC_REMOVE_REGION:0 "§GShift+Right-click§! to §Yremove§! region." - NAVAL_PROV_DESC_REMOVE_REGION_CLICK:0 "§GClick§! to §Yremove§! region." - NAVAL_PROV_DESC_HOLD_AND_GO_TO:0 "§GCtrl+Right-click§! to cancel mission, and move to location." - NAVAL_PROV_DESC_NO_MISSIONS:0 "\n§HThere is no missions set in this region.§!" - NAVAL_PROV_DESC_MISSION_ENTRY:0 "§G$UNIT$§! - $STATUS$" - NAVAL_PROV_DESC_FORMATION_SPREAD:0 "$SPR|%$" - NAVAL_FORMATION_SPREAD_TITLE:0 "§HFormation Spread§!\n" - NAVAL_EXCORT_FORMATION_SPREAD_TITLE:0 "§HEscort formation spread§!\n" - NAVAL_FORMATION_SPREAD_DESC:0 "How spread out this fleet is. A more spread out fleet will cover more area which helps to locate the enemy, but will take time to assemble for a larger battle when required. Spread is mainly affected by what mission you have selected." - NAVAL_MISSIONS_LOCAL_HEADER:0 "§HNaval missions:§!" - NAVAL_MISSION_THIS_IS_LAND_REGION:0 "There is no sea provinces in this region." - HOME_BASE_TITLE:1 "§HHome Base§!" - HOME_BASE_DESC:0 "The base this fleet is carrying out missions from.\n§YCTRL§!+§GRight-click§! a naval base to move and set a new §Ghome base§!." - NAVAL_PROV_DESC_MOVE_TO:0 "§GRight-click§! to §Ymove§! to province." - NAVAL_PROV_DESC_REBASE_TO:0 "§YCTRL§!+§GRight-click§! to set as §Ghome base§!" - NAVAL_PROV_DESC_MOVE_TO_DEACTIVATE:0 "§R(Current mission will be deactivated)§!" - NAVAL_PROV_DESC_MOVE_TO_MAX_REGIONS_ALL:0 "§RMaximum mission region count reached for all selected units§!" - NAVAL_PROV_DESC_MOVE_TO_MAX_REGIONS_INDIVIDUAL:0 "§RUnits that reached their maximum mission region count already:§!" - NAVAL_PROV_DESC_MOVE_TO_MAX_REGIONS_ITEM:0 "$NAME|R$" - FLEET_ACTIVE_IN_REGION:0 "Active in Regions: $NUM$" - ALL_TASKFORCES_SELECTED:0 "Missions - All Taskforces" - MULTIPLE_TASKFORCES_SELECTED:0 "Missions - Multiple Taskforces" - ONE_TASKFORCE_SELECTED:0 "Missions - $TASKFORCE$" - NAVAL_PROV_DESC_MOVE_TO_COASTAL_WARNING:1 "§HHint:§! §gNon-moving fleets on hold in coastal areas can block straits, but they can be spotted by divisions. Does not apply to fleets containing only submarines.§!" - NAVAL_BASE_TOOLTIP_GOTO_NAVALBASE:0 "§GRight-click§! to move to that naval base." - NAVAL_BASE_TOOLTIP_HOLD_AND_GOTO_NAVALBASE:0 "§GControl + Right-click§! to cancel mission, and move to that naval base." - NAVAL_BASE_TOOLTIP_SET_MAINBASE:1 "§GControl + Right-click§! to set as §Ghome base§!.\n" - NAVAL_BASE_TOOLTIP_SELECTION_INFO:1 "§GClick§! to select taskforces that are based or assigned for repairs in this naval base.\n§GControl + Click§! to toggle repair state.\n§GShift + Click§! to show repair queue." - NAVAL_BASE_NAVY_LIST_HEADER:0 "Fleets stationed in this base:" - NAVAL_BASE_NAVY_ENTRY:0 "$NAME|Y$ ($COUNTRY|Y$)" - NAVY_HOME_BASE:0 "$NAME$ (Lv:$LVL|Y$)" - FLEET_NAME:0 "$COUNTRY$ Fleet $NUMBER$" - FLEET_NAME_USA:0 "USS Navy Group $NUMBER$" - FLEET_NAME_GER:0 "$COUNTRY$ Flotta $NUMBER$" - FLEET_NAME_SOV:0 "$NUMBER$-ja Sovetskaja Flotilija" - RESERVE_FLEET_NAME:0 "$COUNTRY$ Reserve fleet $NUMBER$" - TASK_FORCE_NAME:0 "$COUNTRY$ Task force $NUMBER$" - COMPACT_SHIP_VIEW_DESC:0 "$NUM|Y$ Ships of type $TYPE|Y$." - COMPACT_SHIP_VIEW_DESC_REQ:0 "$NUM|Y$ Required and automatically reinforced." - CHANGE_NAVAL_MODE:0 "Toggle Control Mode" - CHANGE_NAVAL_MODE_DESC:0 "Toggle mode between direct movement control and giving missions in areas" - CREATE_NEW_FLEET:0 "Create New Fleet" - CREATE_NEW_FLEET_DISABLED:0 "To create a new fleet you need at least two ships in one fleet." - CREATE_NEW_FLEET_DISABLED_IN_COMBAT:0 "To create new fleet should not be in combat." - CREATE_NEW_FLEET_DESC:0 "Create a new empty fleet" - SPLIT_NAVY:0 "Split the fleet" - NAVY_SPLIT_IN_HALF:1 "Split the task force in two" - EQUALS:0 "equals" - LESS_THAN:0 "less than" - GREATER_THAN:0 "greater than" - BASE_VALUE:0 "Base value: §Y$VALUE|1$§!" - BASE_VALUE2:0 "Base value: §Y$VALUE|2$§!" - COMMAND_POWER_BASE:1 "Base Gain: §Y$VALUE|1$§!" - TEMPORARY_BUFF_BOOL:0 "$BUFF_REASON$: $VALUE$ (§H$NUM_DAYS|0$§! days)\n" - TEMPORARY_BUFF:0 "$BUFF_REASON$: §G+$VALUE|%+1$§! (§H$NUM_DAYS|0$§! days)\n" - TEMPORARY_BUFF_NEGATIVE:0 "$BUFF_REASON$: §G$VALUE|%+1$§! (§H$NUM_DAYS|0$§! days)\n" - BAD_TEMPORARY_BUFF:0 "$BUFF_REASON$: §R+$VALUE|%-1$§! (§H$NUM_DAYS|0$§! days)\n" - BAD_TEMPORARY_BUFF_NEGATIVE:0 "$BUFF_REASON$: §R$VALUE|%-1$§! (§H$NUM_DAYS|0$§! days)\n" - TEMPORARY_BUFF_TOOLTIP:0 "$NAME$: $VALUE$\n" - TEMPORARY_BUFF_TOOLTIP_VAL:0 "$VALUE|%1$" - TEMPORARY_BUFF_TOOLTIP_BOOL:0 "$NAME$: $VALUE$\n" - FEX_STATE_UNINITIALIZED:0 "?" - FEX_STATE_WAITING:0 "Waiting" - FEX_STATE_FIGHTING:0 "Fighting" - FEX_STATE_ON_THE_WAY:0 "On the way" - FEX_STATE_ESCAPING:0 "Disengaging" - FEX_STATE_RUN_AWAY:0 "Disengaged" - FEX_STATE_SUNK:0 "Sunk" - SHIP_SUNK_BY:0 "Sunk by $NAME|R$" - ONLY_REPAIR_IN_NAVAL_BASE:0 "Can only repair when in a naval base." - REPAIR_READY_ETA:0 "Repair is estimated to be finished at $WHEN|Y$." - TOTAL_DAMAGED_SHIPS_REPAIR:0 "With $SHIPS|Y$ ships needing repair, each regain $REPAIR|+%$ each hour." - NAVAL_BASE_REPAIR_INFO:2 "This naval base has a level of $SIZE|Y0$, of which $FUNCTIONAL|Y0$ are functional, each level providing $EFFECT|Y$ strength repair maximum at local supply level of $SUPPLY|Y%$, the total hourly maximum repair power is $POWER|Y2%$.\n" - NAVAL_COMBAT_SHIP_TOOLTIP:0 "$FLAG$ $NAME|$ $STATUS|Y$ - " - NAVAL_COMBAT_SHIP_TOOLTIP_ATTACKING:0 "\n§YAttacking§! $FLAG$ $TARGET|R$" - NAVAL_COMBAT_SHIP_TOOLTIP_APPROACHING:0 "\n§YApproaching§! $FLAG$ $TARGET|R$ (§Y$DIST|0$km§! beyond range)" - NAVAL_COMBAT_DIST_TO_ARRIVE:0 "\n Distance to arrive: $DIST|0Y$km" - NAVAL_COMBAT_HOURS_TO_ARRIVE:0 "\n Hours to arrive: $NUM|0Y$" - NAVAL_COMBAT_SHIP_STRENGTH:0 "Strength: $STR|%Y$" - NAVAL_COMBAT_SHIP_ORGANIZATION_FACTOR:0 " - Organization: $ORG|%Y$" - NAVAL_COMBAT_SHIP_STRENGTH_DESC:0 "Strength represents how much damage a ship can take before being destroyed" - NAVAL_COMBAT_INCOMING_UNKNOWN:0 "§RUnknown ships are incoming.§!" - NAVAL_COMBAT_AIRWING_TOOLTIP_HEADER:3 "$NUM|G$/$TOT|G$ $MOD|Y$ from $FROM|Y$. $DEAD|R$ shot down." - NAVAL_COMBAT_AIRWING_TOOLTIP_HEADER_EXTERNAL:2 "$NUM|G$ $MOD|Y$ from $FROM|Y$. Joined $HOUR|Y$ hours ago. $DEAD|R$ shot down." - NAVAL_COMBAT_AIRWING_TOOLTIP_SHOT_DOWN:0 "\nShot down:" - NAVAL_COMBAT_AIRWING_TOOLTIP_SHOT_DOWN_ENTRY:2 "\n $NUM|G$ x $MOD|Y$" - NAVAL_COMBAT_AIRWING_TOOLTIP_DAMAGED:1 "\nEnemy ships damaged:" - NAVAL_COMBAT_AIRWING_TOOLTIP_DAMAGED_ENTRY:2 "\n $NAVY|Y$: $PERC|G%$" - NAVAL_COMBAT_AIRWING_TOOLTIP_DAMAGED_LAST_HIT:1 " (§GKilling blow§!)" - NAVAL_COMBAT_RECEIVED_CRITICALS:0 "Received $NUM|R$ critical hits." - NAVAL_COMBAT_HIDDEN_SUBS:0 "§RExact position is unknown.§!\n" - NAVAL_TRANSFER_BLOCKED:1 "§RYou can't transfer ships between task forces in different naval bases§!" - CARRIER_PLANES_EVAC_STATUS_DESTROYED:0 "No evacuation air base found - its aircrafts have been lost." - CARRUER_PLANES_EVAC_STATUS_STATE:0 "Its aircrafts have been evacuated to the airbase in $STATE|Y$ in $COUNTRY|Y$." - AIR_SUPERIORITY_BAR_DISABLED:1 "We have air units in this region, but either they are not currently performing their missions or are not able to overcome enemy air superiority." - AIR_SUPERIORITY_BAR_DISABLED_NO_WINGS:0 "There are currently no air units active in this region." - AIR_SUPERIORITY_BAR:0 "With current amount of aircraft we can effectively cover $WE_COVERAGE|%0Y$ of region." - AIR_SUPERIORITY_BAR_TOOLTIP:0 "§YAir superiority:§! $PERC$" - AIR_SUPERIORITY_BAR_OUR:0 "\nOur air power: $OUR$" - AIR_SUPERIORITY_BAR_ENEMY:0 "\nEnemy air power: $ENEMY$" - AIR_SUPERIORITY_BAR_EXPLANATION:0 "Each type of an air wing has a defined superiority power value, that describes how effective it is in domination on the sky. The superiority power in the region comes from all of your (and your allies) active air wings in that region. The more air wings the higher value, but be aware that the value is also reduced with low region coverage. So remember to rebase your air wings to get the most optimal region coverage." - AIR_SUPERIORITY_AA_REDUCTION_ENEMY:0 "Reduced by the enemy anti air in region = $RED|R1$" - AIR_SUPERIORITY_AA_REDUCTION_OUR:0 "Reduced by our anti air in region = $RED|G1$" - AIR_SUPERIORITY_TYPE_1:1 "Currently Active Fighters" - AIR_SUPERIORITY_TYPE_2:1 "Currently Active Bombers" - AIR_SUPERIORITY_TYPE_3:1 "Currently Active Support Planes" - AIR_SUPERIORITY_TYPE_4:0 "Anti air guns" - AIR_SUPERIORITY_FRIENDLY_PRESENCE_TYPE_1:0 "There are friendly fighters active in the area" - AIR_SUPERIORITY_FRIENDLY_PRESENCE_TYPE_2:0 "There are friendly bombers active in the area" - AIR_SUPERIORITY_FRIENDLY_PRESENCE_TYPE_3:0 "There are friendly support planes active in the area" - AIR_SUPERIORITY_FRIENDLY_PRESENCE_TYPE_4:0 "There are friendly anti air guns active in the area" - AIR_SUPERIORITY_ENEMY_TYPE_1:1 "Currently Active Enemy Fighters" - AIR_SUPERIORITY_ENEMY_TYPE_2:1 "Currently Active Enemy Bombers" - AIR_SUPERIORITY_ENEMY_TYPE_3:1 "Currently Active Enemy Support Planes" - AIR_SUPERIORITY_ENEMY_TYPE_4:0 "Enemy Anti air guns" - AIR_RESERVES_TYPE_1:0 "Fighters" - AIR_RESERVES_TYPE_2:0 "Bombers" - AIR_RESERVES_TYPE_3:0 "Support planes" - LINECHART_DETAILS_YEARS:0 "Years" - LINECHART_DETAILS_MONTHS:0 "Months" - LINECHART_DETAILS_DAYS:0 "Days" - REASON_NONE_TOTAL:0 "Total: $SUM|0H$" - REASON_NONE_TOTAL_DETAILED:0 "Total: $SUM|1H$" - REASON_LAND_COMBAT:0 "Shot down by AA: $SUM|0H$" - REASON_AIR_COMBAT:0 "Shot down in airbattle: $SUM|0H$" - REASON_ARMORED_TRAINS:0 "Shot down by armored trains: $SUM|0H$" - REASON_ACCIDENT:0 "Accident losses: $SUM|0H$" - REASON_BOMBED:0 "Bombed: $SUM|0H$" - REASON_SUICIDE:0 "Lost by kamikaze: $SUM|0H$" - AIRVIEW_DETAILS_CHANNEL_1:1 "Our buildings bombed: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_2:1 "Our troops bombed: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_3:1 "Our ships bombed: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_4:1 "Our fighters lost: $VAL|R0$" - AIRVIEW_DETAILS_CHANNEL_5:1 "Our bombers lost: $VAL|R0$" - AIRVIEW_DETAILS_CHANNEL_6:1 "Our support lost: $VAL|R0$" - AIRVIEW_DETAILS_CHANNEL_7:3 "Our transports lost: $VAL|R0$" - AIRVIEW_DETAILS_CHANNEL_8:3 "Our bombers disrupted: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_9:4 "Our trains lost: $VAL|R0$" - AIRVIEW_DETAILS_CHANNEL_10:3 "Our trucks lost: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_11:4 "Our railway guns lost: $VAL|R1$" - AIRVIEW_DETAILS_CHANNEL_12:3 "Enemy buildings bombed: $VAL|G1$" - AIRVIEW_DETAILS_CHANNEL_13:3 "Enemy troops bombed: $VAL|G1$" - AIRVIEW_DETAILS_CHANNEL_14:5 "Enemy ships sunk: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_15:3 "Enemy fighters lost: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_16:3 "Enemy bombers lost: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_17:0 "Enemy support lost: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_18:0 "Enemy transports lost: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_19:0 "Enemy bombers disrupted: $VAL|G1$" - AIRVIEW_DETAILS_CHANNEL_20:1 "Enemy trains lost: $VAL|G0$" - AIRVIEW_DETAILS_CHANNEL_21:0 "Enemy trucks lost: $VAL|G1$" - AIRVIEW_DETAILS_CHANNEL_22:0 "Enemy railway guns lost: $VAL|G1$" - AIRVIEW_GRAPH_VALUE:0 "$VALUE|1$" - NAVAL_DETECTION_CHANCE:0 "§YSurface§!/§YSub§! detection chance: $SUR|=1%+$/$SUB|=1%+$" - NAVAL_DETECTION_CHANCE_DETAILS_BASE:0 " Base: $VAL|0%Y$" - NAVAL_DETECTION_CHANCE_DETAILS_COVERAGE:0 " x Regions coverage: $COV|1%+$ (§Y$FOR$§! formation spread: $NAME$)" - NAVAL_DETECTION_CHANCE_DETAILS_SUPPLY:0 " x Base supply status: $SUPPLY|1%+$" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_PATROL:0 "§YVery wide§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_MINES_PLANTING:0 "§YVery wide§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_MINES_SWEEPING:0 "§YVery wide§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_SEARCH_AND_DESTROY:0 "§YTight§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_CONVOY_RAIDING:0 "§YNormal§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_CONVOY_ESCORT:0 "§YTight§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_INVASION:0 "§YTight§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_TRAINING:0 "§YTight§!" - NAVAL_DETECTION_CHANCE_DETAILS_FORMATION_RESERVE_FLEET:0 "§YTight§!" - NAVAL_DETECTION_CHANCE_DETAILS_RADARS:0 " + From radars: $VAL|=2%+$" - NAVAL_DETECTION_CHANCE_DETAILS_AIR_SUP:0 " + From Air Superiority: $VAL|=2%+$" - NAVAL_DETECTION_CHANCE_DETAILS_WEATHER:0 " x Weather multiplier: $VAL$" - NAVAL_DETECTION_CHANCE_DETAILS_DECRYPT:0 "\n If we have better decryption than an enemy vessels encryption we get $VAL|G0%$ improved detection per level." - NAVAL_DETECTION_CHANCE_DETAILS_SURF_DET:0 " x Equipment Surface Detection: $VAL|0%+$" - NAVAL_DETECTION_CHANCE_DETAILS_SUB_DET:0 " x Equipment Sub Detection: $VAL|0%+$" - NAVAL_DETECTION_CHANCE_DETAILS_TRUE_VAL:0 "§gTrue detection chance also depends on enemy ships visibility.§!" - SPOTTING_BASE_CHANCE_TOTAL:1 "§HBase detection in region: $VAL|1%+$§!\n" - SPOTTING_BASE_CHANCE:1 " Base: $VAL|1%+=$\n" - SPOTTING_BASE_CHANCE_FROM_NAVY:1 " Task Forces in Region: $VAL|1%+=$\n" - SPOTTING_BASE_CHANCE_FROM_AIR:1 " Air Missions in Region: $VAL|1%+=$\n" - SPOTTING_BASE_CHANCE_FROM_RADAR:1 " Radar Coverage in Region: $VAL|1%+=$\n" - SPOTTING_BASE_CHANCE_FROM_DECRYPTION:2 " Intel Difference: $VAL|1%+=$\n" - NAVAL_SPOTTING_SPEED_SURFACE:0 "Spotting: $VAL|2%+=$" - NAVAL_SPOTTING_SPEED_SUB:0 "Sub surface spotting speed: $VAL|2%+=$" - NAVAL_SPOTTING_SURFACE_DETECTION:0 "Surface detection: $VAL|2%+$" - NAVAL_SPOTTING_SUB_DETECTION:1 "Sub Detection: $VAL|2%+$" - NAVAL_SPOTTING_OUR_DETECTION:0 "Our detection chance: $VAL|2%+=$" - NAVAL_SPOTTING_THEIR_DETECTION:0 "Their detection chance: §R-§!$VAL|2%-$" - NAVAL_SPOTTING_THEIR_VISIBILITY:0 "Their visibility: $VAL|0%H$" - NAVAL_SPOTTING_DUE_TO_SPEED_DELTA:0 "Speed difference: $VAL|2%+=$" - NAVAL_SPOTTING_COORDINATION_FACTOR:0 "Coordination: $VAL|0%H$" - NAVAL_SPOTTING_STATE:0 "There are §Y$NUM$§! undetected ships\n" - SPOTTING_DETECTION_PROCESS_PER_TASK_FORCE:1 " $NAME$: Progress $VAL|0%+$ Encounter Chance $CHANCE|1%+$ ($TARGET$)\n" - NAVAL_SPOTTING_LEVEL_NONE_DESC:0 "We know of an enemy presence in the region." - NAVAL_SPOTTING_LEVEL_LOW_DESC:0 "We spotted the enemy and have a rough estimate of their forces" - NAVAL_SPOTTING_LEVEL_MEDIUM_DESC:0 "We spotted the enemy and have a clear estimate of their forces" - NAVAL_SPOTTING_LEVEL_DETAILED_UNITS_DESC:0 "We identified the enemy and can accurately estimate their forces." - NAVAL_SPOTTING_SEARCHED_BY:0 "The enemy is being located by $NAME|H$." - NAVAL_SPOTTING_PROGRESS:0 "Progress: $PROGRESS|H%.0$" - NAVAL_SPOTTING_DAILY_CHANGE:1 "Daily change: $SPEED|%.2+=$" - NAVAL_SPOTTING_HOURLY_CHANGE:0 "§HHourly change: $SPEED|%.2+=$§!" - NAVAL_SPOTTING_DESC:1 "When fully spotted, a strike force can join the ensuing battle." - ACTIVE_COMBAT_STATUS:0 "There are $NUM|H$ ongoing combats in this region.\n\n§GClick§! to cycle through them." - COMBAT_RESULT_STATUS:0 "There are $NUM|H$ combat results in this region.\n\n§GClick§! to cycle through them." - NAVAL_ENTRY_DRAGDROP_DESC:1 "§GClick to grab this group of ships and drop it on another task force.\n§!" - NAVAL_ENTRY_NEWFLEET_DESC:1 "§GRight-Click to create new task force from this group.§!" - NAVAL_ENTRY_NEWFLEET_COMBAT_DESC:1 "§RCannot assign to new task force while in combat.§!" - NAVAL_MINES_IN_REGION_HEADER:0 "§HNaval mines laid:§!" - NAVAL_MINES_IN_REGION_BY_US:1 "\n §YWe§! have laid $COUNT|G0$ mines, damaged $COUNT_DAMAGED|G0$ and sunk $COUNT_SUNK|G0$ ships." - NAVAL_MINES_IN_REGION_BY_FRIENDS:1 "\n Our §Gallies§! have laid $COUNT|G0$ mines, damaged $COUNT_DAMAGED|G0$ and sunk $COUNT_SUNK|G0$ ships." - NAVAL_MINES_IN_REGION_BY_ENEMIES:1 "\n Our §Renemies§! have laid $COUNT|R0$ mines, damaged $COUNT_DAMAGED|R0$ and sunk $COUNT_SUNK|R0$ ships." - NAVAL_MINES_IN_REGION_BY_NEUTRAL:0 "\n $COUNTRY|Y$ has laid $COUNT|R0$ mines." - NAVAL_MINES_PENALTIES_FROM_ENEMY:0 "\n§HPenalties from enemy mines:§!\n" - NAVAL_ACCIDENTS:0 "Naval accidents" - NAVAL_ACCIDENTS_TRAINING:0 "Accidents! from §Htraining§!: $NUM$" - NAVAL_ACCIDENTS_MINES:0 "Accidents from §Henemy naval mines§!: $NUM$" - NAVAL_ACCIDENTS_ENEMY:0 "Enemy accidents from §Hnaval mines§!: $NUM$" - NAVAL_ACCIDENTS_DAMAGED:0 "\n Total damage: $DMG|R1$" - NAVAL_ACCIDENTS_SUNK:0 "\n Ships sunk: $SHIPS|R$" - NAVAL_ACCIDENTS_SUMMARY:0 "Naval accidents for ships of type $TYPE|H$:\n - $SUNK_MINES|R$ sunk by §Ynaval mines§!\n - $SUNK_TRAINING|R$ sunk in §Ytraining§!\n - $DAMAGE_MINES|R$ of total damage by §Ynaval mines§!\n - $DAMAGE_TRAINING|R$ of total damage in §Ytraining§!" - NAVAL_ACCIDENTS_ACTIONS:0 "§GClick§! to open §YNaval accidents§! summary.\n§GRight Click§! to §Rdelete§! §Ynaval accidents§! info in this region." - NAVAL_ACCIDENT_DISPATCH_TITLE:0 "Dispatch naval accidents data" - NAVAL_ACCIDENT_DISPATCH_DESC:0 "Are you sure, that you want to dispatch all naval accidents data in this region?" - UNIT_VIEW_DIVISIONS_COUNT:0 "$DIV$/$MAX$" - UNIT_VIEW_DIVISIONS_COUNT_NO_LIMIT:0 "$DIV$" - UNIT_TOOLTIP_BATTALIONS:1 "§GBattalions§!" - UNIT_TOOLTIP_SUPPORT:0 "§GSupport§!" - MAP_ARROWS_LOCALIZATION:1 "$ORDERNAME$$DIVISIONS$ - $GROUP$" - MAP_ARROWS_LOCALIZATION_EMPTY:0 "No divisions" - MAP_ARROWS_DIVISIONS_COUNT:1 "$DIV$ Divs" - MAP_ARROWS_DIVISIONS_COUNT_SHORT:1 "$DIV$ Divs" - MAP_ARROWS_LOCALIZATION_EMPTY_SHORT:1 "No Divs" - MAP_ARROWS_PARATROOPERS_COUNT:1 "$DIV$ Paras" - MAP_ARROWS_INVASION_TRANSPORTS_COUNT:1 " - $TR$ Transports" - MAP_ARROWS_PARADROP_TRANSPORTS_COUNT:1 " - $TR$ Transports" - REQUEST_EXPEDITIONARIES_DIVISIONS_COUNT:0 "$NUM_DIVS|Y$ Total Divisions" - UNITS_VIEW_DIVISIONS_COUNT:0 "$DIV|G$ Divisions" - UNITS_VIEW_WINGS_COUNT:0 "$WINGS|G$ Selected" - UNITS_VIEW_SELECTED_DIVISIONS_COUNT:0 "$DIV|G$ Selected" - UNITS_VIEW_SELECTED_RAILWAY_GUNS_COUNT:0 "$RG_COUNT|G$ Railway Guns" - UNITS_VIEW_BTN_SELECT:0 "Select" - UNITS_VIEW_BTN_SELECT_TOOLTIP:1 "Click to select this Army, and draw orders for them." - UNITS_VIEW_BTN_UNASSIGN_UNITS:0 "Unassign" - UNITS_VIEW_BTN_UNASSIGN_UNITS_TOOLTIP:1 "Click to §Runassign§! all currently selected units from this army." - UNITS_VIEW_BTN_UNASSIGN_SINGLE_UNIT_TOOLTIP:1 "Click to §Runassign§! this unit from the command army." - UNITS_VIEW_BTN_START_TRAINING:0 "Exercise" - UNITS_VIEW_BTN_STOP_TRAINING:0 "Stop" - UNITS_VIEW_BTN_STOP_TRAINING_TOOLTIP:0 "Click to stop the §Rexercise§! with this army." - UNITS_VIEW_BTN_STOP_TRAINING_TOOLTIP_WILL_STOP_AT_MAX_INFO:0 "§RExercise§! will be automatically stopped when all units reach the maximum training level." - UNITS_VIEW_BTN_DISBAND_GROUP:1 "Remove" - UNITS_VIEW_BTN_DISBAND_GROUP_TOOLTIP:1 "Click to §RRemove§! this army. All its divisions will become unassigned." - ARMY_LEADER_EXPEDITIONARY_FORCE_ICON:0 "This army is an empty army created for requesting expeditionary forces." - ARMY_LEADER_CREATE_EXPEDITIONARY_FORCE_GROUP:0 "Click to create an empty army for requesting expeditionary forces." - UNITS_VIEW_BTN_EXECUTION_STOP:0 "Stop" - UNITS_VIEW_BTN_EXECUTE:0 "Execute" - UNITS_VIEW_BTN_EXECUTE_TOOLTIP:1 "§GClick§! to $ACTION$ the execution of the §Yentire plan.§!\n§GShift + Click§! and then §Yclick on the desired order§! to Toggle execution\n§GCtrl + Click§! to toggle execution of all assigned divisions and armies" - UNITS_VIEW_BTN_EXECUTE_TOOLTIP_PLAY:0 "§YACTIVATE§!" - UNITS_VIEW_BTN_EXECUTE_TOOLTIP_STOP:0 "§YSTOP§!" - UNITS_VIEW_BTN_EXECUTE_NONE_SET_TOOLTIP:1 "This army has no orders to execute. You need to create a plan to enable this." - UNITS_VIEW_BTN_EXECUTE_POINT_OUT:0 "Now click on the map on the desired orders to toggle their execution." - UNITS_VIEW_BTN_DELETE_ORDER:1 "§HDelete Order§!\n§GClick§! this button, then click on the order on the map you want to delete.\n§GRight-click§! this button, to §Rdelete all orders§! of currently selected army." - UNITS_VIEW_BTN_RESHAPE:0 "§HEdit mode§!\nHit this button to toggle the mode, or hold §GALT§!\n§GRight-click§! on battle plans ending pins to edit them.\n§GClick and hold the mouse button§! on the Advancement Arrow to reshape it or connect with another order.\n§GRight-click and hold the mouse button§! on one of the blinking orders to begin painting a new Advancement Arrow." - UNITS_VIEW_BTN_DRAW_OFFENCE:3 "§HOffensive line§!\n§GRight-click and hold the mouse button§! on the map to draw §YOffensive Line§!.\nLines can be painted only on territory you have assigned a §HFront Line§! or §HNaval Invasion§! to.\n\nDivisions assigned to a plan with an Offensive Line will try to take territory to move their front line there. \n\n§GHold mouse button§! and §Grelease§! it on an execute behavior button to change plan's execution type" - UNITS_VIEW_BTN_DRAW_DEFENCE:1 "§HFront Line§!\n - §GClick§! on one of the borders against another country to set the assigned front along entire border.\n - §GRight-click and drag the mouse§! on one of the borders against another country to set the front in a shorter interval.\n - §GRight-click and drag the mouse§! on the existing frontline endings to edit them.\n\nFront lines are the start point of attacks into enemy territory towards Offensive Lines, but also allows you to quickly position Divisions along a foreign border." - UNITS_VIEW_BTN_DRAW_DEFENCE_ARMY_GROUP:0 "§HFront Line§!\n - §GClick§! on one of the borders against another country to set the assigned front along entire border.\n - §GShift + Click§! on one of the borders against another country to set the assigned front without sub-army fronts along entire border.\n - §GRight-click and drag the mouse§! on one of the borders against another country to set the front in a shorter interval.\n - §GShift + Right-click and drag the mouse§! on one of the borders against another country to set the front without sub-army fronts in a shorter interval.\n - §GRight-click and drag the mouse§! on the existing frontline endings to edit them.\n\nFront lines are the start point of attacks into enemy territory towards Offensive Lines, but also allows you to quickly position Divisions along a foreign border." - UNITS_VIEW_BTN_DRAW_FALLBACK:1 "§HFallback line§!\n - §GRight-click and drag the mouse§! on the friendly territory to draw the §YSingle use§! defensive order.\n\nFallback lines are useful for positioning Divisions for defence, for example, behind a river, or somewhere else in friendly territory." - UNITS_VIEW_BTN_AREA_DEFENSE:3 "§HArea Defense§!\n - §GClick§! on states to add/remove them from the army's order.\nAn Army with this order cannot have other types at the same time.\n\nDivisions assigned to an Army with this order will spread out over the assigned area to guard important cities, ports or other objects as well as handle minor enemy presence." - UNITS_VIEW_BTN_DRAW_NAVAL_INV:0 "§HNaval Invasion Order§!\nStep 1) §GClick§! on one of the highlighted provinces to set the invasion source.\nStep 2) §GRight-click§! on the desired coast province(s) to invade.\nOnce the plan is activated, the invasion will begin to prepare and reserve convoys from your countries pool." - UNITS_VIEW_BTN_DRAW_PARADROP:0 "§HParatroop Order§!\nStep 1) §GClick§! on our air base to designate the takeoff point. The air base must have available transport planes.\nStep 2) §GRight-click§! on the province that is in range of the local transport planes, to designate the drop location.\n§gRemember that only the units with paratroop ability will be transported.§!" - UNITS_VIEW_BTN_DRAW_OFFENCE_FRONT_LINE_FIRST:0 "§RYou have to create a Front line first.§!" - UNITS_VIEW_BTN_RESHAPE_NOTHING:0 "§RNothing to Edit.§!" - UNITS_VIEW_BTN_UNASSIGN_NO_ORDERS:0 "§RNothing to unassign from.§!" - UNITS_VIEW_BTN_UNASSIGN_DEFENCE_ORDER:1 "§RCannot unassign units from §YArea Defense§! order.§!" - UNITS_VIEW_BTN_DELTE_NOTHING:0 "§RNothing to Delete.§!" - UNITS_VIEW_BTN_DRAW_PARADROP_NO_PARATROOPERS:0 "§RNo Paratroopers in the Command Group.§!" - UNITS_VIEW_BTN_IN_RESHAPE_MODE:0 "§RYou are currently editing orders.§!" - UNITS_VIEW_BTN_DRAW_NAVAL_INV_WITH_HARBOR:2 "§HNaval Invasion Order (With Floating Harbor support)§!\nStep 1) §GClick§! on one of the highlighted provinces to set the invasion source.\nStep 2) §GRight-click§! on the desired coast province(s) to invade.\nOnce the plan is activated, the invasion will begin to prepare and reserve Convoys and a Floating Harbor from your Stockpile." - UNITS_VIEW_BTN_DRAW_NAVAL_INV_WITH_HARBOR_NO_HARBOR:1 "§RWe have no §HFloating Harbor§! needed for this plan§!" - UNITS_VIEW_BTN_UNITS_ASSIGN:2 "§HDivisions assignment mode§!\nHit this button to toggle the mode, or hold §GCTRL§!.\nThen select one of the highlighted fronts to assign the currently selected units." - UNITS_VIEW_BTN_UNITS_UNASSIGN:0 "§HUnassign divisions§!\nHit this button to unassign the currently selected divisions from their orders." - UNITS_HAS_NO_ORDERS_WARNING:1 "§RDivision belongs to an army, but has no orders assigned!§!\nDraw Defensive/Offensive Lines and assign units to them." - UNITS_HAS_NO_ORDERS_WARNING_BUT_HAS_ARMY_GROUP:0 "§RDivision belongs to an army with no orders, it will use army group order instead.§!" - UNITS_HAS_INVALID_ORDERS_WARNING:0 "§RUnits are unwilling or unable to execute assigned order!§!\nUnits are not allowed to enter demilitarized zones and will not carry out suicidal battle plans without specific movement orders." - UNITS_HAS_INVALID_MOVE_IN_PATH_WARNING:0 "§RUnit unable to move to a province along its path§!" - UNITS_HAS_INVALID_PATH_WARNING:0 "§RUnable to find valid path to target§!" - UNITS_HAS_INVALID_TRANSPORT_WARNING:0 "§RUnable to transport to target§!" - UNITS_HAS_INVALID_MOVE_WARNING:0 "§RUnable to move to next target province§!" - UNITS_HAS_INVALID_RETREAT_WARNING:0 "§RUnable to retreat to target province§!" - UNITS_HAS_LOW_SUPPLY_MOVE_WARNING:0 "§RIf unit were to continue moving it would cause the next province to require more supplies than it has capacity for.\nExplicit move order can force the unit to move it out anyway§!" - UNITS_UNWILLING_ATTACK_WARNING:0 "§RUnit considers attacking to be too dangerous.\nExplicit move order can force the unit to carry it out anyway.§!" - UNITS_INVALID_ATTACK_WARNING:0 "§RUnable to attack target province§!" - UNITS_NO_POSSIBLE_ATTACK_WARNING:0 "§RUnable to find a valid attack target§!" - UNITS_AWAITING_ORDERS:0 "§YUnit has carried out its orders and is awaiting new ones§!" - UNITS_HAS_LOST_ITS_WAY:1 "§YUnit is unable to carry out its orders.§!" - UNITS_TOO_WEAK_TO_ATTACK:0 "§RUnit's organization is too low to advance.§!\nPlease wait for them to reorganize, or consider changing the §YAggressiveness§! of the battleplans execution." - UNITS_DMZ_MOVE_WARNING:0 "§RUnit will not move into demilitarized zone§!" - EXECUTE_ORDERS_POINT_OUT:0 "§GClick§! to toggle execution of this order." - EXECUTE_ORDERS_POINT_OUT_CAN_T_TOGGLE:1 "§RThis order belongs to a different army.§!" - EXECUTE_ORDERS_POINT_OUT_NO_ORDERS_HERE:0 "Please move the mouse pointer over one of the orders that you wish to toggle execution." - CORE_FILTER_BY:0 "§TFilter by: $NAME|H$§!" - MAJOR:0 "Major Countries" - EXECUTION:0 "Execution" - BATTLE_PLANS:0 "Battle Plans" - BATTLE_PLANS_X_WILL_BE_ASSIGNED:0 "$NUM|Y$ divisions will be assigned." - COMMAND_GROUP_NAME_GENERIC:1 "Army $N$" - ARMY_GROUP_NAME_GENERIC:0 "Army Group $N$" - CORE_FILTER_BY_MAJOR:0 "§TFilter by if a nation is considered a Major or not.§!" - CARRIER_SHIP_ICON:1 "This air base is a §HFleet§! containing §HAircraft Carriers§!.\n§gClick to select§!" - ASSIGN_LEADER_TITLE:0 "Select Commander for $UNIT|Y$" - DIMININSHING_RETURNS:0 "At this popularity, effects are scaled to $SCALE|Y2%$" - LEADER_NOT_IN_PORT:0 "§ROn sea§!" - LEADER_SKILL_DESC:0 "Skill: $S|Y$" - LEADER_SKILL_WITH_PROGRESS:0 "Skill: $SKILL|Y$ ($PROGRESS|%Y0$)" - LEADER_SKILL_AT_CAP:0 "Skill: $SKILL|Y$ (Max)" - LEADER_RANK_WITH_PROGRESS:0 "$RANK|Y$ ($PROGRESS|%Y0$)" - LEADER_FUNCTION_DESC:1 "Having a Commander assigned to an Army boosts the Army in various areas depending on the Commander's skill." - LEADER_FUNCTION_NAVY_DESC:0 "Having an Admiral assigned to a Fleet boosts the Task Forces' in various areas depending on the Admiral's skill." - LEADER_CAPACITY_DESC:1 "$NAME$ is currently leading $CURRENT|Y$ divisions, and is capable of efficiently leading $MAX|Y$ divisions." - LEADER_ARMY_GROUP_CAPACITY_DESC:0 "$NAME$ is currently leading $CURRENT|Y$ armies, and is capable of efficiently leading $MAX|Y$ armies." - LEADER_ENDLESS_CAPACITY_DESC:0 "$NAME$ is a Field Marshal and has no command limit." - LEADER_PROMOTE:0 "§GPromote to§! $RANK|Y$" - LEADER_PROMOTE_DESC:0 "At the cost of one skill level this leader is promoted to the next rank" - LEADER_CANNOT_PROMOTE:0 "§RCannot promote§!" - LEADER_PROMOTE_NO_SKILL:0 "This leader is not skilled enough to promote" - LEADER_PROMOTE_MAX_RANK:0 "This leader has the highest available rank" - MAX:0 "Max" - CANT_CHANGE_NAVAL_LEADER_DESC:0 "§RNaval Commander can be changed only in ports§!" - DIPLOMACY_VIEW_CANCEL_SPY_MISSION:0 "Right-click to cancel mission." - DIPLOMACY_STAGE_COUP_NOT_IN_MP:0 "Stage coup not available in MP." - SPY_ON_STANDBY:0 "On Standby" - DIPLOMACY_VIEW_SPY_MISSION:0 "@$TARGET$ $MISSION$" - DIPLOMACY_VIEW_SPY_MISSION_NEW:0 "@$TARGET$" - TOTAL_MODIFIER_IS:0 "Modified to $VALUE|Y%$ due to" - NO_ORG_GAIN_IN_COMBAT:0 "There is no gain of organization while in combat." - NO_ORG_GAIN_IN_NAVAL_INVASION:0 "There is no gain of organization during naval invasion." - ORG_OVER_SUPPLY_SOFT_CAP:0 "Organization is over the supply soft-cap of $CAP|Y$, Organization will be reduced by $LOSS|R$ each hour." - MAX_EXPERIENCE_TEXT:0 "Experience is capped at $VAL|Y0$." - acquire_intel:0 "Acquire Intel" - acquire_intel_desc:0 "$SPY|H$ is attempting to Acquire Intel in $TARGET|Y$." - acquire_intel_general_desc:0 "The spy focuses on gathering intel on the nation. Will find military troops you will not otherwise have seen" - boost_party_popularity:0 "Boost Party Popularity" - boost_party:0 "Boost Party" - boost_party_popularity_desc:0 "$SPY|H$ is attempting to Boost Party Popularity ($PARTY|Y$) in $TARGET|Y$." - boost_party_popularity_general_desc:0 "Boosts a particular political group in the nation which means that they could win during elections or make a future coup more powerful" - attempt_coup:0 "Attempt Coup" - attempt_coup_desc:0 "$SPY|H$ is attempting a coup in $TARGET|Y$.\nHas done $PROGRESS|G%1$ of coup preparation." - on_standby:0 "On Standby" - on_standby_general_desc:0 "The spy remains on standby until a new mission is assigned." - attempt_coup_general_desc:0 "Prepare a coup attempt against the target nation. When done it will trigger a civil war. Strength of the uprising will depend on the nation's national unity and the political popularity of your ideology" - LEADING_TOO_MANY_SHIPS_DESC:0 "§gCommanding too many ships may lead to chaos in the formations - it will take much more time for ships to come into the battle.\nAlso all positive Commander Traits and Skills modifiers will be reduced.§!" - LEADING_TOO_MANY_DIVISIONS_DESC:0 "Commanding too many divisions will reduce all positive Commander Trait and Skill modifiers." - LEADING_TOO_MANY_ARMIES_DESC:0 "Commanding too many armies will reduce all positive Commander Trait and Skill modifiers." - LEADING_TOO_MANY_UNITS_CURR_PENALTY:0 "Current penalty: $PERC|%R$" - LEADER_DIVISIONS_COUNT:2 "Can efficiently command $MAX|Y$ divisions." - LEADER_ARMIES_COUNT:0 "Can efficiently command $MAX|Y$ armies." - LEADER_DIVISIONS_COUNT_AND_LIMIT:1 "This Commander can handle $MAX|Y$ divisions, and is currently commanding $DIV|Y$." - LEADER_SHIPS_COUNT:0 "This Commander can handle $MAX|Y$ ships." - LEADER_SHIPS_COUNT_AND_LIMIT:0 "This Commander can handle $MAX|Y$ ships, and is currently in command of $SHIP|Y$ ships." - NO_LEADER_SHIPS_COUNT_AND_LIMIT:0 "Unit without a Commander can handle up to $MAX|Y$ ships. Currently $SHIP|Y$ ships." - SPY_CANCEL_DELAY_DESC:0 "Cancelled previous mission (ready $DATE$)." - UNIT_VIEW_NAVAL_EXPERIENCE:0 "Experience" - UNIT_VIEW_ARMY_EXPERIENCE:0 "Experience:" - RESISTANCE_TICK_SPEED_FROM_VP:0 "\n - $VP|Y$: $VAL|%2-=$" - RESISTANCE_TICK_SPEED_FROM_UNITS:0 "\n - Divisions in state: $VAL|%2-=$" - RESISTANCE_TICK_SPEED_FROM_NEIGHBORS:0 "\n - Resistance in neighbor states: $VAL|%2-=$" - RESISTANCE_TICK_SPEED_FROM_CAP:0 "\n - Resistance higher than cap $VAL|%2-=$" - RESISTANCE_TICK_SPEED_DECAY:0 "\n - Natural Decay: $VAL|%2-=$" - RESISTANCE_TICK_SPEED_FROM_POLICY:0 "\n - Occupation policy multiplier: $VAL|%0-=$" - RESISTANCE_TICK_SPEED_TOTAL:1 "\n---------------\nResistance daily growth: $TOT|%2-=$ ( Capped at $SUPPRESSION|Y%2$ from suppression )" - RESISTANCE_NOT_OPERATIONAL:1 "§gResistance can grow only in fully occupied non-core states.§!" - RESISTANCE_OCCUPATION_POLICY:0 "---------------\nOccupation policy $NAM|Y$:" - RESISTANCE_VIEW_TITLE:0 "Local resistance strength: $TOT|%0-=$" - RESISTANCE_VIEW_POLICY_TITLE:0 "Occupation policy:" - RESISTANCE_VIEW_GROWTH:0 "Growth: $GR|%2-=$" - OCCUPIED_COUNTRY_COST:0 "$VALUE$ Political Power/Day" - CHOOSE_LEADER:0 "Select a Commander" - SHOW_ACTIVE:0 "Show active" - FE_NO_COUNTRY_SELECTED:0 "No Country Selected" - FE_HOST:0 "§R$COLOR$Host§!" - FE_SELECTED_NATION:0 "Play as $NATION$" - FE_SELECT_SCENARIO:0 "Select Scenario" - FE_CHANGE_SCENARIO:0 "Change Scenario" - FE_INTERESTING_COUNTRIES:0 "Interesting Countries" - FE_SELECT_COUNTRY:0 "Select Country" - FE_COUNTRY_INFO_TITLE:0 "Information" - FE_COUNTRY_SPIRIT:0 "National Spirit" - FE_COUNTRY_HISTORY_TITLE:0 "Brief History" - LEADER:0 "Leader" - GOVERNMENT:0 "Government" - RULING_PARTY:0 "Ruling Party" - ELECTIONS:0 "Elections" - FE_MISC_STATS:0 "Misc. Stats" - FE_LOADING_HISTORY:0 "Updating History..." - IDEOLOGY:0 "Ideology" - LOADING_MAIN_MENU:0 "Loading main menu" - EXITING_TO_FRONTEND:0 "Returning to main menu" - MAP_ICON_UNITS:0 "Units: $VALUE|Y$" - MAP_ICON_DIVISIONS:0 "$VALUE|Y$ Divisions" - MAP_ICON_NAVIES:0 "Navies: $VALUE|Y$" - MAP_ICON_NAVY_SHIPS:1 "$NAVY|H$ ($COUNTRY|H$): $VALUE|Y$ Ships ($VALUE2|Y$ Capital)" - MAP_ICON_SHIPS:0 "Ships: $VALUE|Y$" - UNIT_ORG:0 "Organization: $VALUE|H$" - UNIT_AVERAGE_ORG:1 "Average Organization: $VALUE|%0H$" - UNIT_AVERAGE_STR:0 "Average Strength: $VALUE|%0H$" - ARMY_UNIT_ORG:0 "Organization: $VALUE|%H$" - ARMY_UNIT_SUPPLY:1 "§TSupply status: §! $VALUE|%0Y$" - ARMY_UNIT_SUPPLY_DESC_OK:2 "§TSupply status:§! $VALUE|%0Y$ (Stored: $BUFFER_VALUE|Y%0$)" - ARMY_UNIT_SUPPLY_DESC_BAD:3 "§TSupply status:§! $VALUE|%0R$ (Stored: $BUFFER_VALUE|Y%0$)" - RAILWAY_GUN_SUPPLY_DESC_OK:0 "§TSupply status:§! $VALUE|%0Y$" - RAILWAY_GUN_SUPPLY_DESC_BAD:0 "§TSupply status:§! $VALUE|%0R$" - ARMY_CLICK_HEADER:1 "§GClick§! to select division.\n§GShift+Click§! to toggle selection.\n§GDouble-click§! to select all divisions with the same template\n§GRight-Click§! to pan to the Division" - SHIP_CLICK_HEADER:0 "§GRight-Click§! to pan to the Fleet (or a Port)" - FLEET_CLICK_HEADER:0 "§GClick§! to select that Fleet.\n" - RAILWAY_GUN_CLICK_HEADER:0 "§GClick§! to select Railway Gun.\n§GShift+Click§! to toggle selection.\n§GRight-Click§! to pan to the Railway Gun" - UNIT_BUTTON_DESC:0 "Template: §Y$TYPE$§!" - UNIT_BUTTON_FAKE_ARMY_DESC:0 "Fake Intel Template: §Y$TYPE$§!" - UNIT_BUTTON_ACTION:0 "(Click to view details)" - UNIT_DESTINATION:0 "Destination: $STATE|Y$" - NUCLEAR_BOMB:0 "Nuclear Bombs" - NUCLEAR_PRODUCTION_ETA:0 "Next nuclear bomb is $PROGRESS|1G%$ done will be ready roughly in $DAYS|G$ days." - NUCLEAR_PRODUCTION_NONE:0 "Currently we are not producing any nuclear bombs." - NAVAL_SERIES_INCREASE_DESC:3 "Increase the number of ships to produce.\n§GCtrl+Click§! to add §H10§!\n§GShift+Click§! to add §H100§!" - NAVAL_SERIES_AMOUNT_DESC:1 "Number of ships left to produce." - NAVAL_SERIES_DECREASE_DESC:3 "Decrease the number of ships to produce.\n§GCtrl+Click§! to cut §H10§!\n§GShift+Click§! to cut §H100§!" - RAILWAY_GUN_SERIES_INCREASE_DESC:0 "Increase the number of Railway Guns to produce.\n§GCtrl+Click§! to add §H10§!\n§GShift+Click§! to add §H100§!" - RAILWAY_GUN_SERIES_AMOUNT_DESC:0 "Number of Railway Guns left to produce." - RAILWAY_GUN_SERIES_DECREASE_DESC:0 "Decrease the number of Railway Guns to produce.\n§GCtrl+Click§! to cut §H10§!\n§GShift+Click§! to cut §H100§!" - oil_desc:1 "Food is a requirement of nearly every living creature in Middle-Earth." - aluminium_desc:0 "Mithril is an extremely rare resource that will allow the production of powerful equipment." - rubber_desc:0 "Leather is a product from livestock and is used for saddles to ride cavalry and flying beasts. It is also used in producing support equipment." - tungsten_desc:0 "String is typically made out of plant fibers and is ued for bows. In large amounts, string can be made into rope to create tension in siege machines." - steel_desc:0 "Steel is the primary metal for most types of weapons and armor." - chromium_desc:0 "Wood is used in a variety of different products including ships, weapons and siege machines." - CLAIM_LIST_DESC:0 "Countries with claims on this state." - SUPPLY_MAPICON_SUPPORTED_LIMITED_DESC:0 "This node could support more supplies, but is limited by some §R'bottlenecks'§! in its route.\nConsider improving §Ginfrastructure§! along the route.\nImprove also the naval bases if the route includes the sea path.\nThink then about necessary amount of convoys and escorts." - SUPPLY_MAPICON_SUPPORTED_DESC:0 "This node supports enough supplies so far.\nThink that the usage will raise as more troops are in the area." - SUPPLY_MAPICON_INFRA_DESC:1 "Average Infrastructure of states in the area ($AVG|1Y$) will increase how much supply can go through it.\nThe total level of §Yinfrastructure§! in the area is $LVL|G$." - SUPPLY_MAPICON_INFRA_DESC_CLICK_TO_INC:1 "\n§GClick§! to queue up construction." - SUPPLY_MAPICON_INFRA_PENDING_DESC:0 "\n§GWe are already improving §Yinfrastructure§! in this area.§!" - SUPPLY_MAPICON_PORT_DESC:0 "The highest level §Ynaval base§! is $LVL|G$." - SUPPLY_MAPICON_PORT_PENDING_DESC:0 "\n§GWe are already improving the local best §Ynaval base§!.§!" - DEBUG_TOOLTIP_HINT:0 "Hold §GCtrl + Alt§! to see §Hdebug§!" - PROV_TEXT_UNITS_PARACHUTED:0 "Units Parachuted" - PROV_TEXT_UNITS_PARACHUTED_WITH_LOSSES:0 "Units Parachuted with Losses" - STATE_VIEW_WICTORY_POINTS:0 "$VALUE$ £victory_points£" - STATE_VIEW_WICTORY_POINTS_DESC:0 "How many £victory_points §HVictory Point(s)§! this province is worth." - ACE_FULL_NAME:0 "$NAME$ $SUR$" - ACE_FULL_NAME_WITH_CALLSIGN:0 "$NAME$ '$CALL$' $SUR$" - ACE_UNASSIGNED:0 "Unassigned" - ACE_ASSIGNED_TO:0 "Assigned to the wing of $NUM|H$x $UNIT|H$ in $LOC|H$" - ACE_SELECTION_TITLE:0 "Choose the Ace to assign to $UNIT|H$ in $LOC|H$" - ACE_PILOT_HEADER:0 "Pilot Ace $FULLNAME$" - ACE_PILOT_STATUS:0 "Current status: $STATUS$\n" - ACE_PILOT_STATUS_ACTIVE:0 "§GACTIVE§!" - ACE_PILOT_STATUS_KIA:0 "§RKIA§!" - ACE_PILOT_UNASSIGN_HOTKEY:0 "\n§GRight-click§! to unassign" - ACE_PILOT_CANT_ASSIGN_NO_ACES:0 "There are no Ace Pilots in our country yet. Pilots may be promoted after doing successful missions." - ACE_PILOT_CANT_ASSIGN_KIA:0 "Cannot assign the Ace pilot, because of §RKIA STATUS§!." - ACE_PILOT_CANT_ASSIGN_UNFAMILIAR:0 "Cannot assign the Ace pilot, because of §Rnot being familiar with this type of plane§!." - ACE_PILOT_ASSIGN_ACE:0 "Click to select the Ace Pilot." - ACE_PILOT_ELIGIBLE_TYPES:0 "Can be assigned to Air Wings of types: " - ace_Erich_Hartmann_desc:0 "§LErich Alfred Hartmann. Born 19 April 1922. Nicknamed 'Bubi' by his comrades. Considered to be the top ace pilot of German Luftwaffe.§!" - RELEASE:1 "Release Nation" - QUIT_TITLE:0 "Exit Game" - QUIT_DESC:0 "Are you sure you want to exit Hearts of Iron IV?\n\nAny unsaved progress will be lost." - RESIGN_TITLE:0 "Resign Game" - RESIGN_DESC:0 "Are you sure you want to resign and return to the main menu?\n\nAny unsaved progress will be lost." - BASE:0 "Base:" - DEPLOYMENT_SELECT_AREA:0 "§GClick§! on a green province to deploy selected units." - CONVEYOR_ASSIGN_LOCATION_SELECT_DMZ_AREA:0 "Can not §RDeploy§! divisions in demilitarized zone." - CONVEYOR_ASSIGN_LOCATION_SELECT_AREA:1 "Any green province can be selected as a deployment location.\n\n§GClick§! to select $PROV$." - CONVEYOR_ASSIGN_LOCATION_SELECT_HOME_AREA:0 "§RCannot deploy here§!\nDeployment is not allowed outside home area" - CONVEYOR_ASSIGN_ORDER_SELECT_AREA:1 "§GClick§! on a map order or leader portrait to assign deployment." - AND:0 "and " - RANDOM_LIST_EFFECT:0 "§TOne of $SIZE|H$ options will happen.§!\n" - RANDOM_EFFECT:0 "§T$CHANCE|%0H$ chance of §!" - ---_democratic:0 "any democratic country" - ---_fascist:0 "any fascist country" - ---_communist:0 "any communist country" - DETAILS:0 "Details" - EQUIPMENT_DETAILS:0 "Equipment details" - SUNK_SHIP_DETAILS:0 "Lost ships" - SUNK_SHIPS:0 "Lost Ships" - OWNER:0 "State Owner" - OR:0 "or" - CLICK_DETAILS:1 "§GClick for details\nShift+Click to open multiple windows§!" - SELECT_ALL:0 "Select All" - DESELECT_ALL:0 "Deselect All" - STATE_PROVINCE:0 "Province" - STATE_PROVINCE_PLUS_TAG:0 "Province $TAG$" - STATE_PROVINCE_PLUS_TAG_OCCUPIED:0 "§RProvince $TAG$§!" - STATE_PROVINCE_DESC:0 "This province is controlled by its owner, $CONTROLLER|H$" - STATE_PROVINCE_OCCUPIED_DESC:0 "This province is occupied by $CONTROLLER|H$" - UNASSIGN:0 "Unassign" - ACTIVE_IN:0 "§TActive in:§!" - BUTTON_DETAILS:0 "Details" - BUTTON_OK:0 "Ok" - CONFIRM_START_TRAINING:0 "Start Exercise" - CONFIRM_START_TRAINING_DESC:1 "Do you want this army to start a military exercise?\nUnits will slowly gain experience while conducting an exercise and it will also add national military experience. Units cannot progress past $MAX|Y$ from exercise. Setting an army to exercise will lower each units' org until the exercise stops. Units in exercise cannot move and suffer $ATTRITION|R%0$ attrition." - CONFIRM_STOP_TRAINING:0 "Stop Exercise" - CONFIRM_STOP_TRAINING_DESC:1 "Do you want this army to stop the exercise?\nYou won't gain anymore experience and the units will slowly regain their org." - TRAINING_ATTRITION:0 "Exercise: $VALUE$" - UNITS_VIEW_BTN_TRAIN_UNITS_TOOLTIP:1 "Click to start an §Gexercise§! with this army. The units will consume equipment while gaining Experience. Your country will also gain £army_experience Army Experience from each unit whose Experience Level is at least $VAL|Y$ - $NAME|Y$" - UNITS_VIEW_BTN_TRAIN_UNITS_TOOLTIP_SHIFT_CLICK_INFO:0 "Shift Click to start an §Gexercise§! that will last until all units are trained." - UNIT_LEVEL_0:0 "Green" - UNIT_LEVEL_1:0 "Trained" - UNIT_LEVEL_2:0 "Regular" - UNIT_LEVEL_3:0 "Seasoned" - UNIT_LEVEL_4:0 "Veterans" - SHIP_LEVEL_0:0 "Fresh" - SHIP_LEVEL_1:0 "Trained" - SHIP_LEVEL_2:0 "Regular" - SHIP_LEVEL_3:0 "Seasoned" - SHIP_LEVEL_4:0 "Veterans" - AIR_WING_LEVEL_0:1 "Rookies" - AIR_WING_LEVEL_1:0 "Trained" - AIR_WING_LEVEL_2:0 "Regular" - AIR_WING_LEVEL_3:0 "Seasoned" - AIR_WING_LEVEL_4:0 "Veterans" - AIR_WING_XP_BONUS_NONE:0 "§HNo bonus from experience§!" - AIR_WING_XP_BONUS_HEADER:1 "§HThis gives the following effects:§!" - AIR_WING_XP_BONUS_NEXT_LEVEL:0 "Experience progress to next level: $EXP|Y%0$" - AIR_WING_XP_TRAINING_DAILY_PROGRESS:1 "Daily experience progress to next level from §YPilot Exercises§!: $EXP|Y%1$" - AIR_WING_XP_TRAINING_MAX_REACHED:1 "This §YAir Wing§! cannot gain additional experience from §YPilot Exercises§!." - AIR_WING_XP_LOSS_INFO:0 "When the §YAir Wing§! takes damage it loses experience. The loss is reduced by $FRIENDLY|+%0$ over friendly territory." - NAVY_XP_BONUS_NONE:0 "§HNo bonus from experience§!" - NAVY_XP_BONUS_HEADER:1 "§HThis gives the following effects:§!" - EXP_TOOLTIP:0 "Experience Level $NUMBER$ - $LEVEL|Y$" - EXP_TOOLTIP_ARMY:0 "Experience Level $NUMBER$ - $LEVEL|Y$\nThis gives a $COMBAT$ modifier in combat.\nExperience progress to next level: $EXP|Y%0$" - EXP_DETAILS:1 "Experience progress to next level: $EXP|Y%0$" - EXP_COMBAT_BONUS:1 "Combat experience bonus: $EFFECT|+=%0$" - EXP_TRAINING_BONUS:2 "Training experience bonus: $EFFECT|+=%0$" - CANNOT_EXECUTE_ORDERS_WHILE_TRAINING:1 "This army is currently conducting an §Yexercise§! and cannot execute any orders. Stop the exercise if you want to be able to execute their orders." - UNIT_COUNTER_TOOLTIP:0 "$DIVISION|H$" - FOCUS_TREE_VIEW_HEADER:0 "$COUNTRY$ Focus Tree" - CONTINUOUS_FOCUS_TREE_HEADER:0 "Continuous Focuses" - CONTINUOUS_FOCUS_TREE_DESC:0 "Remains active until you change focus again" - CONTINUOUS_FOCUS_LOCKED_DESC:0 "§RUnlock $LEFT|H$ more focuses§!" - CONTINUOUS_FOCUS_UNLOCKED_DESC:0 "§GContinuous focuses unlocked§!" - START_FOCUS:0 "Start" - STOP_FOCUS:0 "Stop" - CANCEL_FOCUS:0 "Cancel" - FOCUS_IN_PROGRESS:0 "You are already focusing on this!" - FOCUS_OTHER_IN_PROGRESS:0 "You're currently focusing on $FOCUS|Y$. You need to wait for that Focus to complete before selecting a new one." - FOCUS_ALREADY_COMPLETE:0 "This Focus has already been completed." - FOCUS_CAN_START:0 "§GClick to start focusing on this.§!" - FOCUS_CANNOT_START:0 "§RYou don't meet the requirements!§!" - FOCUS_CANNOT_START_CAPITULATED:0 "§RNot available when your country has capitulated!§!" - FOCUS_CANNOT_BE_CANCELLED_MANUALLY:0 "§RCannot be cancelled manually§!" - FOCUS_CANNOT_BYPASS:0 "§RCannot bypass a focus while a mutually-exclusive focus is in progress§!" - FOCUS_CANCEL_BUTTON_DESC:0 "§HClick to cancel this focus.§!\n$DAYS|0H$ §Hdays§! progress will be saved." - FOCUS_STATUS_IN_PROGRESS:0 "Progress $CURR|Y0$/$TOT|0Y$ days " - CONTINUOUS_FOCUS_ACTIVE_STATUS:0 "Active" - CONTINUOUS_FOCUS_NOT_ACTIVE_STATUS:0 "Not Active" - WHEN_FOCUS_COMPLETED:0 "and when completed:\n" - FOCUS_STATUS_COMPLETED:0 "Completed" - FOCUS_STATUS_COST:0 "$TOT|0$ days" - FOCUS_STATUS_TOOLTIP:0 "Completion Time: $DAYS|0H$ days" - FOCUS_STATUS_COMPLETED_TOOLTIP:0 "§GCompleted§!" - FOCUS_STATUS_INPROGRESS_TOOLTIP:0 "Completion Time: $DAYS|0H$ days. ($LEFT|0H$ days left)" - FOCUS_STATUS_INPROGRESS_NO_INTEL_TOOLTIP:0 "Not enough intel for current progress." - PROVINCE_CONTROL_TOOLTIP:0 "$TAG$$CONTROL|H$ controls this location in $NAME|H$." - PROVINCE_OWNED_TOOLTIP:0 "Location is originally owned by $TAG$$OWNED|H$." - PROVINCE_VP_TOOLTIP:2 "Victory Point(s): £victory_points $VALUE|G$ " - PROVINCE_PORT_TOOLTIP:1 "Naval base: §HYes§!" - PROVINCE_PORT_TOOLTIP_LEVEL:1 "Naval base: $LEVEL|H$" - PROVINCE_AIRBASE_TOOLTIP:1 "Air base capacity: $CAPACITY|H$" - PROVINCE_ROCKET_TOOLTIP:1 "Rocket site capacity: $CAPACITY|H$" - PROVINCE_TERRAIN_TOOLTIP:0 "Terrain: $NAME|Y$" - PROVINCE_WEATHER_HEADER:0 "Weather:" - PROVINCE_CLICK_VIEW:0 "§GClick§! to §Yview State§!." - PROVINCE_UNIT_MOVE_NO_TIME:1 "§RThere is no available land route to this province.§!" - PROVINCE_UNIT_MOVE_NO_RAILWAY:1 "§RThere is no available converted railway route to this province.§!" - PROVINCE_UNIT_ATTACK_FROM_NEUTRAL:0 "§RArmies cannot attack the enemy from the neutral country.§!" - PROVINCE_UNIT_CLICK:3 "§GRight-click§! to order the $UNIT_TYPE_PLURAL$ to §Ymove here§!." - PROVINCE_UNIT_SAFE_STRATEGIC_REDEPLOYMENT:0 "Armies §RCannot§! move to the enemy territory in strategic redeployment mode." - PROVINCE_UNIT_CTRL_CLICK:2 "§GCtrl + Right-click§! to order the Divisions to §Ysupport attack§! here." - PROVINCE_UNIT_MOVE_HOURS:4 "First $UNIT_TYPE$ arrival in: $HOURS|Y$ §Yhour(s)§!." - PROVINCE_UNIT_MOVE_DAYS_HOURS:4 "First $UNIT_TYPE$ arrival in: $DAYS|Y$ §Yday(s)§! and $HOURS|Y$ §Yhour(s)§!." - UNIT_VIEW_MOVE_HOURS:0 "Will arrive at final location in $HOURS|Y$ §Yhour(s)§!" - UNIT_VIEW_MOVE_DAYS_HOURS:0 "Will arrive at final location in $DAYS|Y$ §Yday(s)§! and $HOURS|Y$ §Yhour(s)§!" - UNIT_COUNTER_MOVE_HOURS:0 "Will arrive at next location in $HOURS|Y$ §Yhour(s)§!" - UNIT_COUNTER_MOVE_DAYS_HOURS:0 "Will arrive at next location in $DAYS|Y$ §Yday(s)§! and $HOURS|Y$ §Yhour(s)§!" - MOVING_STRATEGIC_REDEPLOYMENT:1 "Strategic redeployment mode.\nSpeed: $VALUE|H1$ km/h\n Base: $BASE|H1$ km/h\n Infrastructure addition: $ADD|=G1$ km/h." - MOVING_STRATEGIC_REDEPLOYMENT_RAIL:0 "Strategic redeployment mode.\nSpeed: $VALUE|H1$ km/h\n Base: $BASE|H1$ km/h\n Railway addition: $ADD|=G1$ km/h." - MOVING_STRATEGIC_REDEPLOYMENT_ORG:0 "Moving in strategic redeployment mode. While moving its organization is always set to $VALUE|H%$." - MOVING_NAVAL_TRANSFER_ORG:0 "Moving in naval transfer mode. While moving its organization is always set to $VALUE|H%$." - MOVING_AMPHIBIOUS_INVASION:0 "Division is doing amphibious invasion. Its speed is set to $VALUE|H$ km/h." - NAVAL_TRANSFER_MOVING:0 "Division is doing naval transfer.\nSpeed: $VALUE|H$ km/h\nBase: $BASE|H$ km/h\nNaval movement modifier: $NAVAL|H%$." - ZERO_ORG_MOVEMENT_MODIFIER:1 "Low Organization: $VALUE|+%$" - MOVEMENT_SPEED_DESC:0 "Speed: $VALUE|H$ km/h\nBase: $BASE|H$ km/h" - COMBAT_SPEED_MODIFIER:1 "In Combat: x$VALUE|H%$" - TERRAIN_SPEED_MODIFIER:2 "$NAME$: $VALUE|+=%$" - FORT_SPEED_MODIFIER:0 "Fort: $VALUE|+=%$" - RIVER_MODIFIER:1 "River: $VALUE|+=%$" - LARGE_RIVER_MODIFIER:1 "Large river: $VALUE|+=%$" - AIR_SUPERIORITY_SPEED_MODIFIER:1 "Air superiority: $VALUE|+=%$" - SUPPLY_SPEED_MODIFIER:1 "Supply: $VALUE|+=%$" - NON_CORE_SUPPLY_SPEED_MODIFIER:2 "No connection to supply network: $VALUE|+=%$" - NON_CORE_SUPPLY_AIR_SPEED_MODIFIER:2 "No connection to supply network (supplied by air drops): $VALUE|+=%$" - INFRASTRUCTURE_SPEED_MODIFIER:1 "Infrastructure: $VALUE|+=%$" - RETREAT_SPEED_MODIFIER:1 "Retreat: $VALUE|+=%$" - WITHDRAW_SPEED_MODIFIER:1 "Withdrawing: $VALUE|+=%$" - TERRAIN_MOVE_COST:1 "" - TRAINING_ARMY_ORG:1 "This Division is conducting §HArmy Exercises§!. While exercising, its organization is always set to $VALUE|H%$" - TRAINING_NAVY_ORG:0 "This task force is conducting §HNaval Exercises§!. While exercising, its current organization is capped to $VALUE|H%$" - MOVING_TO_ENEMY_TERRITORY:1 "Unit is moving towards enemy territory." - MOVING_TO_FRIEND_TERRITORY:1 "Unit is moving towards friendly territory." - PROVINCE_UNIT_MOVE_NAVAL_MISSION:0 "§GRight-click§! to add the Area to the current mission." - UNIT_MOVING_HOURS:0 "The Unit will arrive in its destination in $HOURS|Y$ §Yhour(s)§!." - UNIT_MOVING_DAYS_HOURS:0 "The Unit will arrive in its destination in $DAYS|Y$ §Yday(s)§! and $HOURS|Y$ §Yhour(s)§!." - UNIT_MOVING_DAYS_HOURS_NONPLAYER:0 "The Unit will arrive in the next province in $DAYS|Y$ §Yday(s)§! and $HOURS|Y$ §Yhour(s)§!." - UNIT_MOVING_HOURS_NONPLAYER:0 "The Unit will arrive in the next province in $HOURS|Y$ §Yhour(s)§!." - FOCUS_EXCLUSIVE_SINGLE:0 "This Focus can only be selected if you don't already have $FOCUS$" - HAS_NOT_EXCLUSIVE:0 "$NAME|G$" - HAS_EXCLUSIVE:0 "$NAME|R$" - HAS_NOT_EXCLUSIVE_LIST:0 " $NAME|G$\n" - HAS_EXCLUSIVE_LIST:0 " $NAME|R$\n" - FOCUS_EXCLUSIVE_LIST:0 "This Focus can only be selected if you don't already have any of the following:\n" - UNLOCK_FOCUS_EFFECT:0 "$WHO|H$ unlocks focus $LIST|H$" - UNLOCK_COMPLETE_EFFECT:0 "$WHO|H$ completes focus $LIST|H$" - UNCOMPLETE_FOCUS_EFFECT:0 "$WHO|H$ uncompletes focus $LIST|H$" - TECH_LIMITED_BONUS:0 "$VAL|%0$" - HISTORICAL_FOCUS:0 "This focus was part of the historical path." - alert_select_focus_instant:0 "§HNo national focus set§!" - alert_select_focus_delayed:0 "You should select a new focus for your nation." - alert_battleplans_with_no_divs_instant:0 "§HBattle plans with no units assigned.§!" - alert_battleplans_with_no_divs_delayed:0 "§HYou should assign some divisions to the battleplans.§!" - FOCUS_REWARD:0 "Effect" - FOCUS_REWARD_TOOLTIP:0 "§HEffect§!:" - FOCUS_SINGLE_PREREQ:0 "§RRequires $FOCUS$§!" - FOCUS_SINGLE_PREREQ_HAS:0 "§GRequires $FOCUS$§!" - FOCUS_MIX_PREREQ_HEADER:0 "§HRequires all of the following:\n§!" - FOCUS_MIX_AND_PREREQ:0 "§R- $FOCUS$\n§!" - FOCUS_MIX_AND_PREREQ_HAS:0 "§G- $FOCUS$\n§!" - FOCUS_NO_PREREQ:0 "No national focus prerequisites" - FOCUS_SINGLE_OR_PREREQ_HEADER:0 "§HRequires one of the following:\n§!" - FOCUS_SINGLE_OR_PREREQ:0 "§R- $FOCUS$\n§!" - FOCUS_SINGLE_OR_PREREQ_HAS:0 "§G- $FOCUS$\n§!" - FOCUS_AND_PREREQ_HEADER:0 "§HRequires all of the following:\n§!" - FOCUS_AND_PREREQ:0 "§R- $FOCUS$\n§!" - FOCUS_AND_PREREQ_HAS:0 "§G- $FOCUS$\n§!" - FOCUS_MIX_OR_PREREQ_HEADER:0 "§R- One of the following:\n§!" - FOCUS_MIX_OR_PREREQ_HEADER_HAS:0 "§G- One of the following:\n§!" - FOCUS_MIX_OR_PREREQ:0 " $FOCUS|R$\n" - FOCUS_MIX_OR_PREREQ_HAS:0 " $FOCUS|G$\n" - HAS_EXCLUSIVE_FOCUS:0 "§RCannot have this and $FOCUS$§!" - FOCUS_WILL_PAUSE:0 "This Focus will pause if the requirements are not met." - FOCUS_WILL_CANCEL:0 "This Focus will cancel if the requirements are not met." - FOCUS_WILL_BYPASS_IF_UNAVAILABLE:0 "This Focus will bypass if the requirements are not met." - FOCUS_WILL_CONTINUE:0 "This Focus will continue even when the requirements are no longer met." - FOCUS_MESSAGE_UNLOCKED_TITLE:0 "National Focus Completed" - FOCUS_POPUP_NAME:0 "$FOCUS|H$" - FOCUS_FOUND:0 "$NUM$ Found" - FOCUS_FOUND_CYCLE:0 "$CUR$/$NUM$ Found" - FOCUS_FILTERED:0 "$NUM$ Filtered" - FOCUS_FILTERED_CYCLE:0 "$CUR$/$NUM$ Filtered" - FOCUS_TREE_FILTER:0 "Filters" - FOCUS_NOT_FOUND:0 "Not Found" - FOCUS_FILTER_LIST_TOOLTIP:0 "There are $NUM|H$ focuses that belong to this filter: $NAMES$" - FOCUS_SEARCH_TOOLTIP:0 "§HFocus Tree Search §!\n\nEnter a text to search in focus names and descriptions.\n\n£tab : Cycle through found focuses.\n£RETURN : Open detail window for current focus." - FOCUS_FILTER_TOOLTIP:0 "§HFocus Tree Filters§!\n\n§GClick§! to toggle focus tree filters menu.\n\nOnce a filter is selected, you can use £tab£ key to cycle through filtered focuses." - FOCUS_ZOOM_SLIDER_TOOLTIP:1 "Click or use §GMouse Wheel§! to zoom in/out focus tree" - AUTO_COMPLETE_FOCUS_HEADER:0 "Bypassed since:\n" - CANCEL_FOCUS_HEADER:0 "Abandoned since:\n" - FOCUS_CANCEL:0 "\n§HWill be abandoned if:\n§!" - FOCUS_CANCEL_HEADER:0 "§HWill be abandoned if:\n§!" - FOCUS_MESSAGE_CANCELED_TITLE:0 "§RNational Focus Canceled§!" - FOCUS_MESSAGE_BYPASSED_TITLE:0 "National Focus §YBypassed§!" - POLITICS_SELECT_FOCUS:0 "Select a National Focus" - CURRENT_FOCUS:0 "$FOCUS|H$" - BYPASS_FOCUS_TRIGER:1 "The following will bypass the focus:" - BYPASS_FOCUS:1 "Bypass" - DIPLOMACY_CREATE_FACTION_OPP_IDEO:0 "$COUNTRY$ must be $IDE$ to be in a faction with us.\n" - DIPLOMACY_NOT_ENOUGH_IDEOLOGY_POPULARITY:0 "$NAME|H$ requires the joining country to have $IDEOLOGY|H$ popularity greater than $MIN|H%0$ (currently $CUR|H%0$)" - CLICK_OPEN_FOCUS:0 "\n\n§GClick to show your focus tree§!" - FOCUS_DAYS_SAVED:0 "Saved $DAYS|0H$ of $TOTAL|0H$ days.\nPicking a focus will use $VALUE|0H$ £pol_power£" - CLICK_OPEN_FRIEND_FOCUS:0 "\n\n§GClick to show focus tree§!" - RESEARCH_BONUS_USED:0 "Will consume research bonus from $NAME|H$ ($BONUS$). Only one bonus is used for each research.\n" - RESEARCH_BONUS:0 "$NAME|H$ ($BONUS$) could also apply.\n" - RESEARCH_BONUS_VALUE:2 "$BONUS|%0H$ research speed" - RESEARCH_BONUS_PENALTY:1 "$BONUS|.1H$ years of ahead of time penalty reduction" - MORE_TECH_BONUSES:0 "+ $COUNT|H$ more bonuses." - TOGGLE_ALLIED_BATTLEPLANS:0 "Allied Battle Plans" - TOGGLE_ALLIED_BATTLEPLANS_EXPLAIN:1 "Toggle displaying §YBattle Plans§! for our §Yallies§!." - TOGGLE_ALLIED_BATTLEPLANS_NO_ALLIES:1 "§RWe are currently not allied with anyone.§!" - TOGGLE_ALLIED_BATTLEPLANS_LIST:1 "We are allied with the following countries:" - TOGGLE_ALLIED_BATTLEPLANS_LIST_ENTRY:1 "\n - $FLAG$ $NAME|Y$" - TOGGLE_UNIT_COUNTER_MODE:1 "Toggle §Yunit color§! between:\n§YCountries§! or §YAllegiance§!" - TOGGLE_NIGHT_ENABLED:1 "Toggle displaying the §Yday/night§! loop." - TOGGLE_FOG_OF_WAR:0 "Toggle displaying §Yfog of war§!" - TOGGLE_RADAR:0 "Toggle displaying §YRadars§!" - TOGGLE_PLAYER_COUNTERS_ONLY:1 "Toggle displaying §Yunit counters§! between:\n§YAll§! or §YPlayers's§!" - DIPLOMACY_SEND_EXP_FORCE_TITLE:0 "Expeditionary Force" - DIPLOMACY_SEND_VOLUNTEERS_TITLE:0 "Send Volunteers" - EXP_MULTIPLE_DIVISIONS:0 "$COUNT$/$TOTAL$ Divisions" - EXP_SINGLE_DIVISION:0 "1 Division" - VOL_MULTIPLE_DIVISIONS:0 "$COUNT$ Divisions" - VOL_SINGLE_DIVISION:0 "1 Division" - SEND:0 "Send" - UNASSIGNED_EXPEDITIONARY_UNITS:1 "No Army" - DIPLOMACY_RETURN_EXP_FORCE_TITLE:0 "Return Expeditions" - DIPLOMACY_RETURN_EXP_FORCE_ACTION_DESC:0 "Gain control over all expeditionary forces sent to them." - RETURN_ALL_EXPEDITIONARY_FORCES_NO_FORCES:0 "You don't have any expeditionary forces in their country." - CAN_GENERATE_FAMALE_ACES:0 "Women in your country are allowed to become military pilots" - CAN_USE_KAMIKAZE_PILOTS:0 "Can use kamikaze pilots" - CAN_LOWER_TENSION:0 "Lowers World Tension with Guarantees" - CAN_CREATE_FACTIONS:0 "Can Create Factions" - CAN_JOIN_OPPOSITE_FACTIONS:0 "Can Join Factions led by another Ideology" - CAN_OCCUPY_NON_WAR:0 "Can hold territory owned by a country they are not at war with" - CAN_DECLINE_CALL_TO_WAR:0 "Can decline call to war" - CAN_NOT_DECLARE_WAR:0 "Can not declare wars" - CAN_BE_CALLED_TO_WAR:0 "This nation is not in the war but can be called into it" - UNITS_DEPLOYED_TO_OVERLORD:0 "Control over deployed units go to overlord" - CONFIRM_SAVEGAME_TITLE:0 "Overwrite Save Game" - CONFIRM_SAVEGAME_DESC:0 "Are you sure you want to overwrite $NAME|Y$?" - DIPLOMACY_CREATE_FACTION_NOT_RULE:0 "You can not create factions without having the national spirit to do so." - FLEET_OUT_OF_RANGE_TOOLTIP_HEADER:0 "§ROut of naval range§!" - FLEET_OUT_OF_RANGE_TOOLTIP_ALL_SHIPS:1 "\n §RSelected task forces can't move here.§!" - FLEET_OUT_OF_RANGE_TOOLTIP_SOME_SHIPS:1 "\n $NUM|Y$/$MAX|Y$ §Rof selected task forces, can't move here.§!" - FLEET_OUT_OF_RANGE_TOOLTIP:1 "\n Asking other countries for the §YMilitary access§! or §YDocking rights§!, as well as §YFaction members§! will give us the access to their naval bases.\nTop nearest naval bases:\n$LIST$" - FLEET_OUT_OF_RANGE_TOOLTIP_ENTRY:0 " $FLAG$ $NAME$ nearest naval base $DIST|G0$ km.\n" - FLEET_OUT_OF_RANGE_TOOLTIP_ENTRY_ZERO_DIST:0 " $FLAG$ $NAME$ nearest naval base §Gis adjacent§!\n" - FLEET_OUT_OF_RANGE_TOOLTIP_ENTRIES_NONE:0 "§RNone§!\n" - WE:0 "We" - SEARCH:0 "Search" - RELEASE_AS_PUPPET:0 "Release as puppet" - PLAY_AS:0 "Play as" - ORG_HIT_WHEN_ADVANCING:0 "Moving: $VAL|=+%2$\n" - ORG_HIT_NON_RATIO_WHEN_ADVANCING:0 "Moving: $VAL|=+2$\n" - ORG_HIT_WHEN_ADVANCING_WITH_MOD:0 "Moving: $VAL|=+%2$ ($MOD$)\n" - ORG_HIT_WHEN_OOS:0 "Out of Supply: $VAL|=+2$\n" - LOW_ORG_REGAIN:0 "Low Organization: $VAL|=+%2$" - HIGH_ORG_REGAIN:0 "High Organization: $VAL|=+%2$" - WEATHER_ORG_IMPACT:0 "Weather: $VAL|=+%2$\n" - RELIABILITY_ORG_IMPACT:0 "Reliability: $VAL|=+%2$\n" - NOT_AVAILABLE_IN_BUILD:0 "§RNot available in this build.§!" - COMBAT_ICON_PROGRESS:0 "$VAL|0$" - MODIFIER_BASE_VALUE:0 "Base value: $VALUE|H0$" - MODIFIER_BASE_VALUE_PERCENTAGE:0 "Base value: $VALUE|H0%$" - MODIFIER_BASE_VALUE_STR:0 "Base value: $VALUE$" - POSITIVE_VALUE_HOUR:1 "$VALUE|G0$ §HH§!" - NEGATIVE_VALUE_HOUR:1 "$VALUE|R0$ §HH§!" - NEUTRAL_VALUE_HOUR:1 "$VALUE|H0$ §HH§!" - POSITIVE_VALUE:0 "$VALUE|G0$" - NEGATIVE_VALUE:0 "$VALUE|R0$" - NEUTRAL_VALUE:0 "$VALUE|H0$" - POSITIVE_VALUE_PERCENTAGE:0 "$VALUE|G0%$" - NEGATIVE_VALUE_PERCENTAGE:0 "$VALUE|R0%$" - NEUTRAL_VALUE_PERCENTAGE:0 "$VALUE|H0%$" - DEFAULT_DIV_TEMPL_SYMBOL:0 "Default symbol" - DIV_TEMPL_SYMBOL_TOOLTIP:0 "§GClick§! to change the division template §Ysymbol§!." - NAVAL_HISTORY_ASSISTED_KILL:0 "Assisted in sinking $NAME|Y$ ($SHIPCLASS|Y$)" - NAVAL_HISTORY_KILLED:0 "Sunk $NAME|Y$ ($SHIPCLASS|Y$)" - NAVAL_STATS_LABEL:0 "Stats" - NAVAL_HISTORY_LABEL:0 "History" - NAVAL_TERRAIN_LABEL:0 "Terrain" - NAVAL_DESIGN_LABEL:0 "Design" - NAVAL_COMBAT_RESULT_HEADER:0 "§HNaval Battle§!" - PORT_STRIKE_RESULT_HEADER:1 "§HPort Strikes§!" - NAVAL_COMBAT_RESULT_HEADER_DATE:0 " ($DATE$) " - PORTS_STRIKE_HEADER_DATE:0 " (latest:$DATE$) " - NAVAL_COMBAT_RESULT_PARTICIPANTS:0 "($A$ vs $D$)\n" - NAVAL_COMBAT_RESULT_LOSSES:1 " $WHO$ §Wlost§! $NAME$\n" - NAVAL_COMBAT_RESULT_LOSSES_BY_COUNT:1 "$NUM|H$x $WHAT|Y$" - NAVAL_COMBAT_RESULT_DISPATCH_HOTKEY:1 "§GRight click§! to §Rdismiss§! all battle results." - NAVAL_COMBAT_RESULT_DISPATCH_TITLE:0 "Dispatch battle results." - NAVAL_COMBAT_RESULT_DISPATCH_DESC:0 "Are you sure that you wish to dispatch all battle results in that location?" - NAVAL_COMBAT_RESULT_DISPATCH_IN_LOCATION_DESC:0 "Are you sure that you wish to dispatch all battle results in that location?" - CONFIRMDISMANTLE_FACTION_TEXT:0 "Are you sure you want to §RDismantle§! the $NAME|H$ Faction?" - NAVY_REINFORCE_CANCEL_TITLE:0 "Cancel reinforcement task." - NAVY_REINFORCE_CANCEL_DESC_ONE:0 "$FLEET|H$ is heading to $TARGET|H$ to merge with them.\nDo you want to abort this task?" - NAVY_REINFORCE_CANCEL_DESC_MULT:0 "$NUM|H$ fleets are heading to their original task forces to merge with them.\nDo you want to abort this task?" - NAVY_REFIT_ABORT_TITLE:0 "§RAbort§! refitting task." - NAVY_REFIT_ABORT_DESC:0 "Selected task forces are currently refitting with progress:\n$PROGRESS_LIST$\nAt this stage, the ships are not seaworthy. You can only wait till refitting is complete, or you can §Rscuttle§! them.\nDo you want to §Rscuttle§! $NUM_SHIPS|H$ ships?\nIt is irreversible!" - NAVY_REFIT_PROGRESS_LIST_ENTRY:0 " $SHIP|H$: $PROGRESS|%1$\n" - NAVY_REFIT_PROGRESS_LIST_ENTRY_COMPLETE:0 " $SHIP|H$: §GComplete§!\n" - NAVY_REFIT_ABORT_CONFIRM_BUTTON_TEXT:0 "§RScuttle§!" - NAVY_REFIT_CANCEL_TITLE:0 "Cancel refitting task." - NAVY_REFIT_CANCEL_DESC:0 "Selected task forces are currently refitting with progress:\n$PROGRESS_LIST$\nThe progress will be lost.\nDo you want to abort this task?" - NAVY_REFIT_CANCEL_DESC_ONE:0 "$FLEET|H$ is heading to $TARGET|H$ to refit.\nDo you want to abort this task?" - NAVY_REFIT_CANCEL_DESC_MULT:0 "$NUM|H$ fleets are heading to naval bases to refit.\nDo you want to abort this task?" - NAVY_REPAIR_CANCEL_TITLE:1 "Cancel repair task." - NAVY_REPAIR_CANCEL_ALLY_SHIP:1 "Aborting the repairs of an ally ship will cancel repairs and will force its taskforce to move to the one of its own ports." - NAVY_REPAIR_CANCEL_ONE_SHIP:1 "Aborting the repairs will put its parent taskforce on §RNever Repair§! setting." - DO_YOU_WANT_TO_CONTINUE:0 "Do you want to continue?" - NAVY_REPAIR_CANCEL_DESC_ONE_IN_BASE:0 "$FLEET|H$ is currently repairing in $TARGET|H$.\nDo you want to abort this task?" - NAVY_REPAIR_CANCEL_DESC_ONE:0 "$FLEET|H$ is heading to $TARGET|H$ to repair.\nDo you want to abort this task?" - NAVY_REPAIR_CANCEL_DESC_MULT:0 "$NUM|H$ fleets are heading to naval bases to repair.\nDo you want to abort this task?" - NAVY_REPAIR_CANCEL_DESC_REUNITE:1 "\nThey will return and merge with the task force they are detached from." - NAVY_REPAIR_CANCEL_DESC_WARN_ON_POLICY:0 "\n§RBeware§! that $FLEET|H$ may send those ships back, unless you change the repair policy to §RNever repair§!." - NAVY_REPAIR_BECAUSE_OF_REFIT_CANCEL_NOTIFY:0 "The ship is repairing because it has scheduled refitting process. Cancelling the reparation will also cancel the refitting task." - NAVY_FORMATION_SPREAD:0 "Formation Spread: $VALUE|H%0$ ($TYPE|H$)" - NAVY_FORMATION_SPREAD_DESC:0 "Formation spread is how much the fleet has spread out over the mission area. The more the ships are spread out, the higher chance they have to spot the enemy, but fewer ships will be able enter combat initially." - NAVY_NAME_DETACHMENT_POSTFIX:0 " - (Detached)" - NAVY_REPAIR_POLICY_0:1 "§RNever repair.§!\nThe task force will never decide to return to the home base on its own." - NAVY_REPAIR_POLICY_1:1 "§RRepair priority - Low.§!\nThe task force will decide to return to a naval base if the ships have suffered §RSevere§! damage." - NAVY_REPAIR_POLICY_2:1 "§YRepair priority - Medium.§!\nThe task force will decide to return to a naval base if the ships have suffered §RMedium§! damage." - NAVY_REPAIR_POLICY_3:1 "§GRepair priority - High.§!\nThe task force will decide to return home if the ships have suffered §RLight§! damage." - NAVY_REPAIR_POLICY_DESC:1 "The repair-and-return system allows sending damaged ships home for repairs, without player action. The priority setting lets the player to choose what is more important...\nCarry on the mission at any cost?\nOr, survive at any cost?" - NAVY_REPAIR_POLICY_BLOCK_BECAUSE_DETACHED:0 "§RChanging the repair policy is not possible for detached task forces§!" - NAVY_REPAIR_POLICY_CLICK_TO_CHANGE_TO:0 "§GClick§! to change to: " - NAVY_REPAIR_POLICY_SPLIT:0 "§HAutomatic split off§! is now $ON_OFF|H$.\n" - NAVY_SPLIT_TASKFORCE_IN_HALF:0 "Split the selected task force in half" - NAVY_SPLIT_TASKFORCE_IN_HALF_TOO_SMALL:0 "§RThe task force is too small to be split§!" - NAVY_DOCKYARD_REPAIR_POLICY_DISABLED:0 "§RNever repair§!" - NAVY_DOCKYARD_REPAIR_POLICY_0:0 "§RNever repair§!" - NAVY_DOCKYARD_REPAIR_POLICY_1:0 "§RRepair priority - Low§!" - NAVY_DOCKYARD_REPAIR_POLICY_2:0 "§YRepair priority - Medium§!" - NAVY_DOCKYARD_REPAIR_POLICY_3:0 "§GRepair priority - High§!" - NAVY_DOCKYARD_REPAIR_POLICY_INFO:1 "The Naval Bases with higher priority will grab dockyards first for their repairs. \n\n§GClick§! to change repair priority. §GRight - Click§! to change disable or enable dockyard for repairs." - NAVY_ALLY_DOCKYARD_REPAIR_INFO:0 "This Naval Base is controlled by an ally and dockyards required for repairs will be supplied by them and only they can change the naval base settings.\n\n§GClick§! to change disable or enable dockyard for repairs." - ENABLED:0 "Enabled" - DISABLED:0 "Disabled" - FIND:0 "Find" - TYPE_HERE:0 "Type here" - GOTO_CAPITAL:0 "Go Home" - NAVY_REPAIR_POLICY_SPLIT_DESC:2 "The §YAllow to split§! option allows the most heavily damaged ships to detach and return to a close by naval base for repairs while the rest of the task force continues its mission.\nThe detached ships are very vulnerable to attack while they return.\nAfter completing repairs, the ships will return to their assigned task forces.\n\nThe amount of ships detached depends on the repair priority setting as well as the damage to each individual ship." - NAVY_REPAIR_NOW_CANCEL:1 "§RCancel§! the repair task." - NAVY_REPAIR_NOW_CANCEL_RETURN:0 "\nReturn and merge back with the $FLEET|H$." - ALL_TASK_FORCES_REPAIR_NOW:0 "§HRepair now!§!\nAll the selected task forces will return to the home base for repairs.\n§GClick§! to send. They will resume their current tasks after they are fully repaired.\n§GCtrl+Click§! to send. They will stay in the naval base after that." - NAVY_REPAIR_NOW:3 "§HRepair now!§!\nThe task force will return to a close by naval base for repairs.\n§GClick§! to send. It will come back to the current task after it is fully repaired.\n§GCtrl+Click§! to send. It will stay in the naval base after that." - SHIP_REPAIR_NOW:3 "§HRepair now!§!\nThe ship will detach as a separate task force and return to a close by naval base for repairs.\nIt will come back to its current task force once it is fully repaired.\n§GClick§! to detach.\n§GShift+Click§! to mark multiple ships and detach them as one task force on releasing §GShift§!." - SHIP_REPAIR_NOW_WITHOUT_DETACHING:0 "§HRepair now!§!\n§GClick§! to add ship to repair queue." - SHIP_REFIT_TOOLTIP:0 "§HRefit Ships§!\nRefit the selected ships to a different compatible ship design." - SHIP_REFIT_NO_SHIPS_TOOLTIP:0 "§RNo ships are currently selected.§!" - SHIP_REFIT_NO_COMPATIBLE_DESIGNS_TOOLTIP:0 "§RThere are no available ship designs that are valid refit targets for all ships currently selected.§!" - SHIP_REFIT_UPGRADE_TOOLTIP:0 "§HUpgrade Ship§!\nRefit this ship to use an improved design." - SHIP_REFIT_TOOLTIP_DELAYED:1 "After choosing the target ship design, selected ships will detach as a separate §HTask Force§! and return to a nearby §HNaval Base§! for refitting. While refitting, progress can be tracked in the production window.\n\nThey will come back to their current §HTask Force§! once refitting is complete.\n\n§GShift + Click§! to select multiple ships.\n§GCtrl + Click§! to toggle ship selection." - SHIP_REFIT_CANCEL_TOOLTIP:1 "§RCancel§! refitting task." - SHIP_REFIT_CANCEL_TOOLTIP_DELAYED:0 "The ships will return to their original task force and resume their previous mission." - SHIP_REFIT_IN_PROGRESS_TOOLTIP:1 "This ship is currently being refit to a different ship design, $VARIANT_NAME|H$." - SHIP_REFIT_IN_PROGRESS_TOOLTIP_CAN_CANCEL:1 "\n\nIt is §Gallowed§! to cancel because it has not reached high enough progress yet." - SHIP_REFIT_IN_PROGRESS_TOOLTIP_CAN_NOT_CANCEL:0 "\n\nIt is §Rnot allowed§! to cancel because the progress is too much advanced. To abort you can only §Rscuttle§! the ship." - SHIP_REFIT_IN_PROGRESS_TOOLTIP_DELAYED:1 "Production progress can be monitored in the production window." - SHIP_REFIT_ON_THE_WAY:0 "Refitting: Heading to $TARGET|Y$" - SHIP_REFIT_PROGRESS:0 "Refitting: $PROGRESS|%1$" - SHIP_REINFORCING:0 "Reinforcing with: $TARGET|Y$" - SHIP_REPAIR_PROGRESS:0 "Repairing: $PROGRESS|Y%1$" - SHIP_REFIT_CONFIRM_TITLE:0 "Refit Ships" - SHIP_REFIT_CONFIRM_DESCRIPTION:0 "§HRefit the selected ships ($COUNT$) to the ship design $VARIANT_NAME|H$.§!\n\nThe ships will return to a nearby §HNaval Base§! and will be locked there until the process is complete. With maximum §HDockyards§! assigned, this will take up to $DAYS|H$ days to complete.\n\nIf the §HNaval Base§! where they are being refit is bombed, their production progress will be reduced. If captured, the ships will be lost to the enemy.\n\nAre you sure you want to refit?" - SHIP_OPEN_TASKFORCE_COMPOSITION_EDITOR:0 "Create a new task force from scratch" - SHIP_TYPE_DESC:0 "$TYPE$ ($VARIANT$)" - EXP_DAILY_GAIN:0 "Daily experience progress to next level from combat: $EXP|Y%2$" - CAN_USE_ROCKET_SITES_FOR_NUKES:0 "Can use Rockets for Nuclear Strikes" - NUKE_BUTTON_CLICK:0 "§GClick§! to drop a Nuclear Bomb" - NUKE_BUTTON_AIR_EQUIPMENT:0 "At least §Y1 $TYPE$§! in range." - NUKE_BUTTON_AIR_SUPERIORITY:0 "At least $VAL|H%$ Air Superiority in region." - NUKE_BUTTON_NUKES:0 "We have Nuclear Bombs" - NUKE_BUTTON_NOT_IN_PROGRESS:0 "No Nuclear Strike in Progress" - NUKE_PROGRESS_DESC:0 "The Bomb will be dropped in $HOURS|H$ hours." - NUKE_BUTTON_WAR_SUPPORT:1 "$COUNTRY|Y$ will lose $VALUE|H1%$ War Support" - NUKE_BUTTON_WAR_SUPPORT_DESC:0 "War Support impact will be largest in provinces with $INFRA|H$ §HInfrastructure§! and at least $VP|H$ Victory Points" - RMB_TO_SELECT_ALL:0 "§GRight click§! to select all." - LMB_TO_SELECT_ALL:0 "§GClick§! to select all." - COARSE_COUNTER_KNOWN_UNITS:0 "§HKnown units:§!" - COARSE_COUNTER_UNKNOWN_UNITS:0 "Insufficient Intel" - COARSE_COUNTER_ARMIES_DESC:0 "$ARMIES|H$ Divisions." - COARSE_COUNTER_NAVIES_DESC:0 "$SHIPS|H$ Ships in $NAVIES|H$ Fleets." - COARSE_COUNTER_RAILWAY_GUNS_DESC:0 "$RAILWAY_GUNS|H$ Railway guns." - WORLD_TENSION_NAME:0 "World Tension" - WORLD_TENSION_WARS:0 "Current Wars" - DATE_NAME:0 "Date" - SORT_BY_TENSION:0 "Sort by World Tension" - SORT_BY_DATE:0 "Sort by Date" - SORT_BY_COUNTRY:0 "Sort by Country" - SHOW_WARS:0 "Show all currently active Wars" - WAR_HAS_MAJOR:1 "War contains at least one Major Country" - CLICK_FOR_WAR_OVERVIEW:0 "Click to open the war overview for $WAR_NAME|Y$" - BROWSER_BACK:0 "Back" - BROWSER_FORWARD:0 "Forward" - BROWSER_RELOAD:0 "Reload" - BROWSER_FORUM:0 "Forum" - BROWSER_HOME:0 "Home" - RESEARCH:0 "Research" - RESEARCH_WITH_XP:0 "Research with XP" - UNLOCK_WITH_XP:1 "Unlock $XPICON$ $VALUE|Y0$" - BROWSER_LINK:0 "Cool Link Placeholder" - UNITS_VIEW_EXERCISING:1 "This Army Is Exercising" - UNITS_VIEW_EXERCISING_UNTIL_TRAINED:0 "This Army will be exercising until it is fully trained" - UNITS_VIEW_BORDER_CONFLICT:0 "This army is in a border conflict" - UNITS_DEFENDING_AREA:0 "This Army Is Defending Territory" - AREA_DEFENSE_REPLACE_OTHER:0 "Warning" - AREA_DEFENSE_REPLACE_OTHER_DESC:0 "If you draw an order with this tool, any other standing orders the group has will be removed." - DLC_IS_ENABLED:0 "$DLC|Y$ is enabled." - DLC_IS_NOT_ENABLED:0 "$DLC|Y$ is not enabled." - DLC_MISSING:0 "This game cannot be started until missing DLCs are enabled again:\n" - SAVED_GAME_RULES_DLC_MISSING:0 "Missing DLCs:\n" - DLC_MISSING_ITEM:0 "$NAME|R$" - MODS_MISSING:0 "Missing mods:\n" - DLC_POLISH_UNIT_PACK:0 "Polish unit pack" - DLC_TOGETHER_FOR_VICTORY:0 "Together for Victory" - SURRENDERED_TITLE:0 "$TAG_ADJ$ equipment seized" - SURRENDERED_DESC:0 "$TAG|H$ has capitulated giving us access to $VALUE|0H%$ of their stockpiled equipment" - SURRENDERED_OTHER:0 "Other" - SURRENDERED_SPECIAL_TITLE:1 "We also seized:" - SURRENDERED_SPECIAL_ITEM:0 "$AMOUNT|0H$ $EQUIPMENT|H$($TYPE|H$)" - SURRENDERED_SPECIAL_ITEM_WITHOUT_TYPE:1 "$AMOUNT|H$ $EQUIPMENT|H$" - from_trade:0 "From trade:" - owned:0 "Owned:" - CHAT:0 "Chat" - FORT:0 "Fort" - SYSTEM_SERVER_LOST:0 "Server Lost" - FE_CUSTOM_DIFFUCULTY:0 "Custom Difficulty" - GARRISON_ORDER_CONF:2 "Defense (Min. divisions: $REQ_DIVS|Y$)" - UNITS_VIEW_BTN_DRAW_BLITZ:0 "§HSpearhead§!\n§GRight-click and hold the mouse button§! on the map to draw §YSpearhead line§!.\nLines can be painted only on territory you have assigned a §HFront Line§! or §HNaval Invasion§! to.\n\nCompared to §YOffensive line§! a §YSpearhead§! will aggressively try to take all provinces as they were there when the order was first painted without adjusting to changes. Prefer §YSpearheads§! when you need to do overlapping encirclements, cutting off the enemy or for more controlled smaller thrusts into enemy territory." - UNITS_VIEW_BTN_DRAW_BLITZ_FRONT_LINE_FIRST:0 "§RYou have to create a Front line first.§!" - GARRISON_CONF_VP:0 "Guard Victory Points" - GARRISON_CONF_PORT:0 "Guard Naval Bases" - GARRISON_CONF_COAST:0 "Guard Coastline" - GARRISON_CONF_FORT:0 "Guard Forts" - GARRISON_CONF_AIRBASE:0 "Guard Airbases" - GARRISON_CONF_RESISTANCE:0 "Attempt to lower Resistance" - GARRISON_CONF_RAIL:0 "Guard Supply Hubs and Railway" - AIR_WING_NAME_FALLBACK:0 "$NUMBER$. $TYPE$ Wing" - #AIR_WING_NAME_FALLBACK:0 "$COUNTRY$ $TYPE$ Air Wing $NUMBER$" - AIR_WING_NAME_GER_FALLBACK:0 "$TYPE$ $NUMBER$" - AIR_WING_NAME_GER_GENERIC:0 "$NAME$ $NR$" - AIR_WING_NAME_USA_FALLBACK:0 "$NUMBER$. $TYPE$ Wing" - AIR_WING_NAME_USA_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_USA_CARRIER:0 "$NAME$ $NR$" - AIR_WING_NAME_FRA_GENERIC:0 "$NAME$ No. $NR$" - AIR_WING_NAME_FRA_FALLBACK:0 "$NUMBER$. Groupement" - AIR_WING_NAME_FRA_CARRIER:0 "$NR$ $NAME$" - AIR_WING_NAME_ENG_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_ENG_FALLBACK:0 "No. $NUMBER$ Squadron RAF" - AIR_WING_NAME_ENG_CARRIER:0 "$NR$ $NAME$" - AIR_WING_NAME_ITA_FALLBACK:0 "$NUMBER$° Stormo" - AIR_WING_NAME_JAP_FALLBACK:0 "$NUMBER$. Hikodan" - AIR_WING_NAME_JAP_CARRIER:0 "$NR$. $NAME$" - AIR_WING_NAME_SOV_GENERIC:0 "$NR$ $NAME$" - AIR_WING_NAME_SOV_FALLBACK:0 "$NUMBER$ SAD" - AIR_WING_NAME_SOV_CARRIER:0 "$NR$ $NAME$" - AIR_WING_NAME_AST_FALLBACK:0 "No. $NUMBER$ Squadron RAAF" - AIR_WING_NAME_CAN_FALLBACK:0 "No. $NUMBER$ Squadron RCAF" - AIR_WING_NAME_NZL_FALLBACK:0 "No. $NUMBER$ Squadron RNZAF" - AIR_WING_NAME_SAF_FALLBACK:0 "No. $NUMBER$ Squadron SAAF" - AIR_WING_NAME_RAJ_FALLBACK:0 "No. $NUMBER$ Squadron IAF" - AIR_WING_NAME_ROM_FALLBACK:0 "Grup $NUMBER$ Aeriana de Lupta" - AIR_WING_NAME_ROM_GENERIC:0 "$NR$ $NAME$" - AIR_WING_NAME_HUN_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_HUN_FALLBACK:0 "$NUMBER$. Repülöszázad" - AIR_WING_NAME_YUG_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_YUG_FALLBACK:0 "$NUMBER$. Puk" - AIR_WING_NAME_CZE_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_POL_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_BEL_GENERIC:0 "$NAME$ $NR$" - AIR_WING_NAME_HOL_GENERIC:0 "$NR$e $NAME$" - AIR_WING_NAME_SWE_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_TUR_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_BUL_GENERIC:0 "$NR$-ti $NAME$" - AIR_WING_NAME_FIN_FALLBACK:0 "Lentorykmentti $NUMBER$" - AIR_WING_NAME_FIN_BOMBER:0 "$NR$. $NAME$" - AIR_WING_NAME_BRA_GENERIC:0 "$NR$. $NAME$" - AIR_WING_NAME_CHI_GENERIC:0 "$NR$ $NAME$" - MP_TIME_TOOLTIP:1 "$WHO|Y$ unpaused the game.\nClick to pause the game." - CONFIRMCONSOLIDATEUNITS:0 "Consolidate Divisions" - CONFIRMCONSOLIDATEUNITSTEXT:2 "Are you sure you want to CONSOLIDATE $NUM|Y$ divisions together? The strongest divisions in the selection will be consolidated by the others." - CONFIRMCONSOLIDATEUNITSAREOVERSEA:0 "§RSelected units are not located in home theater, you will lose $VALUE|%0$ of their equipment!§!" - CONFIRMCONSOLIDATEUNITSAREENCIRCLED:0 "§RSelected units are encircled, you will lose all of their equipment and $VALUE|%0$ of their manpower!§!" - CONFIRMCONSOLIDATE_EQUIPMENT_GAIN_CONSOLIDATE_TITLE:0 "The following will be returned to your §HStockpile§!/§HManpower Pool§!:" - CONFIRMCONSOLIDATE_ARMY_INFO:0 "The following $NUM|H$ divisions will be reinforced to full strength: $ARMIES|H$" - CONFIRMCONSOLIDATE_ARMY_INFO_NOT_FULL:0 "$ARMY|H$ will be reinforced to the following:" - CONFIRMCONSOLIDATE_GAIN_RESULT:0 "$AMOUNT|0H$/$MAX|0H$ $EQUIPMENT$" - CONSOLIDATE:0 "Consolidate" - CONSOLIDATE_TOOLTIP:1 "Merge understrength and damaged units. Consolidated units' experience is kept. Manpower and equipment is added together." - CONSOLIDATE_NOT_POSSIBLE:0 "Consolidation is §Rnot possible§!" - CONSOLIDATE_NOT_POSSIBLE_TOOLTIP:0 "In order to consolidate units, the following criteria needs to be fulfilled:" - CONSOLIDATE_NOT_POSSIBLE_SAME_TEMPLATE:0 "- Is of the same §YTemplate§!" - CONSOLIDATE_NOT_POSSIBLE_SAME_LOCATION:0 "- Is in the same §YLocation§!" - CONSOLIDATE_NOT_POSSIBLE_NOT_IN_COMBAT:0 "- Is not in active combat" - CONSOLIDATE_NOT_POSSIBLE_NOT_AN_EXPEDITION:0 "- Is not an §YExpedition§! unit" - CONSOLIDATE_NOT_POSSIBLE_AT_FULL_STRENGTH:0 "- Is not at full strength" - CONSOLIDATE_NOT_POSSIBLE_FOR_SOME_UNITS:0 "- Is disabled for some of the units" - CONSOLIDATE_NOT_POSSIBLE_NOT_MULTIPLE_UNITS:0 "- More than one unit is being selected" - DECISION_AMOUNT_DAYS:0 "§H$AMOUNT$ days§!" - DECISION_PREREQUISITES_HEADER:0 "§HPrerequisites:§!" - DECISION_SELECT_HEADER:0 "§HEffects when selected:§!" - DECISION_ACTIVE_FOR_AMOUNT_DAYS:0 "Active for $AMOUNT|H$ days." - DECISION_WHILE_ACTIVE:0 "§HWhile active:§!" - DECISION_FOR_AMOUNT_DAYS_MODIFIER:0 "§HFor $AMOUNT|H$ days:§!" - DECISION_REMOVE_HEADER:1 "§HEffects when removed:§!" - DECISION_WILL_BE_REMOVED_IF:1 "§HInstantly removed if:§!" - DECISION_WILL_BE_CANCELLED_IF:0 "§HInstantly cancelled if:§!" - EVENT_AMOUNT_DAYS:0 "$AMOUNT$ days" - TIMED_DECISION_TIMEOUT_EFFECT_HEADER_BAD:0 "§HEffects if not completed within $TIMEOUT|0$ days:§!" - TIMED_DECISION_TIMEOUT_EFFECT_HEADER_GOOD:0 "§HEffects in $TIMEOUT|0$ days:§!" - TIMED_DECISION_TIMEOUT_EFFECT_HEADER_SELECTABLE:0 "§HEffects if not selected within $TIMEOUT|0$ days:§!" - TIMED_DECISION_COMPLETE_EFFECT_HEADER_BAD:0 "§HEffects when completed:§!" - TIMED_DECISION_COMPLETE_EFFECT_HEADER_GOOD:0 "§HEffects when failed:§!" - TIMED_DECISION_COMPLETE_EFFECT_HEADER_SELECTABLE:0 "§HEffects when selected:§!" - TIMED_DECISION_MODIFIER_HEADER_NORMAL_INF:0 "§HWhen completed:§!" - TIMED_DECISION_MODIFIER_HEADER_NORMAL_DAYS:0 "§HFor $AMOUNT|H$ days when completed:§!" - TIMED_DECISION_MODIFIER_HEADER_SELECTABLE_INF:0 "§HWhen selected:§!" - TIMED_DECISION_MODIFIER_HEADER_SELECTABLE_DAYS:0 "§HFor $AMOUNT|H$ days when selected:§!" - TIMED_DECISION_FAILED:0 "Failed" - TIMED_DECISION_COMPLETED:0 "Completed" - TIMED_DECISION_PREREQUISITES_HEADER_BAD:0 "§HTo complete:§!" - TIMED_DECISION_PREREQUISITES_HEADER_GOOD:0 "§HWill fail if:§!" - TIMED_DECISION_PREREQUISITES_HEADER_SELECTABLE:0 "§HPrerequisites:§!" - DECISION_CANCEL_HEADER:0 "§HWhen aborted:§!" - TIMED_DECISION_ABORT_HEADER:0 "§HWill abort if:§!" - SEND_PING_TOOLTIP:0 "§GCtrl + Alt + Click§! to send a ping to allies." - SEND_PING_OFFENSIVE_TOOLTIP:0 "§GCtrl + Alt + Shift + Click§! to send an offensive ping to allies." - SEND_MINIMAP_HANDLE_TITLE:0 "Toggle §Hminimap§!" - SEND_DEFENSIVE_PING_MINIMAP_TITLE:0 "Send §HDefensive§! Ping" - SEND_DEFENSIVE_PING_MINIMAP_DESCRIPTION:0 "§HClick§! this button and then §Hclick§! on §Hminimap/game map§! to send a §Gdefensive§! ping to your allies." - SEND_OFFENSIVE_PING_MINIMAP_TITLE:0 "Send §HOffensive§! Ping" - SEND_OFFENSIVE_PING_MINIMAP_DESCRIPTION:0 "§HClick§! this button and then §Hclick§! on §Hminimap/game map§! to send an §Goffensive§! ping to your allies." - SHORTCUT_SAVED:0 "Shortcut was saved" - cold_climate:0 "Cold acclimatization" - hot_climate:0 "Hot acclimatization" - ACCLIMATIZATION:0 "Acclimatization" - ACCLIMATIZATION_GAIN_ENTRY_YES:0 "£trigger_yes" - ACCLIMATIZATION_GAIN_ENTRY_NO:0 "£trigger_no" - ACCLIMATIZATION_GAIN_ENTRY:0 "$YES_NO$ £unitlist_acclimatization|$ICON$ $CLIMATE$ = $VALUE|+1$" - ACCLIMATIZATION_GAIN_ENTRY_EACH_DAY:0 "\n $GAIN$ each day." - ACCLIMATIZATION_CONDITIONS_HEADER:0 "Conditions for gaining:" - ACCLIMATIZATION_GAINED_WHEN:0 " $NAME|H$ gained when:" - ACCLIMATIZATION_GAINED_WHEN_ENTRY:0 " $YES_NO$ $WEATHER$" - ACCLIMATIZATION_PENALTY_REDUCTIONS:0 "Current penalty reductions:" - ACCLIMATIZATION_PENALTY_ENTRY:0 " $NAME$ = $PENALTY|%1=R$ £right_arrow $AFTER_RED|%1=Y$" - ACCLIMATIZATION_PENALTY_REDUCTION_NONE:0 " §RNone§!" - ACCLIMATIZATION_DESCRIPTION:0 "When a division is in a harsh climate, it gains acclimatization which reduces the penalties." - COMBAT_ATTACK_BUFF:0 "Offense" - COMBAT_DEFENSE_BUFF:0 "Defense" - COMBAT_BREAKTHROUGH_BUFF:0 "Breakthrough" - COMBAT_ENTRENCHMENT_BUFF:0 "Entrenchment" - CANNOT_RETREAT_WHILE_DEFENDING:0 "Cannot retreat while defending" - CANNOT_RETREAT_WHILE_ATTACKING:0 "Cannot retreat while attacking" - ORG_DAMAGE_MULTIPLIER:0 "Organization damage taken" - STR_DAMAGE_MULTIPLIER:0 "Strength damage taken" - WAR_SUPPORT_REDUCTION_ON_DAMAGE:0 "War Support reduction on damaged" - DEBUG_IN_MULTIPLAYER_FORBIDDEN:0 "It's forbidden to run the multiplayer sessions with the DEBUG active. Please run the game without the -debug argument." - COMMAND_POWER_CONSUMPTION_ENTRY:0 "$NAME$: $VALUE|2+$" - COMMAND_POWER_CONSUMPTION_ENTRY_WITH_REASON:0 "$NAME$ ($REASON$): $VALUE|2+$" - INFASTRUCTURE_DAMAGE:0 "Infrastructure Damage: $VALUE|%+0$" - UNCOLORED_FRACTION:0 "$NUM$/$DEN$" - ARMY_FIGHTING_IN_BORDER_WAR:0 "§RThis army is fighting at a border conflict.\n\nYou can't give direct orders to units, remove divisions from the army or replace the chain of command.§!\n\n" - SOME_UNITS_IN_BORDER_WAR:1 "Divisions in border conflict: $NUM|H$" - SOME_UNITS_IN_BORDER_WAR_DESC:0 "§RThose divisions cannot be controlled.§!" - UNITLEADER_IS_EN_ROUTE:0 "$NAME|H$ is currently §REn Route§! from a previous command. He won't be able to use abilities or give positive buffs for another $DAYS|H$ days." - TRIGGER_CAPITAL:0 "Capital State" - PROV_TOOLTIP_LOCATION_HEADER:0 "£location_pointer " - PROV_TOOLTIP_LOCATION_STATE:1 "A $TERRAIN|H$ province in $NAME|Y$" - PROV_TOOLTIP_LOCATION_OWNER:0 "Owner: $NAME|Y$" - PROV_TOOLTIP_LOCATION_CONTROLLER:0 "§RController§!: $COUNTRY|Y$" - PROV_TOOLTIP_SELECTION:0 "£divisions Currently selected:" - PROV_TOOLTIP_SELECTION_NUM_DIVS:1 "$UNIT_TYPE_PLURAL|U$: $NUM|H$" - PROV_TOOLTIP_TEMPERATURE:1 "$WEATHER$§H(§!$TEMP|0H$§H°C)§!" - PROV_TOOLTIP_WEATHER_MODIFIER:0 "£weather|$FRAME$ $TEXT|H$" - PROV_TOOLTIP_TEMPERATURE_MODIFIER:0 "£temperature|$FRAME$ $TEXT|H$" - PROV_TOOLTIP_LOCAL_TIME:0 "Local time: £daynight|$FRAME$ $TIME|H$" - PROV_TOOLTIP_DIVS_RETREATING:1 "$UNIT_TYPE_PLURAL|U$ retreating: $NUM|R$" - PROV_TOOLTIP_DIVS_WITHDRAWING:1 "$UNIT_TYPE_PLURAL|U$ withdrawing: $NUM|G$" - GARRISON_ORDER_EXTRA_CAPACITY:1 "\n\nMaximum capacity of armies on Area Defense orders is increased to $NUM|+%$" - USE_DEFAULT_MODEL:0 "Use Best Match" - GENERIC:0 "Generic" - CULTURAL_GENERIC:0 "Cultural Generic" - FUEL_TITLE:0 "§HFood§!" - FUEL:0 "Food" - CURRENT_FUEL:0 "Current Food: $NUM|H$" - FUEL_CAPACITY:0 "Food Capacity: $NUM|H$" - FUEL_DAILY:0 "$AMOUNT|H$/day" - FUEL_DAILY_GAIN_NON_OIL_ONLY:0 "Daily Gain: $NUM|H$" - FUEL_DAILY_GAIN_OIL_ONLY:0 "Daily Gain: $NUM|H$ (from $OIL|H$£resources_strip|1 )" - FUEL_DAILY_GAIN:0 "Daily Gain: $NUM|H$" - FUEL_DAILY_GAIN_BASE:0 "Base Gain: $NUM|H$" - FUEL_DAILY_GAIN_FROM_STATES:0 "From Refineries: $NUM|H$" - FUEL_DAILY_GAIN_FROM_OIL:0 "From $OIL$£resources_strip|1 : $NUM|H$" - FUEL_DAILY_GAIN_FROM_LEND_LEASE:0 "From Lend-Lease: $NUM|H$" - FUEL_DAILY_GAIN_FROM_OTHER:0 "From Other Sources: $NUM|H$" - DAILY_FUEL_CONSUMPTION:1 "Active Consumption: $NUM|H$" - DAILY_FUEL_CONSUMPTION_MAX:0 "Potential Consumption: $NUM|H$" - DAILY_FUEL_CONSUMPTION_WITH_RECEIVED:1 "Active Consumption: $NUM|H$ §R(Received: $NUM2|%.0$)§!" -OUT_OF_FUEL_INFO:0 "With current consumption rates, you will be out of food in $DUR|R$" - FUEL_GAIN_BY_STATES_FACTOR_TOOLTIP:0 "Food Gain will be modified by $FACTOR|+%.0$ to a total of $TOTAL|.2H$" - RESOURCE_GAIN_BY_STATES_TOOLTIP:0 "Current £resources_strip|$FRAME$ gain bonus: $VALUE|+.0$" - MAX_FUEL_BY_STATES_FACTOR_TOOLTIP:0 "Food Capacity will be modified by $FACTOR|+%.0$ to a total of $TOTAL|.2H$" - FUEL_CAPACITY_FILL_INFO:0 "With current production rate, you will fill your food capacity in $DUR|G$" - DURATION_DAYS:0 "$NUM|.0$ days" - DURATION_MONTHS:0 "$NUM|.1$ months" - DURATION_YEARS:0 "$NUM|.1$ years" - FUEL_STOCKPILE_MAX_SHORT:0 "§GFull§!" - FUEL_STOCKPILE_EMPTY_SHORT:0 "§R0§!" - FUEL_STOCKPILE_MAX:0 "§GStockpile is full.§!" - FUEL_STOCKPILE_EMPTY:0 "§RStockpile is empty.§!" - OTHER_FUEL_CONSUMPTION:1 "Other Active Consumption: $NUM|H$" - FUEL_REQUIRED:0 "Required: $NUM|H$" - FUEL_REQUIRED_WITH_RECEIVED:0 "Required: $NUM|H$ §R(Received: $NUM2$)§!" - FUEL_REQUIRED_WITH_RECEIVED_PERC:0 "Required: $NUM|H$ §R(Received: $NUM2|%.0$)§!" - FUEL_DAILY_REQUIRED_COMBINED:0 "Current Daily Consumption: $NUM|H$" - FUEL_DAILY_REQUIRED_COMBINED_MAX:0 "Maximum Daily Consumption: $NUM|H$" - FUEL_DAILY_REQUIRED_FROM_MILITARY:0 "From Military: $NUM|H$" - FUEL_DAILY_REQUIRED_FROM_LEND_LEASE:0 "From Lend-Lease: $NUM|H$" - FUEL_DAILY_REQUIRED_FROM_OTHER:0 "From Other Sources: $NUM|H$" - FUEL_DAILY_REQUIRED:0 "Current consumption: $NUM|H$/day" - FUEL_DAILY_REQUIRED_AND_RECEIVED:0 "Current requirements: $REQUIRED|H$/day §R(received: $RECEIVED$/day)§!" - FUEL_DAILY_REQUIRED_MAX:0 "Maximum consumption: $NUM|H$/day" - FUEL_DAILY_REQUIRED_MAX_DESC_NAVY:1 "The consumption will vary based on the current activity. It will reach the maximum consumption while in combat." - FUEL_TOTAL_REQUIRED:0 "Total Required: $NUM|H$" - FUEL_TOTAL_REQUIRED_WITH_RECEIVED:0 "Total Required: $NUM|H$ §R(Received: $NUM2$)§!" - FUEL_TOTAL_REQUIRED_WITH_RECEIVED_PERC:0 "Total Required: $NUM|H$ §R(Received: $NUM2|%.0$)§!" - FUEL_SUPPORTED:0 "Supported: $NUM|H$" - FUEL_DESC:0 "§HFood§! is generated by your country's excess food. Each country has a maximum capacity for §HFood§! which can be increased by building §HSilos§!. §HFood§! is used by all military units and it is delivered using §HSupply Lines§!." - LACK_OF_FUEL:0 "Lack of Food: $VAL|%0R$" - FUEL_STOCKPILE_HEADER:0 "\n§HFood Stockpile Capacity: $NUM$§!" - BASE_FUEL_CAPACITY:0 "Base: $NUM|H$" - FUEL_CAPACITY_FROM_STATES:0 "In states: $NUM|H$" - REGION_WITH_NO_PATROL:1 "§R£mapicon_unit_no_orders Your fleets does not have enough active patrol forces to cover this area.§!" - AGRESSIVE_MISSION_WITH_NO_AGGRESSIVENESS:1 "§R£mapicon_unit_no_orders Task Force $NAME|H$ is on §HDo Not Engage§! setting.§!" - TOO_MANY_REGIONS_FOR_CONVOY_RAID_WARNING:0 "§R£mapicon_unit_no_orders Low Convoy Raiding Efficiency§!" - TOO_MANY_REGIONS_FOR_CONVOY_RAID:0 "§R$NAME|H$ can only cover at most $NUM|H$ regions efficiently for convoy raiding. Their efficiency is lowered to $EFFICIENCY|%.0H$.§!" - CONVOY_RAID_EFFICIENCY_DESC:2 "$NAME|H$ can cover up to $NUM|H$ regions efficiently for convoy raiding. It is currently operating at maximum efficiency." - TOO_MANY_REGIONS_FOR_CONVOY_RAID_DETAILED:1 "At lower efficiencies, convoy raiding task forces will have a harder time spotting enemy convoys and will have less ships present at the start of combat." - TOO_MANY_CONVOYS_FOR_CONVOY_ESCORT:2 "§R£mapicon_unit_no_orders Low Convoy Escort Efficiency§!" - NOT_ENOUGH_TASK_FORCES_FOR_CONVOY_ESCORT:0 "§R£mapicon_unit_no_orders Low Escort Presence§!" - NOT_ENOUGH_TASK_FORCES_FOR_CONVOY_ESCORT_DETAILED:0 "An escort Task Force is not ready when it is either already engaged in a combat or off repairing." - NOT_ENOUGH_TASK_FORCES_FOR_CONVOY_ESCORT_REMEDY:1 "Having more Task Forces performing the mission, as part of the same Fleet, will help ensure there is always a Task Force ready to engage in convoy defense." - TOO_MANY_CONVOYS_FOR_CONVOY_ESCORT_DETAILED:2 "At lower efficiencies, convoy escort task forces will not be able to fully cover all convoys. If convoys are engaged, less ships will be available at the start of combat to protect them." - TOO_MANY_CONVOYS_FOR_CONVOY_ESCORT_REMEDY:0 "Adding more ships to the mission will increase Escort Efficiency" - CONVOY_DEFENSE_EFFICIENCY_DESC:2 "$NAME|H$ can escort up to $NUM|H$ convoys efficiently. It is currently operating at full efficiency." - CONVOY_ESCORT_MISSION_EFFECTIVENESS:0 "Mission Effectiveness: $VALUE|H$" - CONVOY_ESCORT_TASK_FORCES_IN_REGION_COUNT:0 "Escort Task Forces in the region: $COUNT|H$" - CONVOY_ESCORT_EFFICIENCY_NO_CONVOY_IN_FLEETS_AOO:1 "No trade convoy requiring escort in the fleet's area of operation" - CONVOY_ESCORT_EFFICIENCY_CONVOYS_IN_AREA_OF_OPERATION:2 "Number of convoys escorted, recounting the same convoys in each region: $VALUE|H$" - CONVOY_ESCORT_EFFICIENCY_IN_REGION:2 "Convoy Escort Efficiency in covered regions: $VALUE|H$" - CONVOY_ESCORT_PRESENCE_IN_REGION:0 "Escort Presence in the region: $VALUE|H$" - CONVOY_ESCORT_PRESENCE_IN_REGION_EXPANDED:0 "Over the last month, our escort Task Forces were ready $HOURS_WITH$/$HOURS_TOTAL|H$ hours ($PERCENT|H$)" - CONVOY_ESCORT_EFFICIENCY_FLEET_DESC:4 "The Fleet $FLEET|H$ has $NUM|.0H$ available ships and $NUM_TASKFORCES|.0H$ available taskforces and can escort up to $COVERED_CONVOY|.0H$ convoys or cover up to $COVERED_REGION|.0H$ regions.($EFFICIENCY|H$)" - CONVOY_RAIDING_EFFICIENCY_IN_REGION:0 "Average Convoy Raiding Efficiency in the region: $VALUE$" - CONVOY_RAIDING_TASK_FORCE_EFFICIENCY_DESC:0 "$TASK_FORCE|H$ can raid convoys in up to $REGIONS|.1H$ ($EFFICIENCY|H$) different regions efficiently." - FACTION_LEADER_CAPITULATED_HEADER:0 "Faction Leadership" - FACTION_LEADER_CAPITULATED_WE_ARE_NEW_LEADER:0 "After the capitulation of $OLDLEADER|H$ we are now the leader of $FACTION|H$." - RESEARCH_WITH_XP_TEXT:1 "Spend $XP_TEXT$" - RESEARCH_WITH_XP_TEXT_TOOLTIP:0 "Spend $XP_TEXT$ to gain $NUM|+%.0$ bonus during research." - RESEARCH_TECH_IS_ALREADY_BOOSTED_BY_XP:0 "Technology is already boosted by XP" - RESEARCH_NOT_ENOUGH_XP_TO_BOOST:0 "§RYou don't have enough experience to boost this research.§!" - RESEARCH_NOT_ENOUGH_XP_TO_UNLOCK:0 "§RYou don't have enough experience to unlock this research.§!" - RESEARCH_XP_BOOST_TOOLTIP:0 "Experience Boost: $VAL|+%0$" - RESEARCH_ONE_TIME_BONUS:0 "Limited Use Bonus: $VAL|+%0$" - RESEARCH_GLOBAL_BONUS:0 "Research Speed Bonus: $VAL|+%0$" - RESEARCH_TOTAL_BONUS:0 "Research Speed: $VAL$" - RESEARCH_ARMY_EXPERIENCE:0 "$VALUE|.0Y$£army_experience " - RESEARCH_NAVY_EXPERIENCE:0 "$VALUE|.0Y$£navy_experience " - RESEARCH_AIR_EXPERIENCE:0 "$VALUE|.0Y$£air_experience " - RESEARCH_AHEAD_OF_TIME_YEARS:0 "$VAL|.1Y$ years" - REQUEST_EXPEDITIONARIES:0 "Request Expeditionaries" - TOTAL_UNITS:0 "Total Units:" - MOVING:0 "Moving" - QUEUED:0 "In Queue" - FINISHED:0 "Finished" - NAVAL_ACCESS:0 "Access" - SUPREMACY_DETAILS:0 "§HNaval Supremacy§! is calculated using sum of total supremacy of friendly ships in the region against enemy total supremacy.\n\nTotal supremacy of a navy depends on what type of mission it is running, how effective it is on the region, how many ships it has and how large they are.\n\n" - REPAIR_ASSIGNMENT_INFO:0 "This is the maximum numbers of §HDockyards§! that can be assigned to ship repairs." - TOO_MANY_SHIPS_TO_REPAIR:0 "§RThe Naval Base capacity is too low to repair all ships waiting in queue.§!" - TOO_MANY_SHIPS_TO_REPAIR_NO_DOCKYARDS:0 "§RYou don't have enough dockyards allocated for repairs to use the full capacity of the naval base.§!" - SHIPS_THAT_AR_BEING_REPAIRED_IN_ALLY_INFO:0 "Ships that are being repaired in another ally's naval base will use their dockyards for repairs." - DOCKYARD_REPAIR_INFO:0 "There are $CUR|H$ ships awaiting repairs.\nThis §YNaval Base§! can support at most $MAX|H$ simultaneous repairs." - NAVAL_REPAIR_QUEUE_DOCKYARD_SHIP_TOOLTIP:0 "Currently there are $NUM|H$ ships are queued for repairs in this Naval Base." - NAVAL_REPAIR_QUEUE_DOCKYARD_TOOLTIP:0 "§GClick§! to toggle list of ship queue\n§GRight-click§! to pan to Naval Base" - NAVAL_REPAIR_QUEUE_SHIP_TOOLTIP:0 "§GDrag and Drop§! to move ship within repair queue or to assign it to another Naval Base" - NAVAL_REPAIR_QUEUE_SHIP_TASKFORCE_TOOLTIP:0 "§GClick§! to select taskforce of this ship" - NAVAL_REPAIR_QUEUE_EXPAND_COLLAPSE_ALL:0 "§GClick§! to expand/collapse all queues." - NAVAL_REPAIR_BUTTON_INFO:1 "§HNaval Repair Queue§!\n§GClick§! to view the queue and edit the repair lines." - WILL_BE_REMOVED:0 "Remaining Days: $NUM|H$" - OFF_REPAIRING:0 "Off repairing" - OFF_REFITTING:0 "Off refitting" - MERGING:0 "Merging" - REFIT:0 "Refit" - REFIT_TOOLTIP:0 "Send ships to a naval base to refit them to the selected design." - REFIT_CANCEL:0 "Cancel" - REFIT_DESCRIPTION:1 "Refit selected ships ($COUNT$) to the design below:" - REFIT_NO_SHARED_MATCHES:0 "§RThere is no existing ship design to which all of the selected ships can be refit.§!\n\nCreate a new ship design or narrow your selection to similar ships only." - WEEKLY_CHANGE_NUM:0 "(Weekly: $NUM|+%.2$)" - COMBAT_MAP_ICON_CONVOY_FREIGHT_ENTRY:0 "$FLAG$ $COUNT|H$ Freight convoys" - COMBAT_MAP_ICON_CONVOY_DIVISIONS_ENTRY:0 "$FLAG$ $COUNT|H$ Troop convoys" - OIL_NEED_TEXT:2 "C:\nM:" - YEAR_UNIT_SHORT:0 "y" - DAY_UNIT_SHORT:0 "d" - HOUR_UNIT_SHORT:0 "h" - USE_FLEET_COLOR:0 "Use fleet's color" - SCORCHED_EARTH_STATE_PREVENT_REPAIRS:0 "Repairs are paused due to Scorched Earth in state." - SCORCHED_EARTH_STATE_DOES_NOT_CONTROL_STATE:1 "£trigger_no! State not under your control.\n" - SCORCHED_EARTH_STATE_ALREADY_SCORCHED:1 "£trigger_no! Scorched Earth is already applied in this state.\n" - SCORCHED_EARTH_STATE_CANT_AFFORD:1 "£trigger_no! Insufficient Political Power.\n\n" - SCORCHED_EARTH_STATE_NO_SUPPLY_BUILDINGS:1 "£trigger_no! State does not contain any supply buildings.\n" - SCORCHED_EARTH_STATE:2 "\n§HScorched Earth§!\n\nDisable railways in this state for £pol_power §H$COST$§!, damaging them and preventing repairs." - SCORCHED_EARTH_STATE_UNDO:0 "Order railways in this state to be repaired." - FLEET_ACTIVE_ONLY_TASKFORCE_DESCRIPTION:0 "$FLEET_NAME|H$ has $NUM|H$ active taskforces. " - FLEET_TASKFORCE_DESCRIPTION:0 "$FLEET_NAME|H$ has $NUM|H$ active and $NUM_2|H$ non-active taskforces. " - FLEET_MAX_TASKFORCE_DESCRIPTION:0 "$ADMIRAL|H$ can lead at most $NUM|H$ active taskforces." - FLEET_OVERCAPACITY_DESCRIPTION:0 "Over capacity status of your fleet will reduce the admiral's effectiveness to $VALUE|%.0R$" - TEMPORARILY_DETACHED:0 "§HTemporarily Detached:§!" - MODIFIED_BY:0 "§HModified by:§!" - FE_IRONMAN_NOPOPS_TOOLTIP:0 "Ironman requires the user to be logged in with Paradox account." - MSGRDK_SIGNIN_FAILED_TITLE:0 "There was a problem" - MSGRDK_SIGNIN_FAILED_TEXT:0 "We couldn't sign you in with your Microsoft account. Some game features may be unavailable." - MSGRDK_NO_PERMISSION_TITLE:0 "Account permission" - MSGRDK_NO_UGC_TEXT:0 "You have no permission to access user generated content. Mods will be disabled." - MSGRDK_NO_MULTIPLAYER_TEXT:0 "You must be signed in to a user profile with multiplayer privileges to play online" - MSGRDK_COMMUNICATIONS_UNAVAILABLE_PRIVILEGE_CHAT:0 "*** Message was blocked due to lack of the Communication privilege on your user profile ***" - MSGRDK_UGC_MULTIPLAYER_UNAVAILABLE:0 "Blocked due to lack of User Generated Content privilege for your Microsoft account" - FOCUS_FILTER_TAG_LIST:0 "§HFilters:§! $FILTERS$" - TODAY:0 "Today" - FAKE_INTEL_ARMY_NAME:0 "Fake Intel Name: $NAME$" - FAKE_UNIT_INFO_TOOLTIP:0 "This army represents a fake intel generated for your enemies. It has no fighting capabilities." - fake_intel_unit:0 "Fake Intel Batallion" - FAKE_ARMY_REAL_INFO:0 "This army appears as a $REAL_TEMPLATE|H$ to non-allies." - INTEL_DIVISION_REVEALED:0 "Fake Intel Revealed" - FOCUS_SEARCH_TYPE_TEXT:0 "Type to Search" - EFFECTS_FOR_COUNTRY:0 "Effects for $COUNTRY|H$:" - MAP_MODE_CLICK_INFO_WITH_ASSIGN:0 "§GLeft-Click§! to change map mode\n§GRight-Click§! to assign a different map mode to this button" - MAP_MODE_CLICK_INFO:0 "§GLeft-Click§! to change map mode" - MAP_MODE_ASSIGN_INFO:0 "§GLeft-Click§! assign $NEW_MAP_MODE|H$ to $OLD_MAP_MODE_KEY$ $OLD_MAP_MODE|H$ and close the menu.\n§GRight-Click§! to assign without closing the menu" - MAP_LOADING_ERROR_TITLE:0 "Failed to load the map" - MAP_LOADING_ERROR_INTRO:0 "Some errors are present in the map defition and have been logged to error.log\n\n" - MAP_LOADING_ERROR_GENERAL_MITIGATION_PRELUDE:0 "You might want to disable your mods and try again.\n" - MAP_LOADING_ERROR_MITIGATION_STEAM:0 "If that fails, check the integrity of game files inside steam.\n" - MAP_LOADING_ERROR_MITIGATION_MSGR:0 "" - MAP_LOADING_ERROR_GENERAL_MITIGATION_EPILOG:0 "If that fails, try clearing your user directory from the launcher.\n" - MAP_LOADING_ERROR_INGAME:0 "§RAttempting to launch a game will likely crash§!\n\n" - MAP_LOADING_ERROR_INGAME_MITIGATION:0 "You can still access the §HNudger§! to attempt to fix the issues.\n\nIf you are coming back from the §HNudger§!, it is best to restart the game to make sure everything is properly reloaded.\nStart a game at your own risks!" - STATE_RESOURCE_COST:0 "State Consumption: $VALUE|-.0$" - SETTINGS_ACCESSIBILITY:0 "Accessibility" - SETTINGS_ACCESSIBILITY_TTS:0 "Multiplayer Chat Text To Speech" - SETTINGS_ACCESSIBILITY_TTS_INFO:0 "Enable text to speech translation in the Multiplayer Chat" - SETTINGS_ACCESSIBILITY_STT:0 "Multiplayer Chat Speech To Text" - SETTINGS_ACCESSIBILITY_STT_INFO:0 "Enable speech to text translation in the Multiplayer Chat" - SETTINGS_ACCESSIBILITY_VISUAL_ALERTS:0 "Multiplayer Chat Visual Alerts" - SETTINGS_ACCESSIBILITY_CHAT_VISUAL_ALERTS_INFO:0 "Enable visual notifications for the Multiplayer Chat messages" - SETTINGS_ACCESSIBILITY_USE_STT_SHORTCUT:0 "Speech To Text Toggle Shortcut" - SETTINGS_ACCESSIBILITY_USE_STT_SHORTCUT_INFO:0 "Push the button to toggle speech to text translation on/off" - SETTINGS_ACCESSIBILITY_TTS_VALUE_INFO:0 "Toggle §HText To Speech§! on or off" - SETTINGS_ACCESSIBILITY_STT_VALUE_INFO:0 "Toggle §HSpeech To Text§! on or off" - SETTINGS_ACCESSIBILITY_VISUAL_ALERTS_VALUE_INFO:0 "Toggle §HVisual Alerts§! on or off" - SETTINGS_ACCESSIBILITY_USE_STT_SHORTCUT_VALUE_INFO:0 "Toggle §HSpeech to Text Shortcut§! on or off" - SETTINGS_ACCESSIBILITY_CHAT_LARGE_FONTS:0 "Multiplayer Chat Large Fonts" - SETTINGS_ACCESSIBILITY_CHAT_LARGE_FONTS_INFO:0 "Use large fonts for Multiplayer Chat messages" - SETTINGS_ACCESSIBILITY_CHAT_LARGE_FONTS_VALUE_INFO:0 "Toggle usage of large fonts for Multiplayer Chat messages" - SETTINGS_ACCESSIBILITY_STT_SHORTCUT_INPUT:0 "Multiplayer Chat Speech To Text Shortcut" - SETTINGS_ACCESSIBILITY_STT_SHORTCUT_INPUT_INFO:0 "Customize the shortcut for toggling §HSpeech to Text§! on or off" - CHAT_CVAA_MESSAGE:0 "$NAME$ says $MESSAGE$" - CHAT_CVAA_SYSTEM_NAME:0 "System" - SUPPLY_TRUCKS:0 "Supply Trucks" - SUPPLY_TRUCKS_DESC:2 "§YSupply Trucks§!\nCurrent Truck Usage: $CURRENT_USAGE|H$\n" - SUPPLY_TRUCKS_EMPTY:0 "" - SUPPLY_TRUCKS_DESC_DETAILED:1 "Trade Caravans are used for delivering supply from supply hubs to armies." - MOVE_SUPPLY_CAPITAL_POPUP_TITLE:0 "Move Supply Capital" - MOVE_SUPPLY_CAPITAL_POPUP_DESC:0 "Are you sure you want to move your supply capital? You won't be able to get full supply until $NUM|R$ days." - CANT_MOVE_SUPPLY_CAPITAL_SURRENDER_LIMIT:1 "§RYou can't move your supply capital when your country is above $VALUE|%.0H$ surrender limit.§!" - CANT_MOVE_SUPPLY_CAPITAL_NOT_CONTROLLED:1 "§RYou can't move your supply capital to non-controlled provinces.§!" - CANT_MOVE_SUPPLY_CAPITAL_NO_BUILD_NODE:2 "§RYou can't move your supply capital to a province without a supply hub.§!" - CANT_MOVE_SUPPLY_CAPITAL_ON_COOLDOWN:1 "§RYou can't move your supply capital for another $NUM$ days.§!" - ARMY_BADGE_DIVISIONS_SUMMARY_ITEM_HEADER:0 "§GClick§! to select divisions.\n§GShift + Click§! to toggle selection." - ARMY_BADGE_ORG_STR_INDICATOR_TOOLTIP:0 "§HOrganization§!\nMean: §H$ORG_MEAN$%§!\nMedian: §H$ORG_MEDIAN$%§!\n\n§HFighting Strength§!\nMean: §H$STR_MEAN$%§!\nMedian: §H$STR_MEDIAN$%§!" - RAILWAY_CONSTUCTION_TOOLTIP:0 "Building a level $TARGET_LEVEL|H$ railways in $RAILWAY_NAME|H$" - RAILWAY_UPGRADE_TOOLTIP:1 "Upgrading $START_LEVEL|H$ level railways in $RAILWAY_NAME|H$ to level $TARGET_LEVEL|H$" - RAILWAY_CONSTRUCTION_ALL_COMPLETE:0 "Time for completion: $TIME$" - RAILWAY_CONSTRUCTION_ALL_COMPLETE_NEEDED_RAILWAYS:0 "Railways needed for completion: $NUM|H$" - RAILWAY_CLICK_TO_INCREASE_RAILWAY_LEVEL:0 "§GClick§! to increase target railway level" - RAILWAY_CLICK_TO_DECREASE_RAILWAY_LEVEL:0 "§GClick§! to decrease target railway level" - RAILWAY_AT_MAX_LEVEL:2 "Target Railway level is already at max level" - RAILWAY_AT_BASE_LEVEL:1 "Target Railway level is already at current level" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_HEADER:0 "§YCapital Hub§! in $PROVINCE_NAME|H$:" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_SUPPLY_CAP:0 "Supply Cap: $SUPPLY_CAP|.1H$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_CAPITAL_MOVED_RECENTLY:0 "Capital Supply Node moved recently.\nDays until full efficiency:$DAYS|H$\nCurrent efficiency: $PERCENTAGE|H$" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_BASE:0 "From Base: $SUPPLY|.1H$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_CIVILIAN:0 "From Civilian Factories: $SUPPLY|.1H$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_MILITARY:0 "From Military Factories: $SUPPLY|.1H$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_CAPITAL_NODE_DOCKYARDS:0 "From Dockyards: $SUPPLY|.1H$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_SUPPLY_NODE_HEADER:0 "§YSupply Hub§! in $PROVINCE_NAME|H$:" - SUPPLYMODE_TOOLTIP_NAVALBASE_NODE_HEADER:0 "§YNaval Base§! in $PROVINCE_NAME|H$, Level $LEVEL|H$:" - SUPPLYMODE_TOOLTIP_FLOATINGHARBOR_NODE_HEADER:0 "§YFloating Harbor§! in $PROVINCE_NAME|H$:" - SUPPLYMODE_TOOLTIP_FLOATINGHARBOR_EXPIRATION:0 "$DAYS|H$ days until exhausted" - SUPPLYMODE_TOOLTIP_NODE_CONTROLLED_BY:0 "Controlled by $COUNTRY|H$" - SUPPLYMODE_TOOLTIP_NODE_CONVOY_ZERO_EFFICIENCY:0 "§RNo Convoys Have Access! Supply Fulfillment Halted!§!" - SUPPLYMODE_TOOLTIP_DEMANDED_SUPPLY:0 "Demanded Supplies: $CURRENT_SUPPLIES|H.1$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_SUPPLY_FROM_CAPITAL:0 "Supply Connection from Capital: $CURRENT_SUPPLIES|H.1$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_SUPPLY_FROM_ALLY:1 "$COUNTRY$ can assist with supply up to $VALUE|H.1$ £supply_texticon£" - SUPPLYMODE_TOOLTIP_DISCONNECTED:0 "§RNo supply connection from Capital§!" - SUPPLYMODE_TOOLTIP_DISCONNECTED_DESC:1 "This can be caused either by having no valid connection or because parts of the path have been recently captured from an enemy" - SUPPLYMODE_TOOLTIP_ENEMY_DISRUPTION:0 "§HEnemy Disruption:§! $AMOUNT$" - SUPPLYMODE_TOOLTIP_RAILWAY_BOTTLENECKS:0 "§HRailway Bottlenecks:§!" - SUPPLYMODE_TOOLTIP_RIVER_BOTTLENECKS:0 "§HRiver Bottlenecks:§!" - SUPPLYMODE_TOOLTIP_NAVAL_BOTTLENECKS:0 "§HNaval Bottlenecks:§!" - SUPPLYMODE_TOOLTIP_TRAINS_NEEDED:0 "Trains Needed: $ALLOCATED|H.0$/$NEEDED|H$ £GFX_infrastructure_texticon£ ($PERCENTAGE|H$)" - SUPPLYMODE_TOOLTIP_CONVOYS_NEEDED:0 "Convoys Needed: $ALLOCATED|H.0$/$NEEDED|H$ £convoy_texticon£ ($PERCENTAGE|H$)" - RAILWAY_IN_COOLDOWN:0 "§RSome railways in this path have been recently captured from an enemy and needs to be converted to be able to transfer supply.\n\nRemaining Days: $DAYS$§!" - RAILWAY_UPGRADE:0 "§GClick§! to upgrade" - RAILWAY_CANCEL_UPGRADE:0 "§GRight Click§! to cancel upgrade" - TRAINS:0 "Trains" - TRAINS_COLON:0 "$TRAINS$:" - TRUCKS:0 "Trucks" - TRUCKS_COLON:0 "$TRUCKS$:" - CONVOYS_COLON:0 "$CONVOYS$:" - NEEDED:0 "Needed" - NUM_NEEDED:0 "$NEEDED$: $NUM|H$" - RECEIVED:0 "Received" - NUM_RECEIVED:0 "$RECEIVED$: $NUM|H$" - BUFFERED:0 "Buffered" - NUM_BUFFERED:0 "$BUFFERED$: $NUM|H$" - IN_STOCKPILES:0 "In Stockpiles" - NUM_IN_STOCKPILES:0 "$IN_STOCKPILES$: $NUM|H$" - SATISFIED:0 "Satisfied" - EFFICIENCY:0 "Efficiency" - RATIO_SATISFIED:0 "$SATISFIED$: $RATIO|.0%H$" - TRUCKS_LOST_ATTRITION:0 "Lost to Attrition (30 days): §R$NUM|.0$§!" - TRUCKS_LOST_KILLED:0 "Lost to Enemy Bombing (30 days): §R$NUM|.0$§!" - LOGISTICS_CAPACITY:1 "Logistics Fulfillment" - LOGISTICS_CAPACITY_DETAILED_DESC:1 "Logistics Capacity represents how satisfied your supply lines are. If your country lacks the Trains or the Motorized Equipment needed for transferring all supply needs, your units will gets reduced supply and will be affected by supply penalties." - SUPPLY_NODE_TRAIN_TOOLTIP:0 "§H$TRAINS$§!\n $NEEDED$: $NUM_NEEDED|H$\n $SATISFIED$: $RATIO$" - SUPPLY_NODE_TRUCK_TOOLTIP:0 "§H$TRUCKS$§!\n $NEEDED$: $NUM_NEEDED|H$\n $SATISFIED$: $RATIO$" - SUPPLY_NODE_CONVOY_TOOLTIP:0 "§HTotal Convoys In Path§!\n $NEEDED$: $NUM_NEEDED|H$\n $RECEIVED$: $NUM_ASSIGNED|H$\n $EFFICIENCY$: $RATIO$" - STATE_SUPPLY_HEADER:2 "§HSupply from State§! in $NAME|H$" - TOTAL_STATE_SUPPLY:2 "Total: $VAL|.2H$ £supply_texticon£" - BASE_STATE_SUPPLY:2 "Base: $VAL|.2H$" - STATE_INFRA_SUPPLY:1 "From Infrastructure: $VAL|.2H$" - STATE_POP_SUPPLY:0 "From Population: $VAL|.2H$" - STATE_VP_SUPPLY_SING:0 "From $NAME|H$ Victory Point: $VAL|.2H$" - STATE_VP_SUPPLY_PLUR:0 "From Victory Points: $VAL|.2H$" - STATE_AIRDROP_SUPPLY:0 "From Air drops: $VAL|.2H$" - STATE_SUPPLY_CONTROL_SCALE:0 "§RState supplies are scaled to $RATIO|.0%R$ due to not having full control of the state§!" - STATE_SUPPLY_MODIFIER:0 "Supply is modified by $VAL|.0%+$" - CONSUMER_SUPPLY_TOOLTIP:2 "$LABEL$: §H$VAL|.2$§!" - NEEDED_SUPPLY:1 "Supplies demanded by" - NEEDED_SUPPLY_WITH_VALUE:0 "$NEEDED_SUPPLY$: §H$VAL|.2$§! £supply_texticon£" - SUPPLY_DIVISION_DEMAND:0 "Divisions: §H$AMOUNT$§! (§H$VAL|.2$§!)" - SUPPLY_AIRPLANE_DEMAND:0 "Airplanes: §H$AMOUNT$§! (§H$VAL|.2$§!)" - SUPPLY_SHIP_DEMAND:0 "Ships: §H$AMOUNT$§! (§H$VAL|.2$§!)" - RECEIVED_SUPPLY:1 "Supplies received from" - RECEIVED_SUPPLY_WITH_VALUE:2 "$RECEIVED_SUPPLY$: §H$VAL|.2$§! £supply_texticon£ ($RATIO$)" - FROM_STATE:1 "State" - FROM_SUPPLY_NODES:1 "Supply Hubs" - FROM_AIR_DROPS:1 "Air Drops" - SUPPLY_USED_TRUCKS:0 "Using §H$ACTUAL|.0$§! / §H$WANTED|.0$§! $TRUCKS$ £unit_motorized_icon_small£" - SUPPLY_FLOW_REDUCTION:1 "Bad supply flow: §R-$PERCENT$§!" - SUPPLY_FLOW_DISRUPTION:0 "Disrupted by Enemy Logistics Air Strikes: §R-$SUPPLY$§!" - FLOATING_HARBOR:0 "Floating Harbor" - RAILWAY_CONNECTION_NAME_SINGLE:1 "Railway Connection (level $LEVEL$) in $NAME|H$\n" - RAILWAY_CONNECTION_NAME:1 "Railway Connection (level $LEVEL$) $NAME|H$ - $NAME2|H$\n" - BOTTLENECK_CONNECTION_NAME:0 "$NAME|H$ - $NAME2|H$" - BOTTLENECK_CONNECTION_NAME_SINGLE:0 "On $NAME|H$" - BOTTLENECK_CONNECTION_REASON_RIVER:0 "From River: $NUMBER|.0R$" - BOTTLENECK_CONNECTION_REASON_DAMAGE:0 "From Damage: §R-$NUMBER$§! (§R-$PERCENTAGE|.0$§!)" - BOTTLENECK_CONNECTION_REASON_LEVEL:0 "From Level $LEVEL|H$: $NUMBER$" - GENERATE:0 "Generate" - LIST_AND:0 ", and " - CHARACTER_NAME_TOOLTIP:0 "$NAME|Y$" - CHARACTER_ADVISOR_ON_ADD_TOOLTIP:0 "When hired:" - CHARACTER_ADVISOR_ON_REMOVE_TOOLTIP:0 "When fired:" - CHARACTER_ADVISOR_CANT_BE_FIRED_ONCE_HIRED:0 "§HAdvisor can't be fired once hired§!" - CHARACTER_ADVISOR_CANT_BE_FIRED:0 "§RAdvisor can't be fired§!" - RAILWAY_CONNECTION_TOOLTIP_HEADER:0 "§HRailway Connection§! Level $LEVEL|H$" - RAILWAY_CONNECTION_TOOLTIP_BETWEEN:0 "$PLACE1|H$ to $PLACE2|H$" - RAILWAY_CONNECTION_TOOLTIP_THROUGHPUT:0 "Supply Throughput Cap: $SUPPLY|H$ £supply_texticon£" - RAILWAY_CONNECTION_TOOLTIP_FROM_CAPITAL:0 "Limited by Capital: $SUPPLY|H$" - RAILWAY_CONNECTION_TOOLTIP_FROM_LEVEL:0 "Limited by Railway Level: $SUPPLY$" - RAILWAY_CONNECTION_TOOLTIP_FROM_DAMAGE:0 "From Damage: $SUPPLY|R$ (§R-$PERCENTAGE$§!)" - RAILWAY_CONNECTION_TOOLTIP_CURRENTLY_UPGRADING:0 "Currently upgrading §HRailway Connection§! to level $LEVEL|H$" - RIVER_CONNECTION_TOOLTIP_HEADER:0 "§HRiver Connection§!" - WEEKLY_FROM_OTHER_SOURCES:0 "\n§HWe also receive§!:\nWeekly Manpower: $VALUE|G$" - SUPPLY_NODE_MOVE_CAPITAL:0 "§HMove Capital Hub here§!" - SUPPLY_NODE_UPGRADE_TO_CAPITAL:2 "§HUpgrade Bottlenecks§!\nQueue upgrades to Railway and Port bottlenecks on the path from Capital Hub. This will increase the available potential supply in all provinces affected by this node." - SUPPLY_NODE_TOGGLE_ALLIES:0 "§HAllied Supply§!\nToggle Supply Hub access for your allies" - SUPPLY_NODE_BUILD_RAIL:0 "§HBuild Railways§!\nBuild Railway from this Supply Hub.\n§GHold Shift§! while clicking on this button to automatically use the optimal path." - SUPPLY_NODE_PRIORITY:0 "§HTrain Priority§!\nSet Supply Hub priority for allocating Trains\n§GClick§! to cycle through priorities." - SUPPLY_NODE_MOTORIZATION_PRIORITY:1 "§HMotorization Level§!\nSupply Hub Motorization uses trucks from the Stockpile, and extends the Hub's supply range and the amount of supply provided to provinces.\n§GClick§! to cycle through priorities." - SUPPLY_FLOW_PROVINCE_ACCUMULATED_HEADER:1 "§HSupply from Hubs§! in $PROVINCE|H$" - SUPPLY_CAP_AVAILABLE:0 "Supply Remaining in Province: " - SUPPLY_FLOW_PROVINCE_ACCUMULATED:0 "Total: $VALUE|H$ £supply_texticon£" - SUPPLY_FLOW_PROVINCE_BREAKDOWN:1 "$VALUE|H$ from $PROVINCE$" - SUPPLY_FLOW_PROVINCE_BREAKDOWN_OWNER:1 "$VALUE|H$ from $PROVINCE$ ($OWNER$)" - SUPPLY_FLOW_SHOW_RANGE:1 "§HSupply Hubs§! distribute supply to nearby provinces. Their range and efficiency is dependent on weather, ground conditions, infrastructure, railway level, and motorization.\n\nTo increase the range and supply provided by a §HSupply Hub§!, consider using the §HUpgrade Railways§! command or changing the §HMotorization Level§!.\n\nHold §GShift§! to show range.\n§GShift-click§! to toggle motorization.\n§GCtrl-click§! to toggle allied supply." - SUPPLY_FLOW_DELAYED_DESC:5 "§HSupply Remaining§! indicates how much supply is provided to this province, and is made up of state supply and hubs within range. Hub range is affected by weather, ground conditions, infrastructure, railway level, and motorization. \n\n§HDivisions§! will consume provincial supply based on their supply weight. If their §HStored Supply§! is above the supply ratio provided in their location, they will consume from their internal store until stored supply is at the same level as the local supply.\n\nHold §GCtrl§! to show flow sources." - SUPPLY_PROVINCE_MODIFIED_BY:0 "\n§HSupply Efficiency§! affected by:" - SUPPLY_FLOW_PROVINCE_FROM_OTHERS:0 "...and $TOTAL|H$ £supply_texticon£ from $NUM_SOURCES|H$ sources." - XP_OFFICER_CORPS_MAGNITUDE:0 "$VALUE|+=$" - XP_CHAR_TOTAL:0 "" - XP_CHAR_ENTRY:0 "\t- $PERSON$: $VALUE|+=$" - PEOPLE_TIP:0 "$LIST$" - NO_CURRENT_XP_GAIN_OC:0 "Our Officer Corps is not currently generating any." - ARMY_XP_TITLE:0 "§HDaily Army Experience Gain from Officers§!" - NAVY_XP_TITLE:0 "§HDaily Navy Experience Gain from Officers§!" - AIR_XP_TITLE:0 "§HDaily Air Experience Gain from Officers§!" - NO_RESERVED_CP:0 "No command power is currently allocated by your Officer Corps." - CP_TITLE_OC:0 "§HCommand Power Allocation§!" - COMMAND_POWER_MAGNITUDE:0 "$VALUE|+=$" - XP_OC_PARTIAL:0 "This value contributes to our total daily gain, which can be found in the top bar." - CP_OC_PARTIAL:0 "This value reduces our maximum Command Power, which can be found in the top bar." - CAN_BE_BUILT_IN_ALLIED_TERRITORY:0 "\n§GThis building can be constructed in allied territory.§!" - NOT_ENOUGH_CP_TO_PROMOTE_ADVISOR:0 "£trigger_no£ We do not have the required $COST|0R$ £command_power" - REMOTE_STORAGE_WARNING_TITLE:0 "Saving on Cloud went wrong" - REMOTE_STORAGE_WARNING_DESC:0 "Something went wrong when saving on cloud.\nYour game is NOT saved. Please check you are connected to internet and there is enough cloud storage space." - REMOTE_STORAGE_USAGE:0 "Space left on Cloud: $VALUE$ / $TOTAL$" - DIVISION_COMMANDER_CLICK_TO_GOTO:0 "§G Right-Click§! to pan to this division." - ARMY_BUTTON_DIV_COMMAND_TOOLTIP_LEADER:0 "$ARMY_NAME|H$\n$LEADER$" - ARMY_BUTTON_DIV_COMMAND_TOOLTIP_NO_LEADER:0 "$ARMY_NAME|H$\nNo Commander" - COHESION:0 "Cohesion" - PLAN_COHESION_LOOSE_TITLE:0 "§HFlexible Cohesion§!" - PLAN_COHESION_LOOSE_DESC:0 "Divisions will relocate from long distances in order to maintain a battle line." - PLAN_COHESION_BALANCED_TITLE:0 "§HBalanced Cohesion§!" - PLAN_COHESION_BALANCED_DESC:1 "Divisions will only relocate from medium distances in order to maintain a battle line." - PLAN_COHESION_STRICT_TITLE:0 "§HRigid Cohesion§!" - PLAN_COHESION_STRICT_DESC:1 "Divisions will only relocate from very short distances in order to maintain a battle line.\n\n§RThis setting is not suitable for sparsely populated or rapidly changing frontlines - close attention is required.§!" - PLAN_COHESION_MODE:0 "Set Cohesion Mode" - UNIT_LEADER_NEW_LEADER_DIVC:0 "Show Field Commanders" - PLANE_COUNTS_IN_REGION:0 "$COUNTS$" - PLANE_COUNTS_PASSING_THROUGH_REGION:0 " ($COUNTS$)" - PLANES_IN_REGION_SUBTITLE:0 "§HPlanes in Region§!\n" - PLANES_PASSING_THROUGH_REGION:0 "\n§HPlanes Passing Through Region§!\n" - OPEN_COUNTRY_LOGISTICS:0 "Open Logistics" - DIVISION_COMMANDER_DESCRIPTION_TEXT:0 "§HField Officers§! are the officers in charge of your divisions. Their division can perform various combat acts for which they can be awarded honors conferring benefits. Additionally, the officer can earn stored experience and personality traits while commanding their division, which will be applied if they are promoted to an army general." - BASE_CONTRIBUTION:0 "\nBase Value: $VALUE|H%$\n" - LOGISTICS_ONLY_FOR_ALLIES:0 "We can only view the logistics menu for faction members or subjects." - TRAINING_ACCIDENT:0 "a training accident" - SUNK_BY_MINES:0 "mines" - PARADROP_PLANES_REQUIRED:0 "\n§RThis order cannot be executed:§!\nAn additional $WINGS|H$ transport wing(s) are required." - RETAIN_CORES:0 "Retain States With Our Core" - TRIGGER_FUEL_RATIO:0 "Food Ratio" diff --git a/localisation/english/replace/equipment_l_english.yml b/localisation/english/replace/equipment_l_english.yml index 27eb9a950..e81a78c4b 100644 --- a/localisation/english/replace/equipment_l_english.yml +++ b/localisation/english/replace/equipment_l_english.yml @@ -1,515 +1,153 @@ l_english: - submarine:0 "Submarine" - submarine_desc:0 "Submarines employ stealth and powerful torpedoes to destroy enemy convoys." - both_cruisers_desc:0 "War Galley - A light screening vessel. Its primary duty is to shield capital ships from enemy light ships but can also unleash powerful torpedoes that can hurt bigger ships.\n\nHeavy Crusier - A large armored cruiser that is pretty flexible. A good choice for nations who can't afford to build larger capital ships." - light_cruiser:1 "War Galley" - light_cruiser_desc:0 "A light screening vessel. Its primary duty is to shield capital ships from enemy light ships but can also unleash powerful torpedoes that can hurt bigger ships." - heavy_cruiser:1 "Sailing Ship" - heavy_cruiser_desc:0 "A large armored cruiser that is pretty flexible. A good choice for nations who can't afford to build larger capital ships." - destroyer:0 "Longship" - destroyer_desc:0 "The lightest screening vessel. Its job is to defend larger ships and to find and destroy submarines." - ship_hull_light:1 "Light Hull" - ship_hull_light_desc:0 "The lightest screening vessel. Its job is to defend larger ships and to find and destroy submarines." - carrier:0 "Carrier" - carrier_desc:0 "A capital ship able to carry wings of powerful carrier capable aircraft into battle. Also useful as a floating airfield you can position off the coast of your enemy." - battleship:0 "Sailing Frigatte" - battleship_desc:0 "The largest capital ship with the biggest guns and strongest armor that money can buy. Such an expensive investment deserves proper support of smaller screening ships." - battle_cruiser:0 "Battlecruiser" - battle_cruiser_desc:0 "A large capital ship often with offensive abilities close to those of a battleship, but with weaker armor traded for a faster speed." - convoy:0 "Merchant Vessel" - convoy_desc:0 "Convoys used for international trade of goods and resources. Also used to ferry troops around and for performing naval invasions." - sh_battleship:0 "Superheavy Battleship" - sh_battleship_desc:0 "The largest capital ship with the biggest guns and strongest armor that money can buy. Such an expensive investment deserves proper support of smaller screening ships." - light_airframe:0 "Light Airframe" - light_airframe_desc:0 "Light Airframe based planes" - medium_airframe:0 "Medium Airframe" - medium_airframe_desc:0 "Medium Airframe based planes" - heavy_airframe:0 "Heavy Airframe" - heavy_airframe_desc:0 "Heavy Airframe based planes" - jet_engines:0 "Jet Engines" - JET_ENGINES_SPECIAL:0 "The development of Jet Engines is an essential prerequisite for the development of jet powered aircraft. This must be researched before you can research advanced aircraft" - jet_engines_desc:0 "A breakthrough in propulsion technology, the Jet Engine will enable the development of an entirely new generation of aircraft." - convoy_1:0 "Merchant Vessel" - armored_car_equipment:0 "Armored Carriage" - armored_car_equipment_desc:0 "Light-weight armored wheeled vehicles. Common for reconnaissance and resistance suppression, but can be fitted with heavier armaments." - armored_car_at_equipment:0 "Anti-Cavalry Armored Carriage" - motorized_equipment:0 "Chariot" - motorized_equipment_desc:0 "Trucks and other cars used for transporting troops to and in the field." - motorized_equipment_1:0 "Chariot" - motorized_equipment_1_desc:0 "Motorizing infantry is the first stage towards the mechanization of an army. Civilian trucks are readily adaptable to military uses of transporting soldiers, towing guns, and carrying equipment and supplies. This greatly increases the strategic mobility of infantry units, which would otherwise rely on marching." - support_equipment_short:0 "Support Eq." - support_equipment:0 "Support Equipment" - support_equipment_desc:0 "Radios, Jeeps, Pontoons & other equipment used to support troops." - support_equipment_1:0 "Support Equipment" - support_equipment_1_desc:0 "Radios, Jeeps, Pontoons & other equipment used to support troops." - EQUIPMENT_DESIGNER_DESC:0 "Designed by: $DESIGNER|Y$" - EQUIPMENT_ARMOR:0 "Armor" - EQUIPMENT_MOTORIZED:0 "Chariot" - EQUIPMENT_MECHANIZED:0 "War Wagon" - EQUIPMENT_INFANTRY:0 "Infantry" - EQUIPMENT_CAPITAL_SHIP:0 "Capital Ship" - EQUIPMENT_SUBMARINE:0 "Submarine" - EQUIPMENT_SCREEN:0 "Screen" - EQUIPMENT_CONVOY:0 "Trade Convoy" - EQUIPMENT_AIR_FIGHTER:0 "Fighter" - EQUIPMENT_AIR_CAS:0 "Close Air Support" - EQUIPMENT_INTERCEPTOR:0 "Interceptor" - EQUIPMENT_SUICIDE:1 "Suicide Craft" - EQUIPMENT_SCOUT_PLANE:0 "Scout Plane" - EQUIPMENT_TACTICAL_BOMBER:0 "Tactical Bomber" - EQUIPMENT_STRATEGIC_BOMBER:0 "Strategic Bomber" - EQUIPMENT_NAVAL_BOMBER:0 "Naval Bomber" - EQUIPMENT_TRANSPORT:0 "Transport" - EQUIPMENT_CARRIER:0 "Carrier" - EQUIPMENT_PARACHUTE:0 "Parachute" - EQUIPMENT_SUPPORT:0 "Support" - EQUIPMENT_ANTI_AIR:0 "Air Ballistae" - EQUIPMENT_ARTILLERY:0 "Bows" - EQUIPMENT_ANTI_TANK:0 "Ground Ballistae" - EQUIPMENT_ROCKET:0 "Rocket" - EQUIPMENT_MISSILE:0 "Guided Missile" - EQUIPMENT_LAND:0 "Land Equipment" - EQUIPMENT_NAVAL:0 "Naval Equipment" - EQUIPMENT_AIR:0 "Air Equipment" - EQUIPMENT_VERSION:0 "Mk$VERSION|0$" - EQUIPMENT_VEHICLE:0 "Vehicle" - UNIT_GENERIC_NAME_GENERIC_INFANTRY:0 "$NR$. $NAME$" - UNIT_GENERIC_NAME_GER:0 "$NR$. $NAME$" - UNIT_GENERIC_NAME_FRA:0 "$NR$ème $NAME$" - UNIT_GENERIC_NAME_ITA:0 "$NR$a $NAME$" - UNIT_GENERIC_NAME_JAP:0 "$NR$ $NAME$" - UNIT_GENERIC_NAME_SOV:0 "$NR$ya $NAME$" - - - #tanks - - - gw_tank_equipment:0 "Untrained Cavalry" - gw_tank_equipment_short:0 "Untrained Cavalry" - gw_tank_equipment_desc:0 "Tanks in World War I were developed separately and simultaneously by the United Kingdom and France as a means to break the deadlock of trench warfare on the Western Front. The name Tank was adopted by the British during the early stages of their development, as a security measure to conceal their purpose. Early tanks were armed with machineguns and small cannons, moved slowly, and were armored only enough to stop small arms fire." - light_tank_recon:0 "Scout Cavalry" - light_tank_equipment:0 "Light Cavalry" - light_tank_equipment_desc:0 "Light tanks are small, agile tanks which are able to both scout and fight lightly armored opponents." - light_tank_equipment_1:0 "Light Cavalry I" - light_tank_equipment_1_short:0 "L. Cavalry I" - light_tank_equipment_1_desc:0 "Light tanks are small, agile tanks which are able to both scout and fight lightly armored opponents." - - light_tank_equipment_2:0 "Light Cavalry II" - light_tank_equipment_2_short:0 "L. Cavalry II" - light_tank_equipment_2_desc:0 "Light tanks are small, agile tanks which are able to both scout and fight lightly armored opponents." - light_tank_equipment_3:0 "Light Cavalry III" - light_tank_equipment_3_short:0 "L. Cavalry III" - light_tank_equipment_3_desc:0 "Light tanks are small, agile tanks which are able to both scout and fight lightly armored opponents." - - light_tank_artillery_equipment:0 "Light Cavalry (SPG)" - light_tank_artillery_equipment_desc:0 "A small artillery cannon mounted on a light chassis, a light SPG does not pack the firepower of its larger brethren, but they are more mobile." - light_tank_artillery_equipment_1:0 "Light Cavalry (SPG) I" - light_tank_artillery_equipment_1_short:0 "L. SPG I" - light_tank_artillery_equipment_1_desc:0 "A small artillery cannon mounted on a light chassis, a light SPG does not pack the firepower of its larger brethren, but they are more mobile." - light_tank_artillery_equipment_2:0 "Light Cavalry (SPG) II" - light_tank_artillery_equipment_2_short:0 "L. SPG II" - light_tank_artillery_equipment_2_desc:0 "A small artillery cannon mounted on a light chassis, a light SPG does not pack the firepower of its larger brethren, but they are more mobile." - light_tank_artillery_equipment_3:0 "Light Cavalry (SPG) III" - light_tank_artillery_equipment_3_short:0 "L. SPG III" - light_tank_artillery_equipment_3_desc:0 "A small artillery cannon mounted on a light chassis, a light SPG does not pack the firepower of its larger brethren, but they are more mobile." - - - light_tank_destroyer_equipment:0 "Light Cavalry (TD)" - light_tank_destroyer_equipment_short:0 "L. TD" - light_tank_destroyer_equipment_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Light Tank Destroyers are based on the chassis of Light Tanks, which means they are fairly mobile but do not carry particularly powerful guns compared to heavier TDs." - light_tank_destroyer_equipment_1:0 "Light Cavalry (TD) I" - light_tank_destroyer_equipment_1_short:0 "L. TD I" - light_tank_destroyer_equipment_1_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Light Tank Destroyers are based on the chassis of Light Tanks, which means they are fairly mobile but do not carry particularly powerful guns compared to heavier TDs." - light_tank_destroyer_equipment_2:0 "Light Cavalry (TD) II" - light_tank_destroyer_equipment_2_short:0 "L. TD II" - light_tank_destroyer_equipment_2_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Light Tank Destroyers are based on the chassis of Light Tanks, which means they are fairly mobile but do not carry particularly powerful guns compared to heavier TDs." - light_tank_destroyer_equipment_3:0 "Light Cavalry (TD) III" - light_tank_destroyer_equipment_3_short:0 "L. TD III" - light_tank_destroyer_equipment_3_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Light Tank Destroyers are based on the chassis of Light Tanks, which means they are fairly mobile but do not carry particularly powerful guns compared to heavier TDs." - - light_tank_aa_equipment:0 "Light Cavalry (AA)" - light_tank_aa_equipment_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets. This model is mounted on the chassis of a light tank." - light_tank_aa_equipment_1:0 "Light Cavalry (AA) I" - light_tank_aa_equipment_1_short:0 "L. AA I" - light_tank_aa_equipment_1_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets. This model is mounted on the chassis of a light tank." - light_tank_aa_equipment_2:0 "Light Cavalry (AA) II" - light_tank_aa_equipment_2_short:0 "L. AA II" - light_tank_aa_equipment_2_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets. This model is mounted on the chassis of a light tank." - light_tank_aa_equipment_3:0 "Light Cavalry (AA) III" - light_tank_aa_equipment_3_short:0 "L. AA III" - light_tank_aa_equipment_3_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets. This model is mounted on the chassis of a light tank." - - medium_tank_equipment:0 "Medium Cavalry" - medium_tank_equipment_desc:0 "Medium tanks are reasonably agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - medium_tank_equipment_1:0 "Medium Cavalry I" - medium_tank_equipment_1_short:0 "M. Cavalry I" - medium_tank_equipment_1_desc:0 "Medium tanks are reasonably agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - - medium_tank_equipment_2:0 "Medium Cavalry II" - medium_tank_equipment_2_short:0 "M. Cavalry II" - medium_tank_equipment_2_desc:0 "Medium tanks are reasonably agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - - medium_tank_equipment_3:0 "Medium Cavalry III" - medium_tank_equipment_3_short:0 "M. Cavalry III" - medium_tank_equipment_3_desc:0 "Medium tanks are reasonably agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - - medium_tank_artillery_equipment:0 "Medium Cavalry (SPG)" - medium_tank_artillery_equipment_short:0 "M. SPG" - medium_tank_artillery_equipment_desc:0 "A medium artillery cannon mounted on a medium tank chassis, a medium SPG packs respectable firepower while still being quite mobile." - medium_tank_artillery_equipment_1:0 "Medium Cavalry (SPG) I" - medium_tank_artillery_equipment_1_short:0 "M. SPG I" - medium_tank_artillery_equipment_1_desc:0 "A medium artillery cannon mounted on a medium tank chassis, a medium SPG packs respectable firepower while still being quite mobile." - medium_tank_artillery_equipment_2:0 "Medium Cavalry (SPG) II" - medium_tank_artillery_equipment_2_short:0 "M. SPG II" - medium_tank_artillery_equipment_2_desc:0 "A medium artillery cannon mounted on a medium tank chassis, a medium SPG packs respectable firepower while still being quite mobile." - medium_tank_artillery_equipment_3:0 "Medium Cavalry (SPG) III" - medium_tank_artillery_equipment_3_short:0 "M. SPG III" - medium_tank_artillery_equipment_3_desc:0 "A medium artillery cannon mounted on a medium tank chassis, a medium SPG packs respectable firepower while still being quite mobile." - - medium_tank_destroyer_equipment:0 "Medium Cavalry (TD)" - medium_tank_destroyer_equipment_short:0 "M. TD" - medium_tank_destroyer_equipment_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Medium Tank Destroyers are based on the chassis of Medium Tanks, meaning they are fairly mobile and carry respectable firepower." - medium_tank_destroyer_equipment_1:0 "Medium Cavalry (TD) I" - medium_tank_destroyer_equipment_1_short:0 "M. TD I" - medium_tank_destroyer_equipment_1_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Medium Tank Destroyers are based on the chassis of Medium Tanks, meaning they are fairly mobile and carry respectable firepower." - medium_tank_destroyer_equipment_2:0 "Medium Cavalry (TD) II" - medium_tank_destroyer_equipment_2_short:0 "M. TD II" - medium_tank_destroyer_equipment_2_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Medium Tank Destroyers are based on the chassis of Medium Tanks, meaning they are fairly mobile and carry respectable firepower." - medium_tank_destroyer_equipment_3:0 "Medium Cavalry (TD) III" - medium_tank_destroyer_equipment_3_short:0 "M. TD III" - medium_tank_destroyer_equipment_3_desc:0 "Tank Destroyers are tanks with a larger than normal gun in a fixed mounting in place of a turret. Medium Tank Destroyers are based on the chassis of Medium Tanks, meaning they are fairly mobile and carry respectable firepower." - - medium_tank_aa_equipment:0 "Medium Cavalry (AA)" - medium_tank_aa_equipment_desc:0 "Mobile anti-air artillery mounted on a medium tank chassis." - medium_tank_aa_equipment_1:0 "Medium Cavalry (AA) I" - medium_tank_aa_equipment_1_short:0 "M. AA I" - medium_tank_aa_equipment_1_desc:0 "Mobile anti-air artillery mounted on a medium tank chassis." - medium_tank_aa_equipment_2:0 "Medium Cavalry (AA) II" - medium_tank_aa_equipment_2_short:0 "M. AA II" - medium_tank_aa_equipment_2_desc:0 "Mobile anti-air artillery mounted on a medium tank chassis." - medium_tank_aa_equipment_3:0 "Medium Cavalry (AA) III" - medium_tank_aa_equipment_3_short:0 "M. AA III" - medium_tank_aa_equipment_3_desc:0 "Mobile anti-air artillery mounted on a medium tank chassis." - - heavy_tank_equipment:0 "Catapult" - heavy_tank_equipment_desc:0 "Heavy tanks are large, armored monsters which are designed to destroy enemy tanks and fortifications." - heavy_tank_equipment_1:0 "Catapult I" - heavy_tank_equipment_1_short:0 "Catapult I" - heavy_tank_equipment_1_desc:0 "Heavy tanks are large, armored monsters which are designed to destroy enemy tanks and fortifications." - - heavy_tank_equipment_2:0 "Catapult II" - heavy_tank_equipment_2_short:0 "Catapult II" - heavy_tank_equipment_2_desc:0 "Heavy tanks are large, armored monsters which are designed to destroy enemy tanks and fortifications." - - heavy_tank_equipment_3:0 "Catapult III" - heavy_tank_equipment_3_short:0 "Catapult III" - heavy_tank_equipment_3_desc:0 "Heavy tanks are large, armored monsters which are designed to destroy enemy tanks and fortifications." - - heavy_tank_artillery_equipment:0 "Catapult (SPG)" - heavy_tank_artillery_equipment_desc:0 "A large artillery piece mounted on a heavy chassis, these self-propelled guns carry a lot of firepower." - heavy_tank_artillery_equipment_1:0 "Catapult (SPG) I" - heavy_tank_artillery_equipment_1_short:0 "H. SPG I" - heavy_tank_artillery_equipment_1_desc:0 "A large artillery piece mounted on a heavy chassis, these self-propelled guns carry a lot of firepower." - heavy_tank_artillery_equipment_2:0 "Catapult (SPG) II" - heavy_tank_artillery_equipment_2_short:0 "H. SPG II" - heavy_tank_artillery_equipment_2_desc:0 "A large artillery piece mounted on a heavy chassis, these self-propelled guns carry a lot of firepower." - heavy_tank_artillery_equipment_3:0 "Catapult (SPG) III" - heavy_tank_artillery_equipment_3_short:0 "H. SPG III" - heavy_tank_artillery_equipment_3_desc:0 "A large artillery piece mounted on a heavy chassis, these self-propelled guns carry a lot of firepower." - - heavy_tank_destroyer_equipment:0 "Catapult (TD)" - heavy_tank_destroyer_equipment_short:0 "H. TD" - heavy_tank_destroyer_equipment_desc:0 "A heavy tank with the turret removed to carry an even larger gun in a fixed mounting." - heavy_tank_destroyer_equipment_1:0 "Catapult (TD) I" - heavy_tank_destroyer_equipment_1_short:0 "H. TD I" - heavy_tank_destroyer_equipment_1_desc:0 "A heavy tank with the turret removed to carry an even larger gun in a fixed mounting." - heavy_tank_destroyer_equipment_2:0 "Catapult (TD) II" - heavy_tank_destroyer_equipment_2_short:0 "H. TD II" - heavy_tank_destroyer_equipment_2_desc:0 "A heavy tank with the turret removed to carry an even larger gun in a fixed mounting." - heavy_tank_destroyer_equipment_3:0 "Catapult (TD) III" - heavy_tank_destroyer_equipment_3_short:0 "H. TD III" - heavy_tank_destroyer_equipment_3_desc:0 "A heavy tank with the turret removed to carry an even larger gun in a fixed mounting." - - heavy_tank_aa_equipment:0 "Catapult (AA)" - heavy_tank_aa_equipment_desc:0 "A powerful anti-air armament mounted on a heavy chassis." - heavy_tank_aa_equipment_1:0 "Catapult (AA) I" - heavy_tank_aa_equipment_1_short:0 "H. AA I" - heavy_tank_aa_equipment_1_desc:0 "A powerful anti-air armament mounted on a heavy chassis." - heavy_tank_aa_equipment_2:0 "Catapult (AA) II" - heavy_tank_aa_equipment_2_short:0 "H. AA II" - heavy_tank_aa_equipment_2_desc:0 "A powerful anti-air armament mounted on a heavy chassis." - heavy_tank_aa_equipment_3:0 "Catapult (AA) III" - heavy_tank_aa_equipment_3_short:0 "H. AA III" - heavy_tank_aa_equipment_3_desc:0 "A powerful anti-air armament mounted on a heavy chassis." - - super_heavy_tank_equipment:0 "Siege Tower" - super_heavy_tank_equipment_desc:0 "Super heavy tanks are an evolution of the Heavy tank concept. Bigger, better armed, with more armor, they are also slower and have severe problems with soft ground and few bridges can hope to handle their weight." - super_heavy_tank_equipment_1:0 "Siege Tower" - super_heavy_tank_equipment_1_short:0 "S. Tower" - super_heavy_tank_equipment_1_desc:0 "Super heavy tanks are an evolution of the Heavy tank concept. Bigger, better armed, with more armor, they are also slower and have severe problems with soft ground and few bridges can hope to handle their weight." - - super_heavy_tank_artillery_equipment:0 "Siege Tower (SPG)" - super_heavy_tank_artillery_equipment_desc:0 "Massive artillery cannons mounted on super heavy chassis." - super_heavy_tank_artillery_equipment_1:0 "Siege Tower (SPG)" - super_heavy_tank_artillery_equipment_1_short:0 "SH. SPG" - super_heavy_tank_artillery_equipment_1_desc:0 "Massive artillery cannons mounted on super heavy chassis." - - super_heavy_tank_destroyer_equipment:0 "Siege Tower (TD)" - super_heavy_tank_destroyer_equipment_short:0 "SH. Tank Destroyer" - super_heavy_tank_destroyer_equipment_desc:0 "A super heavy tank chassis with an even larger gun in a fixed mount instead of a turret." - super_heavy_tank_destroyer_equipment_1:0 "Siege Tower (TD)" - super_heavy_tank_destroyer_equipment_1_short:0 "SH. TD" - super_heavy_tank_destroyer_equipment_1_desc:0 "A super heavy tank chassis with an even larger gun in a fixed mount instead of a turret." - - super_heavy_tank_aa_equipment:0 "Siege Tower (AA)" - super_heavy_tank_aa_equipment_desc:0 "Super heavy tank chassis with anti-aircraft armament." - super_heavy_tank_aa_equipment_1:0 "Siege Tower (AA)" - super_heavy_tank_aa_equipment_1_short:0 "SH. AA" - super_heavy_tank_aa_equipment_1_desc:0 "Super heavy tank chassis with anti-aircraft armament." - - #modern_tank_equipment:1 "TROLLENTS" - #modern_tank_equipment_desc:0 "Modern tanks are agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - #modern_tank_equipment_1:1 "Modern Tank" - #modern_tank_equipment_1_short:1 "Mod. Tank" - #modern_tank_equipment_1_desc:0 "Modern tanks are agile multi-purpose tanks which are able to take on many roles such as scouts, support, or even front-line tanks." - - #modern_tank_artillery_equipment:0 "Modern SP Artillery" - #modern_tank_artillery_equipment_desc:0 "Modern self-propelled artillery vehicles may superficially resemble tanks, but they are generally lightly armored, too lightly to survive in direct-fire combat. However, they protect their crews against shrapnel and small arms." - #modern_tank_artillery_equipment_1:0 "Modern SP Artillery" - #modern_tank_artillery_equipment_1_short:0 "Modern SPG" - #modern_tank_artillery_equipment_1_desc:0 "Modern self-propelled artillery vehicles may superficially resemble tanks, but they are generally lightly armored, too lightly to survive in direct-fire combat. However, they protect their crews against shrapnel and small arms." - - #modern_tank_destroyer_equipment:0 "Modern Tank Destroyer" - #modern_tank_destroyer_equipment_desc:0 "Modern Tank Destroyers are an evolution of earlier light and medium TDs, preferring mobility and stealth to heavy armor." - #modern_tank_destroyer_equipment_1:0 "Modern Tank Destroyer" - #modern_tank_destroyer_equipment_1_short:0 "Modern TD" - #modern_tank_destroyer_equipment_1_desc:0 "Modern Tank Destroyers are an evolution of earlier light and medium TDs, preferring mobility and stealth to heavy armor." - - #modern_tank_aa_equipment:0 "Modern SP Anti-Air" - #modern_tank_aa_equipment_desc:0 "A combination of anti-air missiles and rapid fire cannon, modern anti-air artillery presents a deadly threat to aircraft." - #modern_tank_aa_equipment_1:0 "Modern SP Anti-Air" - #modern_tank_aa_equipment_1_short:0 "Modern AA" - #modern_tank_aa_equipment_1_desc:0 "A combination of anti-air missiles and rapid fire cannon, modern anti-air artillery presents a deadly threat to aircraft." - - - mechanized_equipment:0 "War Wagon" - mechanized_equipment_short:0 "War Wagon" - mechanized_equipment_desc:0 "Mechanized infantry is infantry equipped with armored personnel carriers (APCs) or infantry fighting vehicles (IFVs) for transport and combat. Mechanized infantry is distinguished from motorized infantry in that its vehicles provide a degree of protection from hostile fire, as opposed to soft-skinned wheeled vehicles (trucks or jeeps) for motorized infantry." - mechanized_equipment_1:0 "War Wagon I" - mechanized_equipment_1_short:0 "War Wagon I" - mechanized_equipment_1_desc:0 "Mechanized infantry is infantry equipped with armored personnel carriers (APCs) or infantry fighting vehicles (IFVs) for transport and combat. Mechanized infantry is distinguished from motorized infantry in that its vehicles provide a degree of protection from hostile fire, as opposed to soft-skinned wheeled vehicles (trucks or jeeps) for motorized infantry." - mechanized_equipment_2:0 "War Carriage II" - mechanized_equipment_2_short:0 "War Wagon II" - mechanized_equipment_2_desc:0 "Mechanized infantry is infantry equipped with armored personnel carriers (APCs) or infantry fighting vehicles (IFVs) for transport and combat. Mechanized infantry is distinguished from motorized infantry in that its vehicles provide a degree of protection from hostile fire, as opposed to soft-skinned wheeled vehicles (trucks or jeeps) for motorized infantry." - mechanized_equipment_3:0 "War Carriage III" - mechanized_equipment_3_short:0 "War Wagon III" - mechanized_equipment_3_desc:0 "Mechanized infantry is infantry equipped with armored personnel carriers (APCs) or infantry fighting vehicles (IFVs) for transport and combat. Mechanized infantry is distinguished from motorized infantry in that its vehicles provide a degree of protection from hostile fire, as opposed to soft-skinned wheeled vehicles (trucks or jeeps) for motorized infantry." - - - anti_air_equipment:0 "Towed Air Ballista" - anti_air_equipment_short:0 "Air Ballista" - anti_air_equipment_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets." - anti_tank_equipment:0 "Towed Ground Ballista" - anti_tank_equipment_short:0 "Ground Ballista" - anti_tank_equipment_desc:0 "Artillery specialized in defeating armored targets like Tanks, it generally fires armor piercing shells." - -#anti-tank - - - anti_air_equipment_1:0 "Towed Air Ballista" - anti_air_equipment_1_short:0 "Air Ballista" - anti_air_equipment_1_desc:0 "Anti-air artillery is primarily designed to shoot down hostile planes, although the rapid fire cannons can also be effective against ground targets." - -#anti-air - - - anti_tank_equipment_1:0 "Ground Ballista" - anti_tank_equipment_1_short:0 "Ground Ballista" - anti_tank_equipment_1_desc:0 "Artillery specialized in defeating armored targets like Tanks, it generally fires armor piercing shells." - artillery_equipment:0 "Bow" - artillery_equipment_short:0 "Bow" - artillery_equipment_desc:0 "Artillery refers to large-caliber weapons, such as cannons and howitzers that are operated by crews, which can project munitions far beyond the effective range of personal weapons." - - - - rocket_artillery_equipment:0 "Crossbow" - rocket_artillery_equipment_short:0 "Crossbow" - rocket_artillery_equipment_desc:0 "Rocket artillery is less accurate and has a much lower sustained rate of fire than batteries of traditional artillery guns. However, they have the capability of simultaneously hitting a target with multiple rockets with devastating effect." - - - artillery_equipment_1:0 "Bow" - artillery_equipment_1_short:0 "Bow" - artillery_equipment_1_desc:0 "Artillery refers to large-caliber weapons, such as cannons and howitzers that are operated by crews, which can project munitions far beyond the effective range of personal weapons." - rocket_artillery_equipment_1:0 "Crossbow" - rocket_artillery_equipment_1_short:0 "Crossbow" - rocket_artillery_equipment_1_desc:0 "Rocket artillery is less accurate and has a much lower sustained rate of fire than batteries of traditional artillery guns. However, they have the capability of simultaneously hitting a target with multiple rockets with devastating effect." - infantry_equipment:0 "Infantry Equipment" - infantry_equipment_short:0 "Infantry Eq." - infantry_equipment_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs." - infantry_equipment_0:0 "Crude Infantry Equipment" - infantry_equipment_0_short:0 "Cru. Infantry Equipment" - infantry_equipment_0_desc:0 "Basic infantryman equipment developed before and during the Great War." - infantry_equipment_1:0 "Basic Infantry Equipment" - infantry_equipment_1_short:0 "Bas. Infantry Equipment" - infantry_equipment_1_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs." - infantry_equipment_2:0 "Improved Infantry Equipment" - infantry_equipment_2_short:0 "Imp. Infantry Equipment" - infantry_equipment_2_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs. Modernized to include a great number of sub-machineguns and anti-tank rifles." - infantry_equipment_3:0 "Advanced Infantry Equipment" - infantry_equipment_3_short:0 "Adv. Infantry Equipment" - infantry_equipment_3_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs. Further modernized to include personal Assault Rifles and anti-tank rockets." - - gw_armored_car_equipment:0 "Basic Armored Carriage" - gw_armored_car_equipment_desc:0 "Where previous armored cars were simple commercial models with thin steel plating, this model was designed from the ground up to carry armor and light armament." - armored_car_equipment_1:0 "Improved Armored Carriage" - armored_car_equipment_1_desc:0 "An improved internal layout and additional ammunition storage creates a more effective armored car." - armored_car_equipment_2:0 "Advanced Armored Carriage" - armored_car_equipment_2_desc:0 "Changes on the battlefield require a much heavier armament and thicker armor to defeat enemy light units and survive to report back." - armored_car_at_equipment:0 "Anti-Tank Armored Carriage" - armored_car_at_equipment_desc:0 "Our light mechanized units will come into contact with enemy tank forces at some point. Developing a special anti-tank variant would give them a fighting chance." - - - - - - tank_armor_upgrade:0 "Armor" - tank_armor_upgrade_desc:0 "Better armor than your enemies can penetrate is a huge advantage to your divisions but is probably going to slow you down." - tank_gun_upgrade:0 "Main Gun" - tank_gun_upgrade_desc:0 "It's important to have a gun that keep up with enemy armor strength and can penetrate." - tank_aa_upgrade:0 "Anti-Air Armament" - tank_aa_upgrade_desc:0 "Ensure that our Anti-Air Armament is able to shoot down the latest planes." - tank_at_upgrade:0 "Anti-Tank Armament" - tank_at_upgrade_desc:0 "Ensure that our tank destroyers can defeat the latest enemy tanks." - tank_art_upgrade:0 "Artillery Armament" - tank_art_upgrade_desc:1 "Ensure that our self propelled artillery have massive firepower that will tear through any unarmored enemies." - tank_reliability_upgrade:0 "Reliability" - tank_reliability_upgrade_desc:0 "Improving reliability leads to less broken down tanks you'll need to replace." - tank_engine_upgrade:0 "Engine" - tank_engine_upgrade_desc:0 "More mobility give tactical and strategic advantages, as well as allowing more armor without being slowed down significantly." - ac_engine_upgrade:0 "Engine" - ac_engine_upgrade_desc:0 "More mobility give tactical and strategic advantages, as well as allowing more armor without being slowed down significantly." - ship_gun_upgrade:0 "Gun" - ship_gun_upgrade_desc:0 "It's important to have a gun that keep up with enemy armor strength and can penetrate." - ship_torpedo_upgrade:0 "Torpedo" - ship_torpedo_upgrade_desc:0 "A torpedo is a powerful attack launchable by smaller ships once in range with a high chance of critical hits" - ship_armor_upgrade:0 "Armor" - ship_armor_upgrade_desc:0 "More armor to protect your ship against enemy fire" - carrier_armor_upgrade:0 "Armor" - carrier_armor_upgrade_desc:0 "More armor to protect your ship against enemy fire" - ship_engine_upgrade:0 "Engine" - ship_engine_upgrade_desc:0 "A ship with a more powerful engine can control distance to its opponents in battle" - ship_reliability_upgrade:0 "Reliability" - ship_reliability_upgrade_desc:0 "A ship with high reliability will be less prone to critical hits that can do massive damage to a ship without well thought out construction." - ship_anti_air_upgrade:0 "Anti-Air" - ship_anti_air_upgrade_desc:0 "More guns putting lead in the air means more enemy planes shot down!" - ship_ASW_upgrade:0 "ASW" - ship_ASW_upgrade_desc:0 "Anti-Submarine-Warfare weapons are important for locating and taking out submarines." - destroyer_engine_upgrade:0 "Engine" - destroyer_engine_upgrade_desc:0 "A ship with a more powerful engine can control distance to its opponents in battle" - sub_engine_upgrade:0 "Engine" - sub_engine_upgrade_desc:0 "A ship with a more powerful engine can control distance to its opponents in battle" - sub_stealth_upgrade:0 "Stealth" - sub_stealth_upgrade_desc:0 "A submarines greatest strength is its ability to remain undetected and only strike when it has the advantage." - sub_torpedo_upgrade:0 "Torpedo" - sub_torpedo_upgrade_desc:0 "A torpedo is a powerful attack launchable by smaller ships once in range with a high chance of critical hits" - ship_deckspace_upgrade:0 "Deck space" - ship_deckspace_upgrade_desc:0 "More room to carry and launch carrier-capable airplanes" - plane_gun_upgrade:0 "Weapons" - plane_gun_upgrade_desc:0 "Better weapons to fight other planes with" - cv_plane_gun_upgrade:0 "Weapons" - cv_plane_gun_upgrade_desc:0 "Better weapons to fight other planes with" - plane_engine_upgrade:0 "Engine" - plane_engine_upgrade_desc:0 "Higher speed gives a plane an advantage when it comes to positioning and target selection. Important for interceptors." - plane_range_upgrade:0 "Range" - plane_range_upgrade_desc:0 "A plane with better range can reach more strategic areas for missions" - cv_plane_range_upgrade:0 "Range" - cv_plane_range_upgrade_desc:0 "A plane with better range can reach more strategic areas for missions" - plane_reliability_upgrade:0 "Reliability" - plane_reliability_upgrade_desc:0 "A plane with low reliability has a chance of accidents during missions" - plane_naval_upgrade:0 "Attack" - plane_naval_upgrade_desc:0 "More carry capacity of anti-ship weapons." - cv_plane_naval_upgrade:0 "Attack" - cv_plane_naval_upgrade_desc:0 "More carry capacity of anti-ship weapons." - plane_bomb_upgrade:0 "Bombing" - plane_bomb_upgrade_desc:0 "Bigger bomb bay to deliver more payload." - plane_tac_bomb_upgrade:0 "Bombing" - plane_tac_bomb_upgrade_desc:0 "Bigger bomb bay to deliver more payload." - plane_cas_upgrade:0 "Attack" - plane_cas_upgrade_desc:0 "Improved weapons for attacking ground targets" - plane_armor_upgrade:0 "Armor" - plane_armor_upgrade_desc:0 "Self-sealing fuel tanks and armor plates improve survivability." - ACTUAL_EQUIPMENT_HEADER:0 "\n\nEquipment:\n" - ACTUAL_EQUIPMENT_ENTRY:0 " - $NUM|Y0$ of $NAME|Y$" - ACTUAL_EQUIPMENT_ENTRY_STRING:0 " - $NUM|Y$ of $NAME|Y$" - ACTUAL_EQUIPMENT_ENTRY_PERCENT:0 " - $NUM|Y0%$ from their production of $NAME|Y$" - REQUESTED_REINFORCEMENT_DELIVERING_TO:0 "\nDelivering to $UNIT|Y$ ($PROG|G%$):" - REQUESTED_REINFORCEMENT_DELIVERING_TO_BLOCKED:1 "\nDelivering to $UNIT|Y$ ($PROG|G%$ §RBlocked: no supply from capital§! ):" - REQUESTED_REINFORCEMENT_DELIVERING_TO_ENTRY:0 "\n $NUM|Y0$ of $EQ|Y$" - REQUESTED_REINFORCEMENT_DELIVERING_TO_MORE_ENTRIES:1 "\nAnd $COUNT|H$ requests more..." - REQUESTED_REINFORCEMENT_HEADER:0 "Reinforcement requests:" - UPGRADE_REINFORCEMENT_HEADER:0 "Upgrade requests:" - TIMED_ACTIVITY_HEADER:0 "Activity request:" - REQUESTED_REINFORCEMENT_COLLECTING:0 " - Waiting for equipment to be §Hproduced§!:" - REQUESTED_REINFORCEMENT_DELIVERY:0 " - Waiting for equipment to be §Hdelivered§! ($PROG|H%$):" - REQUESTED_REINFORCEMENT_COLLECTING_BLOCKED:0 " - §RReinforcement blocked: no supply from capital§!" - REQUESTED_REINFORCEMENT_COLLECTING_AND_DELIVERY:0 " - Waiting for equipment to be §Hproduced§! and §Hdelivered§!:" - REQUESTED_REINFORCEMENT_DELIVERY_NO_PROGRESS:0 " - Waiting for equipment to be §Hdelivered§!:" - REQUESTED_REINFORCEMENT_COLLECTING_ENTRY:0 " - $NUM|Y0$/$MAX|Y0$ of $NAME|Y$" - REQUESTED_REINFORCEMENT_DELIVERY_ENTRY:0 " - $NUM|Y0$ of $NAME|Y$" - REQUESTED_TIMED_ACTIVITY_COLLECTING_ENTRY:0 " - $NUM|Y0$/$MAX|Y0$ of $NAME|Y$" - REQUESTED_MANPOWER_DETAILS:0 "Next $NUM|Y$ of manpower will arrive in $HR|Y$ hours.\nFull manpower reinforcement roughly in $D|Y$ days." - NOT_ENOUGH_MANPOWER_TO_REINFORCE:0 "Not enough manpower to reinforce." - MANPOWER_REINFORCEMENT_NOT_POSSIBLE:0 "§RManpower reinforcement is not possible at the current location.§!" - ARCHETYPE_DESC_ENTRY:0 " - $COUNT|0$ $NAME|H$" - OUTDATED_EQ:1 "Show §Houtdated equipment§!" - guided_missile_equipment:0 "Long-Distance Spells" - guided_missile_equipment_1:0 "Long-Distance Spells" - guided_missile_equipment_1_short:0 "Long-Distance Spells" - guided_missile_equipment_1_desc:0 "Long-Distance Spells" - guided_missile_equipment_2:0 "Improved Long-Distance Spells" - guided_missile_equipment_2_short:0 "Long-Distance Spells II" - guided_missile_equipment_2_desc:0 "Long-Distance Spells" - guided_missile_equipment_3:0 "Advanced Long-Distance Spells" - guided_missile_equipment_3_short:0 "Long-Distance Spells III" - guided_missile_equipment_3_desc:0 "Long-Distance Spells" - artillery_equipment_2:0 "Improved Bow" - artillery_equipment_2_desc:0 "New howitzer designs, taking advantage of new hydraulic recoil devices and longer barrels." - artillery_equipment_3:0 "Advanced Bow" - artillery_equipment_3_desc:0 "Light-weight artillery capable of being broken down for transport, making it possible to bring artillery support to areas previously difficult to reach." - anti_air_equipment_2:0 "Improved Air Ballista" - anti_air_equipment_2_short:0 "Imp. Air Ballista" - anti_air_equipment_2_desc:0 "Anti-air guns with longer cartridges and barrels, able to target high-flying aircraft." - anti_air_equipment_3:0 "Advanced Ballista" - anti_air_equipment_3_short:0 "Adv. Air Ballista" - anti_air_equipment_3_desc:1 "An advanced mobile flak gun with greater reach and firing capacity, to combat even the fastest and highest-flying enemy aircraft." - rocket_artillery_equipment_2:0 "Advanced Crossbow" - rocket_artillery_equipment_2_desc:0 "Spin-stabilized rockets, increasing the range of lighter artillery batteries." - anti_tank_equipment_2:0 "Improved Ground Ballista" - anti_tank_equipment_2_short:0 "Imp. Ground Ballista" - anti_tank_equipment_2_desc:0 "Larger caliber guns to combat heavier tanks with sloped armor." - anti_tank_equipment_3:0 "Advanced Ground Ballista" - anti_tank_equipment_3_short:0 "Adv. Ground Ballista" - anti_tank_equipment_3_desc:0 "Combining different kinds of new ammunition technology with guns with higher muzzle velocities, these anti-tank guns are prepared for whatever new armor our enemies may develop." - motorized_rocket_equipment:0 "Mounted Archer" - motorized_rocket_equipment_short:0 "Mounted Archer" - motorized_rocket_equipment_desc:0 "Multiple rocket launchers such as these deliver explosives to a target area more quickly than conventional artillery, but with lower accuracy and requiring a longer time to reload. Being mounted on trucks, this version is able to launch attacks and change positions before the enemy can return fire." - motorized_rocket_equipment_1:0 "Mounted Archer" - motorized_rocket_equipment_1_short:0 "Mounted Archer" - motorized_rocket_equipment_1_desc:0 "Multiple rocket launchers such as these deliver explosives to a target area more quickly than conventional artillery, but with lower accuracy and requiring a longer time to reload. Being mounted on trucks, this version is able to launch attacks and change positions before the enemy can return fire." - amphibious_mechanized_equipment:0 "Amphibious Landing Vehicles" - amphibious_mechanized_equipment_short:0 "Amtracs" - amphibious_mechanized_equipment_desc:0 "Amphibious Tractors, or Amtracs, allow Marines to be landed on a beach under armored protection. However, this comes at the cost of poor fuel efficiency." - amphibious_mechanized_equipment_1:0 "Basic Amphibious Tractor" - amphibious_mechanized_equipment_1_short:0 "Basic Amtrac" - amphibious_mechanized_equipment_1_desc:0 "Amphibious Tractors, or Amtracs, allow Marines to be landed on a beach under armored protection. However, this comes at the cost of poor fuel efficiency." - amphibious_mechanized_equipment_2:0 "Improved Amphibious Tractor" - amphibious_mechanized_equipment_2_short:0 "Improved Amtrac" - amphibious_mechanized_equipment_2_desc:0 "These Amtracs feature several improvements over the base version, such as a rear loading ramp for easier unloading on the beach." - amphibious_tank_equipment:0 "Amphibious Tanks" - amphibious_tank_equipment_short:0 "Amphib. Tanks" - amphibious_tank_equipment_1:0 "Basic Amphibious Tank" - amphibious_tank_equipment_2:0 "Improved Amphibious Tank" - amphibious_tank_equipment_desc:0 "Tanks that were modified to allow them to move through water. They do much better in amphibious landings and river crossings than other tanks, but require more fuel." - amphibious_tank_equipment_1_desc:0 "Essentially a light tank modified to float, this vehicle offers fire support to units establishing a beachhead." - amphibious_tank_equipment_2_desc:0 "A medium tank modified to move through water. The added versatility and mobility comes at the cost of reduced fuel efficiency." - EQUIPMENT_MODULE_NOT_ALLOWED:0 "§RUnavailable§!" +both_cruisers_desc:0 "War Galley - A light screening vessel. Its primary duty is to shield capital ships from enemy light ships but can also unleash powerful torpedoes that can hurt bigger ships.\n\nHeavy Crusier - A large armored cruiser that is pretty flexible. A good choice for nations who can't afford to build larger capital ships." +light_cruiser:0 "War Galley" +heavy_cruiser:0 "Sailing Ship" +destroyer:0 "Longship" +battleship:0 "Sailing Frigatte" +convoy:0 "Merchant Vessel" +convoy_1:0 "Merchant Vessel" +armored_car_at_equipment:0 "Anti-Tank Armored Carriage" +motorized_equipment:0 "Chariot" +motorized_equipment_desc:0 "Trucks and other cars used for transporting troops to and in the field." +motorized_equipment_1:0 "Chariot" +EQUIPMENT_MOTORIZED:0 "Chariot" +EQUIPMENT_MECHANIZED:0 "War Wagon" +EQUIPMENT_AIR_FIGHTER:0 "Fighter" +EQUIPMENT_AIR_CAS:0 "Close Air Support" +EQUIPMENT_ANTI_AIR:0 "Air Ballistae" +EQUIPMENT_ARTILLERY:0 "Bows" +EQUIPMENT_ANTI_TANK:0 "Ground Ballistae" +gw_tank_equipment:0 "Untrained Cavalry" +gw_tank_equipment_short:0 "Untrained Cavalry" +light_tank_recon:0 "Scout Cavalry" +light_tank_equipment:0 "Light Cavalry" +light_tank_equipment_1:0 "Light Cavalry I" +light_tank_equipment_1_short:0 "L. Cavalry I" +light_tank_equipment_2:0 "Light Cavalry II" +light_tank_equipment_2_short:0 "L. Cavalry II" +light_tank_equipment_3:0 "Light Cavalry III" +light_tank_equipment_3_short:0 "L. Cavalry III" +light_tank_artillery_equipment:0 "Light Cavalry (SPG)" +light_tank_artillery_equipment_1:0 "Light Cavalry (SPG) I" +light_tank_artillery_equipment_2:0 "Light Cavalry (SPG) II" +light_tank_artillery_equipment_3:0 "Light Cavalry (SPG) III" +light_tank_destroyer_equipment:0 "Light Cavalry (TD)" +light_tank_destroyer_equipment_short:0 "L. TD" +light_tank_destroyer_equipment_1:0 "Light Cavalry (TD) I" +light_tank_destroyer_equipment_2:0 "Light Cavalry (TD) II" +light_tank_destroyer_equipment_3:0 "Light Cavalry (TD) III" +light_tank_aa_equipment:0 "Light Cavalry (AA)" +light_tank_aa_equipment_1:0 "Light Cavalry (AA) I" +light_tank_aa_equipment_2:0 "Light Cavalry (AA) II" +light_tank_aa_equipment_3:0 "Light Cavalry (AA) III" +medium_tank_equipment:0 "Medium Cavalry" +medium_tank_equipment_1:0 "Medium Cavalry I" +medium_tank_equipment_1_short:0 "M. Cavalry I" +medium_tank_equipment_2:0 "Medium Cavalry II" +medium_tank_equipment_2_short:0 "M. Cavalry II" +medium_tank_equipment_3:0 "Medium Cavalry III" +medium_tank_equipment_3_short:0 "M. Cavalry III" +medium_tank_artillery_equipment:0 "Medium Cavalry (SPG)" +medium_tank_artillery_equipment_1:0 "Medium Cavalry (SPG) I" +medium_tank_artillery_equipment_2:0 "Medium Cavalry (SPG) II" +medium_tank_artillery_equipment_3:0 "Medium Cavalry (SPG) III" +medium_tank_destroyer_equipment:0 "Medium Cavalry (TD)" +medium_tank_destroyer_equipment_short:0 "M. TD" +medium_tank_destroyer_equipment_1:0 "Medium Cavalry (TD) I" +medium_tank_destroyer_equipment_2:0 "Medium Cavalry (TD) II" +medium_tank_destroyer_equipment_3:0 "Medium Cavalry (TD) III" +medium_tank_aa_equipment:0 "Medium Cavalry (AA)" +medium_tank_aa_equipment_1:0 "Medium Cavalry (AA) I" +medium_tank_aa_equipment_2:0 "Medium Cavalry (AA) II" +medium_tank_aa_equipment_3:0 "Medium Cavalry (AA) III" +heavy_tank_equipment:0 "Catapult" +heavy_tank_equipment_1:0 "Catapult I" +heavy_tank_equipment_1_short:0 "Catapult I" +heavy_tank_equipment_2:0 "Catapult II" +heavy_tank_equipment_2_short:0 "Catapult II" +heavy_tank_equipment_3:0 "Catapult III" +heavy_tank_equipment_3_short:0 "Catapult III" +heavy_tank_artillery_equipment:0 "Catapult (SPG)" +heavy_tank_artillery_equipment_1:0 "Catapult (SPG) I" +heavy_tank_artillery_equipment_2:0 "Catapult (SPG) II" +heavy_tank_artillery_equipment_3:0 "Catapult (SPG) III" +heavy_tank_destroyer_equipment:0 "Catapult (TD)" +heavy_tank_destroyer_equipment_short:0 "H. TD" +heavy_tank_destroyer_equipment_1:0 "Catapult (TD) I" +heavy_tank_destroyer_equipment_2:0 "Catapult (TD) II" +heavy_tank_destroyer_equipment_3:0 "Catapult (TD) III" +heavy_tank_aa_equipment:0 "Catapult (AA)" +heavy_tank_aa_equipment_1:0 "Catapult (AA) I" +heavy_tank_aa_equipment_2:0 "Catapult (AA) II" +heavy_tank_aa_equipment_3:0 "Catapult (AA) III" +super_heavy_tank_equipment:0 "Siege Tower" +super_heavy_tank_equipment_1:0 "Siege Tower" +super_heavy_tank_equipment_1_short:0 "S. Tower" +super_heavy_tank_artillery_equipment:0 "Siege Tower (SPG)" +super_heavy_tank_artillery_equipment_1:0 "Siege Tower (SPG)" +super_heavy_tank_destroyer_equipment:0 "Siege Tower (TD)" +super_heavy_tank_destroyer_equipment_1:0 "Siege Tower (TD)" +super_heavy_tank_aa_equipment:0 "Siege Tower (AA)" +super_heavy_tank_aa_equipment_1:0 "Siege Tower (AA)" +mechanized_equipment:0 "War Wagon" +mechanized_equipment_short:0 "War Wagon" +mechanized_equipment_1:0 "War Wagon I" +mechanized_equipment_1_short:0 "War Wagon I" +mechanized_equipment_2:0 "War Carriage II" +mechanized_equipment_2_short:0 "War Wagon II" +mechanized_equipment_3:0 "War Carriage III" +mechanized_equipment_3_short:0 "War Wagon III" +anti_air_equipment:0 "Towed Air Ballista" +anti_air_equipment_short:0 "Air Ballista" +anti_tank_equipment:0 "Towed Ground Ballista" +anti_tank_equipment_short:0 "Ground Ballista" +anti_air_equipment_1:0 "Towed Air Ballista" +anti_air_equipment_1_short:0 "Air Ballista" +anti_tank_equipment_1:0 "Ground Ballista" +anti_tank_equipment_1_short:0 "Ground Ballista" +artillery_equipment:0 "Bow" +artillery_equipment_short:0 "Bow" +rocket_artillery_equipment:0 "Crossbow" +rocket_artillery_equipment_short:0 "Crossbow" +artillery_equipment_1:0 "Bow" +artillery_equipment_1_short:0 "Bow" +rocket_artillery_equipment_1:0 "Crossbow" +rocket_artillery_equipment_1_short:0 "Crossbow" +infantry_equipment_0:0 "Crude Infantry Equipment" +infantry_equipment_0_short:0 "Cru. Infantry Equipment" +infantry_equipment_1:0 "Basic Infantry Equipment" +infantry_equipment_1_short:0 "Bas. Infantry Equipment" +infantry_equipment_2:0 "Improved Infantry Equipment" +infantry_equipment_2_short:0 "Imp. Infantry Equipment" +infantry_equipment_3:0 "Advanced Infantry Equipment" +infantry_equipment_3_short:0 "Adv. Infantry Equipment" +gw_armored_car_equipment:0 "Basic Armored Carriage" +armored_car_equipment_1:0 "Improved Armored Carriage" +armored_car_equipment_2:0 "Advanced Armored Carriage" +tank_reliability_upgrade_desc:0 "Improving reliability leads to less broken down tanks you'll need to replace." +guided_missile_equipment:0 "Long-Distance Spells" +guided_missile_equipment_1:0 "Long-Distance Spells" +guided_missile_equipment_1_short:0 "Long-Distance Spells" +guided_missile_equipment_1_desc:0 "Long-Distance Spells" +guided_missile_equipment_2:0 "Improved Long-Distance Spells" +guided_missile_equipment_2_short:0 "Long-Distance Spells II" +guided_missile_equipment_2_desc:0 "Long-Distance Spells" +guided_missile_equipment_3:0 "Advanced Long-Distance Spells" +guided_missile_equipment_3_short:0 "Long-Distance Spells III" +guided_missile_equipment_3_desc:0 "Long-Distance Spells" +artillery_equipment_2:0 "Improved Bow" +artillery_equipment_3:0 "Advanced Bow" +anti_air_equipment_2:0 "Improved Air Ballista" +anti_air_equipment_2_short:0 "Imp. Air Ballista" +anti_air_equipment_3:0 "Advanced Ballista" +anti_air_equipment_3_short:0 "Adv. Air Ballista" +rocket_artillery_equipment_2:0 "Advanced Crossbow" +anti_tank_equipment_2:0 "Improved Ground Ballista" +anti_tank_equipment_2_short:0 "Imp. Ground Ballista" +anti_tank_equipment_3:0 "Advanced Ground Ballista" +anti_tank_equipment_3_short:0 "Adv. Ground Ballista" +motorized_rocket_equipment:0 "Mounted Archer" +motorized_rocket_equipment_short:0 "Mounted Archer" +motorized_rocket_equipment_1:0 "Mounted Archer" +motorized_rocket_equipment_1_short:0 "Mounted Archer" +EQUIPMENT_MODULE_NOT_ALLOWED:0 "§RUnavailable§!" diff --git a/localisation/english/replace/ideas_l_english.yml b/localisation/english/replace/ideas_l_english.yml index 50ebcb2c8..c33b26a88 100644 --- a/localisation/english/replace/ideas_l_english.yml +++ b/localisation/english/replace/ideas_l_english.yml @@ -1,420 +1,180 @@ l_english: - one_true_ring:0 "A Ring to rule them all" - one_true_ring_desc:0 "One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them." - one_true_ring_2:0 "A Ring to rule them all" - one_true_ring_2_desc:0 "One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them. (Merged with Nenya)" - not_of_me:0 "Not of Middle Earth" - not_of_me:0 "This Nation belongs to a different time and universe." - MOR_intel:0 "Secret Intel" - MOR_intel_desc:0 "" - MOR_influence:0 "Orc revolutionary Spirit" - MOR_influence_desc:0 "Every day thousands of orcs scavange our lands spreading the notion of their newly built utopia." - MOR_survival:0 "Survival of the Fittest" - MOR_survival_desc:0 "Meat is back on the menu boys!" - MOR_orc_resistance:0 "Orc Resistance" - MOR_orc_resistance_desc:0 "The orcs of Mordor believe only in strength. Saurons defeat at the hands of the White Council have proven him as a weak leader." - MOR_enslaved_nation:0 "Enslaved Nation" - MOR_enslaved_nation_desc:0 "The dark Lord Sauron is grooming an army of loyal orcs into his command." - MOR_orc_takeover:0 "Orc Takeover" - MOR_orc_takeover_desc:0 "The Free Orcs of Mordor have seized the means of production crippling support for Sauron loyalists." - MOR_no_time_to_waste:0 "No Time to Waste" - MOR_no_time_to_waste_desc:0 "" - MOR_patient_conqueror:0 "Patient Conqueror" - MOR_patient_conqueror_desc:0 "" - MOR_rallying_cry:0 "Rallying Cry" - MOR_false_king:0 "False King" - MOR_false_king_2:0 "False King" - MOR_minimized_deathtoll:0 "Minimized Deathtoll" - MOR_no_price_too_high:0 "No price too high" - MOR_sauron_influence:0 "The One Ring Corruption" - ####################### - HAR_fractured_nation:0 "Fractured Nation" - HAR_endeavour:0 "Harad Endeavour" - HAR_joined_production:0 "Harad Joined Production" - HAR_joined_recruitment:0 "Harad Joined Recruitment" - HAR_merciless_union:0 "Merciless Union" - HAR_common_interests:0 "Committee of Common Interests" - HAR_subject_taxation:0 "Subject Taxation" - ####################### - ENT_incomprehensible_language:0 "Incomprehensible Language" - ENT_teachings_of_the_elves:0 "Teachings of the Elves" - ENT_not_so_hasty:0 "Not so hasty" - ENT_old_entish:0 "Old Entish" - ENT_new_entish:0 "New Entish" - ENT_frequent_gatherings:0 "Frequent Gatherings" - ENT_lengthy_words:0 "Lengthy Words" - ENT_huorn_precepts:0 "Huorn Precepts" - ENT_new_ideas:0 "New Ideas" - ENT_never_hasty:0 "Never Hasty" - ENT_limited_intervention:0 "Limited Intervention" - ENT_nobodys_side:0 "On nobody's side" - ENT_active_foreign_policy:0 "Active Foreign Policy" - ENT_aspiring_affiliate:0 "Aspiring Affiliate" - ENT_enhanced_photosynthesis:0 "Enhanced Photosynthesis" - ENT_lost_entwives:0 "Lost Entwives" - ENT_entwives_reunited:0 "Entwives Reunited" - ENT_seed_scattering:0 "Seed Scattering" - ####################### - perception_management:0 "Perception Management" - MIR_children_of_ungoliant:0 "Children of Ungoliant" - MIR_weaponized_forest:0 "Weaponized Forest" - MIR_army_of_the_greenwood:0 "Army of the Greenwood" - MIR_government_appropriation:0 "Government Appropriation" - ####################### - generic_revolutionary:0 "Revolutionary Support" - generic_belligerent:0 "Belligerent Support" - generic_cooperative:0 "Cooperative Support" - generic_revolutionary_weak:0 "Weak revolutionary Support" - generic_revolutionary_intermediate:0 "Strong revolutionary Support" - generic_belligerent_intermediate:0 "Strong belligerent Support" - generic_unaligned:0 "Non-Aligned Support" - generic_unaligned_intermediate:0 "Strong Non-Aligned Support" - generic_cooperative_intermediate:0 "Strong Cooperative Support" - ####################### - ERE_home_of_the_dwarves:0 "Home of the Dwarves" - ERE_maceration_techniques:0 "Advanced Maceration Techniques" - ERE_induction_furnaces:0 "Induction Furnaces" - ####################### - GON_long_term_economic_plan:0 "Long Term Economic Plan" - GON_kingdom_without_king_0:0 "Kingdom without a King" - GON_kingdom_without_king_1:0 "Kingdom without a King" - ####################### - MOA_civil_war:0 "Battle for the mines of Moria" - MOA_loose_balrog:0 "Loose Balrog" - MOA_mining_effort:0 "Mining Effort" - MOA_reforge_weapons_to_armor:0 "Reforge weapons into armor" - MOA_reforge_armor_to_weapons:0 "Reforge armor into weapons" - MOA_more_men_to_the_forges:0 "More men to the forges!" - MOA_every_last_man:0 "Every last man!" - MOA_futureproof:0 "Futureproof" - MOA_miners_bureau:0 "Miners Bureau" - MOA_excess_of_miners:0 "Excess of Miners" - MOA_militarization_1:0 "Militarization I" - MOA_militarization_2:0 "Militarization II" - MOA_rebuilding_effort:0 "Rebuilding Effort" - ####################### - ROH_grima_wormtongue:0 "Grima Wormtongue" - ROH_reformed_realm:0 "Reformed Realm" - ROH_trade_reforms:0 "Trade Reforms" - ROH_mutual_benefit_pact:0 "Mutual Benefit Pact" - ####################### - LTH_stout_nation:0 "Stout Nation" - LTH_self_preservation:0 "Self Preservation Focus" - LTH_total_isolation:0 "Total Isolation" - LTH_enhanced_trade:0 "Enhanced Trade" - LTH_unflinching_defender:0 "Unflinching Defender" - LTH_exceptional_endurance:0 "Exceptional Endurance" - LTH_adaptable_arrow_tips:0 "Adaptable Arrow Tips" - LTH_poison_arrows:0 "Poison Arrows" - LTH_refined_scientists:0 "Refined Scientists" - LTH_recycling:0 "Recycling" - LTH_automated_production:0 "Automated Production" - ####################### - ISE_ways_of_the_light:0 "Ways of the Light" - ISE_ways_of_the_light_desc:0 "A Palanthir is a dangerous tool and remains best unused." - ISE_ways_of_the_dark:0 "Ways of the Dark" - ISE_ways_of_the_dark_desc:0 "The Palanthir offer knowledge few in Middle Earth possess. Yet its corrupting nature may seize one's sanity deceitfully." - ISE_commited_to_the_dark:0 "Commited to the dark" - ISE_commited_to_the_dark_desc:0 "" - ISE_commited_to_the_light:0 "Commited to the light" - ISE_commited_to_the_light_desc:0 "" - ISE_orc_breeding:0 "Excessive Orc Breeding" - ISE_orc_breeding_desc:0 "" - ISE_orc_breeding2:0 "Excessive Orc Breeding" - ISE_orc_breeding2_desc:0 "" - ISE_sarumans_influence_f:0 "Sarumans Influence" - ISE_sarumans_influence_f_desc:0 "" - ISE_orc_pillage:0 "Orc Pillaging" - ISE_orc_pillage_desc:0 "" - ISE_slave_soldiers:0 "Slave Soldiers" - ####################### - SHI_third_breakfast:0 "Third Breakfast" - SHI_inextricable_unity:0 "Inextricable Unity" - SHI_different_approach:0 "A different approach" - SHI_saruman_help:0 "Sarumans Aid" - SHI_minimal_diet:0 "No second breakfast" - SHI_minimal_diet2:0 "Minimal Diet" - SHI_spread_the_message:0 "Spread the Message" - SHI_unquestioned_authority:0 "Unquestioned Authority" - SHI_took_manifesto:0 "The Took Manifesto" - SHI_baggins_manifesto:0 "The Baggins Manifesto" - SHI_sackville_manifesto:0 "The Sackville Manifesto" - SHI_forced_conscription:0 "Forced Conscription" - SHI_recruitment_propaganda:0 "Recruitment Propaganda" - ####################### - RIV_ominous_death:0 "Suspicous Death Circumstances" - RIV_millitary_cooperation:0 "Military Cooperation" - RIV_prideful_past:0 "Prideful Past" - RIV_ends_justify_the_means:0 "The Ends justify the Means" - RIV_idealist_regime:0 "Idealist Regime" - RIV_might_of_sauron:0 "Might of Sauron" - RIV_sabotage:0 "Rivendell Sabotage" - RIV_collective_thinking:0 "Collective Thinking" - RIV_liberty_consensus:0 "Liberty Consensus" - RIV_virtues_of_lord_elrond:0 "Virtues of Lord Elrond" - RIV_revisionist_regime:0 "Revisionist Regime" - RIV_stability_focus:0 "Stability Focus" - RIV_rivendell_influence_d:0 "Rivendell Anti-Extremism Influence" - RIV_selfreliance_focus:0 "Self Reliance Focus" - RIV_fight_at_home:0 "Fight at Home" - RIV_collaboration_focus:0 "Collaboration Focus" - RIV_trade_reforms:0 "Trade Reforms" - RIV_fight_abroad:0 "Fight Abroad" - ####################### - ART_revolutionary_banned:0 "Communism Banned" - ART_belligerent_banned:0 "Nationalism Banned" - ####################### - diplomacy_focus:0 "Diplomacy Focus" - dockyard_focus:0 "Dockyard Focus" - defense_focus:0 "Defense Focus" - fortification_focus:0 "Fortification Focus" - increased_morale:0 "Increased Morale" - melancholic_mood:0 "Melancholic Mood" - euphoric_mood:0 "Euphoric Mood" - decreased_morale:0 "Decreased Morale" - bracing_for_war:0 "Bracing for War" - increased_attack:0 "Increased Attack" - increased_austerity:0 "Increased Austerity" - ####################### - fascist_influence:0 "Fascist Influence" - fascist_influence_desc:0 "Fascist pressure has made belligerent very popular, and the country is susceptible to align with other fascists." - communist_influence:0 "Communist Influence" - communist_influence_desc:0 "Communist pressure has made revolutionary very popular, and the country is susceptible to align with other communist." - cooperative_influence:0 "Democratic Influence" - cooperative_influence_desc:0 "Democratic pressure has made democracy very popular, and the country is susceptible to align with other democrats." - unaligned_influence:0 "Authoritarian Influence" - unaligned_influence_desc:0 "Authoritarian pressure has led to new-found respect for those with strong governments and noble royal houses, and the country is susceptible to align with other authoritarian governments." - sour_loser:0 "Bitter Loser" - sour_loser_desc:0 "Bitterness over defeat in the Great War dominates the politics of this nation." - received_attache:0 "Received attaché" - received_attache_desc:0 "Foreign military attachés residing in our country." - ATTACHE_LIST:0 "We received military attachés from $LIST$. And they give us the following effects:" - general_staff:0 "General Staff" - general_staff_desc:0 "The German General staff was responsible for the continuous study of all aspects of war, including the drawing up and reviewing of plans for mobilization or campaign. This contributed to a higher level of Organization in the army." - v_weapons:0 "Vengeance Weapons" - v_weapons_desc:0 "Long range bombardment Rockets would make ideal Vengeance Weapons against our enemies." - undisturbed_isolation:0 "Undisturbed Isolation" - undisturbed_isolation_desc:0 "Still recovering from the Great Depression and the Dust Bowl famine, the nation is slowly rebuilding its infrastructure. America's industries are in most cases working at half capacity, and will keep doing so unless major events rouse the nation from torpor." - isolation:0 "Isolation" - civilian_economy:0 "Civilian Economy" - low_economic_mobilisation:0 "Early Mobilization" - partial_economic_mobilisation:0 "Partial Mobilization" - war_economy:0 "War Economy" - tot_economic_mobilisation:0 "Total Mobilization" - new_economic_policy:0 "New Economic Policy" - idea_group_mobilization_laws:0 "Conscription Laws" - disarmed_nation:0 "Disarmed Nation" - volunteer_only:0 "Volunteer Only" - limited_conscription:0 "Limited Conscription" - extensive_conscription:0 "Extensive Conscription" - service_by_requirement:0 "Service by Requirement" - all_adults_serve:0 "All Adults Serve" - scraping_the_barrel:0 "Scraping the Barrel" - #generic_communist_revolutionary:0 "Communist Politician" - #generic_cooperative_reformer:0 "Democratic Politician" - #generic_fascist_demagogue:0 "Fascist Politician" - generic_army_chief_offensive:0 "Offensive Army Chief" - generic_army_chief_defensive:0 "Defensive Army Chief" - generic_army_chief_reform:0 "Innovative Army Chief" - generic_navy_chief_decisive_battle:0 "Gunner Navy Chief" - generic_navy_chief_commerce_raiding:0 "Raider Navy Chief" - generic_navy_chief_reform:0 "Innovative Navy Chief" - generic_air_chief_safety:0 "Meticulous Air Chief" - generic_air_chief_ground_support:0 "Support Air Chief" - generic_air_chief_reform:0 "Innovative Air Chief" - generic_army_entrenchment:0 "Trench General" - generic_army_regrouping:0 "Organized General" - generic_army_logistics:0 "Logistics General" - generic_navy_amphibious_assault:0 "Invasion Admiral" - generic_navy_naval_air_defense:0 "Anti-Air Admiral" - generic_navy_fleet_logistics:0 "Logistics Admiral" - generic_air_air_superiority:0 "Superiority Aviator" - generic_air_close_air_support:0 "Support Aviator" - generic_air_air_combat_training:0 "Pilot Instructor" - generic_land_doctrine:0 "Ground Visionary" - generic_naval_doctrine:0 "Naval Visionary" - generic_air_doctrine:0 "Aerial Visionary" - generic_tank_manufacturer:0 "Armor Company" - generic_motorized_equipment_manufacturer:0 "Motorization Company" - generic_infantry_equipment_manufacturer:0 "Small Arms Company" - generic_artillery_manufacturer:0 "Artillery Company" - generic_light_aircraft_manufacturer:0 "Light Air Company" - generic_medium_aircraft_manufacturer:0 "Medium Air Company" - generic_heavy_aircraft_manufacturer:0 "Heavy Air Company" - generic_naval_aircraft_manufacturer:0 "Naval Air Company" - generic_naval_manufacturer:0 "Naval Company" - generic_industrial_concern:0 "Industrial Company" - generic_electronics_concern:0 "Electronics Company" - generic_spy_intel:0 "The Tinker" - generic_spy_political:0 "The Tailor" - generic_spy_coup:0 "The Soldier" - idea_group_army_chief:0 "Chief of Army" - idea_group_air_chief:0 "Chief of Air Force" - idea_group_navy_chief:0 "Chief of Navy" - idea_group_tank_manufacturer:0 "Tank Designer" - idea_group_naval_manufacturer:1 "Naval Designer" - idea_group_light_aircraft_manufacturer:1 "Light Aircraft Designer" - idea_group_industrial_concern:0 "Industrial Concern" - idea_category_country:0 "Country" - idea_category_country_desc:0 "Adopt ideas/hire ministers to help steer your country" - idea_category_political:0 "Political Advisors" - idea_category_political_desc:0 "Adopt ideas/hire ministers to help steer your country" - idea_category_military:0 "Military Staff" - idea_category_military_desc:0 "Adopt ideas/hire ministers to help steer your military" - idea_category_economic:0 "Economic Ideas" - idea_category_economic_desc:0 "Adopt ideas/hire ministers to help steer your economy" - idea_category_technology:0 "Technology & Research" - idea_category_technology_desc:0 "Adopt ideas/hire ministers and companies to help steer your technological developments" - idea_category_espionage:0 "Espionage" - idea_category_espionage_desc:0 "Adopt ideas/hire ministers and spies to help your espionage" - idea_group_political_reform:0 "Political Reform" - idea_group_political_reform_desc:0 "People and ideas with potential to change the political landscape in the nation" - idea_group_economy:0 "Economic Laws" - idea_group_economic_desc:0 "Adopt one of these ideas or hire one of these ministers to help steer your economy" - idea_group_armor:0 "Armor" - idea_group_armor_desc:0 "Ideas and people that boost production and research into armored units" - idea_group_artillery:0 "Artillery" - idea_group_artillery_desc:0 "Ideas and people that boost production and research into artillery" - idea_group_infantry:0 "Infantry" - idea_group_infantry_desc:0 "Ideas and people that boost production and research into infantry" - idea_group_light_air:0 "Light Aircraft" - idea_group_light_air_desc:0 "Ideas and people that boost production and research into light aircraft" - idea_group_medium_air:0 "Medium Aircraft" - idea_group_medium_air_desc:0 "Ideas and people that boost production and research into medium aircraft" - idea_group_heavy_air:0 "Heavy Aircraft" - idea_group_heavy_air_desc:0 "Ideas and people that boost production and research into heavy aircraft" - idea_group_industry:0 "Industry" - idea_group_industry_desc:0 "Ideas and people that boost production and research into industry" - idea_group_naval:0 "Naval" - idea_group_naval_desc:0 "Ideas and people that boost naval production and research" - idea_group_electronics:0 "Electronics" - idea_group_electronics_desc:0 "Ideas and people that boost production and research into electronics" - idea_group_motorized:0 "Motorized" - idea_group_motorized_desc:0 "Ideas and people that boost production and research into motorized units" - idea_group_rocketry:0 "Rocketry" - idea_group_rocketry_desc:0 "Ideas and people that boost production and research into rocketry" - idea_group_nuclear:0 "Nuclear" - idea_group_nuclear_desc:0 "Ideas and people that boost nuclear production and research" - idea_group_army:0 "Army" - idea_group_army_desc:0 "Ideas and people that boost army production and research" - idea_group_air_warfare:0 "Air Warfare" - idea_group_air_warfare_desc:0 "Ideas and people that boost air warfare research and engagements" - idea_group_medium_aircraft_manufacturer:1 "Medium Aircraft Designer" - idea_group_heavy_aircraft_manufacturer:1 "Heavy Aircraft Designer" - idea_group_trade_laws:0 "Trade Laws" - idea_group_trade_laws_desc:0 "Chose a Trade Law for our nation" - free_trade:0 "Free Trade" - export_focus:0 "Export Focus" - limited_exports:0 "Limited Exports" - closed_economy:0 "Closed Economy" - lth_special_closed_economy:0 "Closed Economy (Total Isolation)" - ENROUTE:0 "We have sent a diplomatic request. We cannot bother them with another until §Y$DATE$§!." - fascist_assault_divisions:0 "Fascist Assault Divisions" - communist_partisans_recruiting:0 "Communist Partisans Recruiting" - cooperative_opposition_voicing_protests:0 "Democratic Opposition Voicing Protests" - isolationism_idea:0 "Isolationism" - limited_interventionism:0 "Limited Interventionism" - lend_lease_idea:0 "Lend Lease" - triumphant_will:0 "Triumphant Will" - militarized_schools:0 "Militarized Schools" - collectivist_ethos_focus:0 "Collectivist Ethos" - liberty_ethos_focus:0 "Liberty Ethos" - militarism_focus:0 "Militarism" - military_youth_focus:0 "Military Youth" - paramilitarism_focus:0 "Paramilitarism" - unaligned_idea:0 "Neutral Foreign Policy" - unaligned_idea_desc:0 "Neutrality is sometimes viewed as a craven stance, but this nation trusts that when the dust settles, those who didn't take sides may be better off than those who did." - ideological_fanaticism_focus:0 "Ideological Fanaticism" - political_commissars_focus:0 "Political Commissars" - wartime_industry_focus:0 "Wartime Industry" - bureau_of_ships_focus:0 "Bureau of Ships" - government:1 "Laws & Government" - research_production:0 "Research & Production" - military_staff:0 "Military Staff" - political_advisor:0 "Political Advisor" - mobilization_laws:0 "Conscription Law" - trade_laws:0 "Trade Law" - economy:0 "Economy Law" - aircraft_manufacturer:0 "Aircraft Designer" - materiel_manufacturer:0 "Materiel Designer" - industry_concern:0 "Industry Concern" - army_chief:0 "Chief of Army" - navy_chief:0 "Chief of Navy" - air_chief:0 "Chief of Airforce" - high_command:0 "Military High Command" - theorist:0 "Theorist" - british_austerity_idea:0 "British Austerity" - nationalism:0 "Nationalism" - nationalism_desc:0 "Our people's hearts burn with nationalistic pride and they will fight hard to protect our homeland" - internationalism:0 "Internationalism" - internationalism_desc:0 "We strongly believe that ideology span across national borders and do not feel limited in crossing those borders ourselves." - combined_bomber_offensive:0 "Combined Bomber Offensive" - volunteer_corps_focus:0 "Volunteer Corps" - foreign_expeditions_focus:0 "Foreign Expeditions" - why_we_fight_focus:0 "Why We Fight" - partisan_suppression_focus:0 "Partisan Suppression" - imperial_austerity_idea:0 "Imperial Austerity" - student_mobilization_idea:0 "Student Mobilization" - spiritual_mobilization_idea:0 "Spiritual Mobilization" - spiritual_mobilization_idea_desc:0 ""Luxury is our Enemy!" With thrift, hygiene and hard work elevated to national virtues, more manpower is made available to the war effort." - office_of_strategic_services:0 "Office of Strategic Services" - office_of_strategic_services_desc:0 "§LThe Office of Strategic Services (OSS) was a United States intelligence agency formed during World War II. It was the wartime intelligence agency, and a predecessor of the Central Intelligence Agency (CIA).§!" - idea_political_correctness:0 "Political Correctness" - idea_political_correctness_desc:0 "People who think correctly are much harder to influence for foreign powers." - warrior_traditions_idea:0 "Warrior Traditions" - for_the_emperor_idea:0 "For the Emperor!" - war_bonds_focus:0 "War Bonds" - liberty_ships_focus:0 "Liberty Ships" - air_war_plans_division_focus:0 "Air War Plans Division" - air_war_plans_division_focus_desc:0 "Only through supremacy in the air will the Axis powers be defeated. Long-term plans for the production and deployment of fighters and strategic bombers make this not only possible, but attainable." - air_support_focus:0 "Air Support" - strategic_bombing_focus:0 "Strategic Bombing" - escort_effort_focus:0 "Escort Effort" - comintern_influence:0 "Comintern influence" - progress_cult_focus:0 "Progress Cult" - socialist_science_focus:0 "Socialist Science" - peoples_commissariat_focus:0 "People's Commissariat of Defense Industry" - home_of_revolution:0 "Home of the Revolution" - home_of_revolution_desc:0 "Comrades, with the defeat of the vile Trotskyite counter revolutionaries we were able to focus on defending the revolution. Our goal, our hope, our slogan is Socialism in One Country. We will build a bountiful socialist utopia here in the Soviet Union and the rest of the world will inevitably embrace it." - rehabilitated_military_focus:0 "Rehabilitated Military" - workers_culture:0 "Worker's Culture" - communist_pressure:0 "Communist pressure" - fascist_revolutionaries:0 "Fascist Revolutionaries" - fascist_revolutionaries_desc:0 "If support for belligerent rises above 70%, the nation will be plunged into civil war. If support for belligerent drops below 30%, revolutionary activity will stop." - communist_revolutionaries:0 "Communist Revolutionaries" - communist_revolutionaries_desc:0 "If support for Communism rises above 70%, the nation will be plunged into civil war. If support for Communism drops below 30%, revolutionary activity will stop." - cooperative_revolutionaries:0 "Democratic Revolutionaries" - cooperative_revolutionaries_desc:0 "If support for Democracy rises above 70%, the nation will be plunged into civil war. If support for Democracy drops below 30%, revolutionary activity will stop." - closed_economy_TT:0 "No resources will be exported.\n\n" - belligerent_defeated:0 "belligerent Defeated" - belligerent_defeated_desc:0 "Democracy has triumphed over totalitarian belligerent, and cooperative parties are united against this old threat." - revolutionary_defeated:0 "Communism Defeated" - revolutionary_defeated_desc:0 "Democracy has triumphed over totalitarian revolutionary, and cooperative parties are united against this old threat." - reign_of_terror:0 "Reign of Terror" - reign_of_terror_desc:0 "Having recently come to power, the current regime is ruthless in the pursuit of its enemies, shutting down opposition before it arises." - shattered_government:0 "Shattered Government" - synarchist_support_surge:0 "Synarchist Support Surge" - small_arms_limited:0 "Small Arms Limited" - revolutionary_banned:0 "Communism Banned" - race_for_the_bomb:0 "Race for the Bomb" - race_for_the_bomb_desc:0 "We have taken it upon ourselves to be the first nation to successfully deploy an atomic weapon." - race_for_the_bomb_outclassed:0 "The Bomb Eludes" - race_for_the_bomb_outclassed_desc:0 "Another nation has beaten us to the bomb. We must redouble our efforts at any cost, to achieve strategic security and lessen the national embarrassment." - modifier_tactic_elastic_defense_preferred_weight_factor:1 "Additional §YElastic Defense§! Tactic Chance if it is Preferred tactic" - modifier_tactic_overwhelming_fire_preferred_weight_factor:1 "Additional §YOverwhelming Fire§! Tactic Chance if it is Preferred tactic" - modifier_tactic_seize_bridge_preferred_weight_factor:1 "Additional §YSeize Bridge§! Tactic Chance if it is Preferred tactic" - modifier_tactic_infantry_charge_preferred_weight_factor:1 "Additional §YInfiltration Assault§! Tactic Chance if it is Preferred tactic" - modifier_tactic_delay_preferred_weight_factor:1 "Additional §YDelay§! Tactic Chance if it is Preferred tactic" - modifier_tactic_human_wave_tactics_preferred_weight_factor:1 "Additional §YMass Charge§! Tactic Chance if it is Preferred tactic" - modifier_tactic_unexpected_thrust_preferred_weight_factor:1 "Additional §YUnexpected Thrust§! Tactic Chance if it is Preferred tactic" - modifier_tactic_barrage_preferred_weight_factor:1 "Additional §YSuppressive Barrage§! Tactic Chance if it is Preferred tactic" - modifier_tactic_planned_attack_preferred_weight_factor:1 "Additional §YWell Planned Attack§! Tactic Chance if it is Preferred tactic" - modifier_tactic_relentless_assault_preferred_weight_factor:1 "Additional §YRelentless Assault§! Tactic Chance if it is Preferred tactic" - SPIRIT_ADD_IDEA:0 "§GClick to add $GROUP|H$§!" - CHANGE_ADVISOR:1 "\nYou can replace this advisor by clicking here and selecting a replacement." - minor_expense:0 "Minor Expense" - minor_research_expense:0 "Diverted Research" - three_civs_cost:0 "3 §YCivilian Factories§! (Cost)" - three_civs_gain:0 "3 §YCivilian Factories§! (Gain)" - six_civs_cost:0 "6 §YCivilian Factories§! (Cost)" - six_civs_gain:0 "6 §YCivilian Factories§! (Gain)" \ No newline at end of file +one_true_ring:0 "A Ring to rule them all" +one_true_ring_desc:0 "One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them." +one_true_ring_2:0 "A Ring to rule them all" +one_true_ring_2_desc:0 "One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them. (Merged with Nenya)" +not_of_me:0 "This Nation belongs to a different time and universe." +MOR_intel:0 "Secret Intel" +MOR_influence:0 "Orc revolutionary Spirit" +MOR_influence_desc:0 "Every day thousands of orcs scavange our lands spreading the notion of their newly built utopia." +MOR_survival:0 "Survival of the Fittest" +MOR_survival_desc:0 "Meat is back on the menu boys!" +MOR_orc_resistance:0 "Orc Resistance" +MOR_orc_resistance_desc:0 "The orcs of Mordor believe only in strength. Saurons defeat at the hands of the White Council have proven him as a weak leader." +MOR_enslaved_nation:0 "Enslaved Nation" +MOR_enslaved_nation_desc:0 "The dark Lord Sauron is grooming an army of loyal orcs into his command." +MOR_orc_takeover:0 "Orc Takeover" +MOR_orc_takeover_desc:0 "The Free Orcs of Mordor have seized the means of production crippling support for Sauron loyalists." +MOR_no_time_to_waste:0 "No Time to Waste" +MOR_patient_conqueror:0 "Patient Conqueror" +MOR_rallying_cry:0 "Rallying Cry" +MOR_false_king:0 "False King" +MOR_false_king_2:0 "False King" +MOR_minimized_deathtoll:0 "Minimized Deathtoll" +MOR_no_price_too_high:0 "No price too high" +MOR_sauron_influence:0 "The One Ring Corruption" +HAR_fractured_nation:0 "Fractured Nation" +HAR_endeavour:0 "Harad Endeavour" +HAR_joined_production:0 "Harad Joined Production" +HAR_joined_recruitment:0 "Harad Joined Recruitment" +HAR_merciless_union:0 "Merciless Union" +HAR_common_interests:0 "Committee of Common Interests" +HAR_subject_taxation:0 "Subject Taxation" +ENT_incomprehensible_language:0 "Incomprehensible Language" +ENT_teachings_of_the_elves:0 "Teachings of the Elves" +ENT_not_so_hasty:0 "Not so hasty" +ENT_old_entish:0 "Old Entish" +ENT_new_entish:0 "New Entish" +ENT_frequent_gatherings:0 "Frequent Gatherings" +ENT_lengthy_words:0 "Lengthy Words" +ENT_huorn_precepts:0 "Huorn Precepts" +ENT_new_ideas:0 "New Ideas" +ENT_never_hasty:0 "Never Hasty" +ENT_limited_intervention:0 "Limited Intervention" +ENT_nobodys_side:0 "On nobody's side" +ENT_active_foreign_policy:0 "Active Foreign Policy" +ENT_aspiring_affiliate:0 "Aspiring Affiliate" +ENT_enhanced_photosynthesis:0 "Enhanced Photosynthesis" +ENT_lost_entwives:0 "Lost Entwives" +ENT_entwives_reunited:0 "Entwives Reunited" +ENT_seed_scattering:0 "Seed Scattering" +perception_management:0 "Perception Management" +MIR_children_of_ungoliant:0 "Children of Ungoliant" +MIR_weaponized_forest:0 "Weaponized Forest" +MIR_army_of_the_greenwood:0 "Army of the Greenwood" +MIR_government_appropriation:0 "Government Appropriation" +generic_revolutionary:0 "Revolutionary Support" +generic_belligerent:0 "Belligerent Support" +generic_cooperative:0 "Cooperative Support" +generic_revolutionary_weak:0 "Weak revolutionary Support" +generic_revolutionary_intermediate:0 "Strong revolutionary Support" +generic_belligerent_intermediate:0 "Strong belligerent Support" +generic_unaligned:0 "Non-Aligned Support" +generic_unaligned_intermediate:0 "Strong Non-Aligned Support" +generic_cooperative_intermediate:0 "Strong Cooperative Support" +ERE_home_of_the_dwarves:0 "Home of the Dwarves" +ERE_maceration_techniques:0 "Advanced Maceration Techniques" +ERE_induction_furnaces:0 "Induction Furnaces" +GON_long_term_economic_plan:0 "Long Term Economic Plan" +GON_kingdom_without_king_0:0 "Kingdom without a King" +GON_kingdom_without_king_1:0 "Kingdom without a King" +MOA_civil_war:0 "Battle for the mines of Moria" +MOA_loose_balrog:0 "Loose Balrog" +MOA_mining_effort:0 "Mining Effort" +MOA_reforge_weapons_to_armor:0 "Reforge weapons into armor" +MOA_reforge_armor_to_weapons:0 "Reforge armor into weapons" +MOA_more_men_to_the_forges:0 "More men to the forges!" +MOA_every_last_man:0 "Every last man!" +MOA_futureproof:0 "Futureproof" +MOA_miners_bureau:0 "Miners Bureau" +MOA_excess_of_miners:0 "Excess of Miners" +MOA_militarization_1:0 "Militarization I" +MOA_militarization_2:0 "Militarization II" +MOA_rebuilding_effort:0 "Rebuilding Effort" +ROH_grima_wormtongue:0 "Grima Wormtongue" +ROH_reformed_realm:0 "Reformed Realm" +ROH_trade_reforms:0 "Trade Reforms" +ROH_mutual_benefit_pact:0 "Mutual Benefit Pact" +LTH_self_preservation:0 "Self Preservation Focus" +LTH_total_isolation:0 "Total Isolation" +LTH_unflinching_defender:0 "Unflinching Defender" +LTH_refined_scientists:0 "Refined Scientists" +ISE_ways_of_the_light:0 "Ways of the Light" +ISE_ways_of_the_light_desc:0 "A Palanthir is a dangerous tool and remains best unused." +ISE_ways_of_the_dark:0 "Ways of the Dark" +ISE_ways_of_the_dark_desc:0 "The Palanthir offer knowledge few in Middle Earth possess. Yet its corrupting nature may seize one's sanity deceitfully." +ISE_commited_to_the_dark:0 "Commited to the dark" +ISE_commited_to_the_light:0 "Commited to the light" +ISE_orc_breeding:0 "Excessive Orc Breeding" +ISE_orc_breeding2:0 "Excessive Orc Breeding" +ISE_sarumans_influence_f:0 "Sarumans Influence" +ISE_orc_pillage:0 "Orc Pillaging" +ISE_slave_soldiers:0 "Slave Soldiers" +SHI_third_breakfast:0 "Third Breakfast" +SHI_inextricable_unity:0 "Inextricable Unity" +SHI_different_approach:0 "A different approach" +SHI_saruman_help:0 "Sarumans Aid" +SHI_minimal_diet:0 "No second breakfast" +SHI_minimal_diet2:0 "Minimal Diet" +SHI_spread_the_message:0 "Spread the Message" +SHI_unquestioned_authority:0 "Unquestioned Authority" +SHI_took_manifesto:0 "The Took Manifesto" +SHI_baggins_manifesto:0 "The Baggins Manifesto" +SHI_sackville_manifesto:0 "The Sackville Manifesto" +SHI_forced_conscription:0 "Forced Conscription" +SHI_recruitment_propaganda:0 "Recruitment Propaganda" +RIV_ominous_death:0 "Suspicous Death Circumstances" +RIV_millitary_cooperation:0 "Military Cooperation" +RIV_prideful_past:0 "Prideful Past" +RIV_ends_justify_the_means:0 "The Ends justify the Means" +RIV_idealist_regime:0 "Idealist Regime" +RIV_might_of_sauron:0 "Might of Sauron" +RIV_sabotage:0 "Rivendell Sabotage" +RIV_collective_thinking:0 "Collective Thinking" +RIV_liberty_consensus:0 "Liberty Consensus" +RIV_virtues_of_lord_elrond:0 "Virtues of Lord Elrond" +RIV_revisionist_regime:0 "Revisionist Regime" +RIV_stability_focus:0 "Stability Focus" +RIV_rivendell_influence_d:0 "Rivendell Anti-Extremism Influence" +RIV_selfreliance_focus:0 "Self Reliance Focus" +RIV_fight_at_home:0 "Fight at Home" +RIV_collaboration_focus:0 "Collaboration Focus" +RIV_trade_reforms:0 "Trade Reforms" +RIV_fight_abroad:0 "Fight Abroad" +ART_revolutionary_banned:0 "Communism Banned" +ART_belligerent_banned:0 "Nationalism Banned" +diplomacy_focus:0 "Diplomacy Focus" +dockyard_focus:0 "Dockyard Focus" +defense_focus:0 "Defense Focus" +fortification_focus:0 "Fortification Focus" +increased_morale:0 "Increased Morale" +melancholic_mood:0 "Melancholic Mood" +euphoric_mood:0 "Euphoric Mood" +decreased_morale:0 "Decreased Morale" +bracing_for_war:0 "Bracing for War" +increased_attack:0 "Increased Attack" +increased_austerity:0 "Increased Austerity" +fascist_influence_desc:0 "Fascist pressure has made belligerent very popular, and the country is susceptible to align with other fascists." +communist_influence_desc:0 "Communist pressure has made revolutionary very popular, and the country is susceptible to align with other communist." +cooperative_influence:0 "Democratic Influence" +cooperative_influence_desc:0 "Democratic pressure has made democracy very popular, and the country is susceptible to align with other democrats." +unaligned_influence:0 "Authoritarian Influence" +unaligned_influence_desc:0 "Authoritarian pressure has led to new-found respect for those with strong governments and noble royal houses, and the country is susceptible to align with other authoritarian governments." +lth_special_closed_economy:0 "Closed Economy (Total Isolation)" +cooperative_opposition_voicing_protests:0 "Democratic Opposition Voicing Protests" +unaligned_idea:0 "Neutral Foreign Policy" +unaligned_idea_desc:0 "Neutrality is sometimes viewed as a craven stance, but this nation trusts that when the dust settles, those who didn't take sides may be better off than those who did." +fascist_revolutionaries_desc:0 "If support for belligerent rises above 70%, the nation will be plunged into civil war. If support for belligerent drops below 30%, revolutionary activity will stop." +cooperative_revolutionaries:0 "Democratic Revolutionaries" +cooperative_revolutionaries_desc:0 "If support for Democracy rises above 70%, the nation will be plunged into civil war. If support for Democracy drops below 30%, revolutionary activity will stop." +belligerent_defeated:0 "belligerent Defeated" +belligerent_defeated_desc:0 "Democracy has triumphed over totalitarian belligerent, and cooperative parties are united against this old threat." +revolutionary_defeated:0 "Communism Defeated" +revolutionary_defeated_desc:0 "Democracy has triumphed over totalitarian revolutionary, and cooperative parties are united against this old threat." +revolutionary_banned:0 "Communism Banned" +modifier_tactic_elastic_defense_preferred_weight_factor:0 "Additional §YElastic Defense§! Tactic Chance if it is Preferred tactic" +modifier_tactic_overwhelming_fire_preferred_weight_factor:0 "Additional §YOverwhelming Fire§! Tactic Chance if it is Preferred tactic" +modifier_tactic_seize_bridge_preferred_weight_factor:0 "Additional §YSeize Bridge§! Tactic Chance if it is Preferred tactic" +modifier_tactic_infantry_charge_preferred_weight_factor:0 "Additional §YInfiltration Assault§! Tactic Chance if it is Preferred tactic" +modifier_tactic_delay_preferred_weight_factor:0 "Additional §YDelay§! Tactic Chance if it is Preferred tactic" +modifier_tactic_human_wave_tactics_preferred_weight_factor:0 "Additional §YMass Charge§! Tactic Chance if it is Preferred tactic" +modifier_tactic_unexpected_thrust_preferred_weight_factor:0 "Additional §YUnexpected Thrust§! Tactic Chance if it is Preferred tactic" +modifier_tactic_barrage_preferred_weight_factor:0 "Additional §YSuppressive Barrage§! Tactic Chance if it is Preferred tactic" +modifier_tactic_planned_attack_preferred_weight_factor:0 "Additional §YWell Planned Attack§! Tactic Chance if it is Preferred tactic" +modifier_tactic_relentless_assault_preferred_weight_factor:0 "Additional §YRelentless Assault§! Tactic Chance if it is Preferred tactic" +minor_expense:0 "Minor Expense" +minor_research_expense:0 "Diverted Research" +three_civs_cost:0 "3 §YCivilian Factories§! (Cost)" +three_civs_gain:0 "3 §YCivilian Factories§! (Gain)" +six_civs_cost:0 "6 §YCivilian Factories§! (Cost)" +six_civs_gain:0 "6 §YCivilian Factories§! (Gain)" \ No newline at end of file diff --git a/localisation/english/replace/logistics_l_english.yml b/localisation/english/replace/logistics_l_english.yml deleted file mode 100644 index c821e042d..000000000 --- a/localisation/english/replace/logistics_l_english.yml +++ /dev/null @@ -1,123 +0,0 @@ -l_english: - LOGISTICS_LOGISTICS_LABEL:0 "Logistics" - LOGISTICS_EFFICIENCY_LABEL:0 "Average £prod_eff Production Efficiency" - LOGISTICS_EFFICIENCY_SORT_BY:0 "Click to sort by £prod_eff Production Efficiency" - LOGISTICS_EFFICIENCY_DESC:0 "Average £prod_eff Production Efficiency of Factories producing each type of Equipment" - LOGISTICS_EQUIPMENT_TYPE_LABEL:0 "Equipment Type" - LOGISTICS_EQUIPMENT_TYPE_SORT_BY:0 "Click to sort by Equipment Type" - LOGISTICS_STATUS_LABEL:0 "Status" - LOGISTICS_STATUS_DESC:0 "How much of the daily need that is covered by production" - LOGISTICS_STATUS_SORT_BY:0 "Click to sort by status" - LOGISTICS_IN_STOCK_LABEL:0 "Stored" - LOGISTICS_IN_STOCK_SORT_BY:0 "Click to sort by amount stored" - LOGISTICS_IN_STOCK_DESC:0 "Total amount of Equipment surplus/deficit" - LOGISTICS_NEEDS_LABEL:0 "Need" - LOGISTICS_NEEDS_SORT_BY:0 "Click to sort by Need" - LOGISTICS_NEEDS_DESC:0 "How much of each Equipment type that is needed per day" - LOGISTICS_PRODUCED_LABEL:0 "Produced" - LOGISTICS_PRODUCED_LABEL_DESC:0 "Amount produced of each Equipment" - LOGISTICS_BALANCE_LABEL:0 "Balance" - LOGISTICS_BALANCE_SORT_BY:0 "Click to sort by Balance" - LOGISTICS_BALANCE_DESC:0 "Daily Equipment Balance" - LOGISTICS_RESOURCES_LABEL:0 "Resources" - LOGISTICS_RESOURCES_SORT_BY:0 "Click to sort by required Resources" - LOGISTICS_RESOURCES_DESC:0 "How much resources is required by each Equipment type" - LOGISTICS_RESOURCE_USAGE:0 "Using $RESOURCE|Y$" - LOGISTICS_FUEL_PERCENTAGE:0 "§H$VALUE|0$%§! of food need satisfied." - LOGISTICS_NO_EQUIPMENT_PRODUCTION:0 "No current production of $EQUIPMENT|Y$." - LOGISTICS_AVERAGE_EFFICIENCY:0 "The average £prod_eff §HProduction Efficiency§! of our §HProduction Lines§! producing $EQUIPMENT|H$ is $EFFICIENCY|Y%$." - LOGISTICS_AVERAGE_EFFICIENCY_DELAYED:0 "Increase £prod_eff Production Efficiency to increase output." - LOGISTICS_MILITARY_FACTORIES_LABEL:0 "Military Factories" - LOGISTICS_NAVAL_FACTORIES_LABEL:0 "Naval Dockyards" - LOGISTICS_WEEKLY_PRODUCTION_LABEL:0 "Weekly production" - LOGISTICS_VIEW_GRAPH_VALUE:0 "$VALUE|0*$" - LOGISTICS_VIEW_FUEL_CONSUMPTION_VALUE:1 "$VALUE|.1*$/d" - LOGISTICS_EQUIPMENT_VARIANT_LABEL:0 "Equipment" - LOGISTICS_AMOUNT_PRODUCTION_LINES:0 "$AMOUNT|Y1$/week produced in $NUMBER|Y0$ lines." - LOGISTICS_EQUIPMENT_VALUE:0 "$EQUIPMENT|H$" - LOGISTICS_WEEKLY_SPEED_VALUE:0 "$AMOUNT|Y1$" - LOGISTICS_IN_STOCK_LOW_VALUE:0 "$AMOUNT|^+=1$" - LOGISTICS_IN_STOCK_HIGH_VALUE:0 "$AMOUNT|^+=0$" - LOGISTICS_NEEDS_LOW_VALUE:0 "$AMOUNT|^1Y$" - LOGISTICS_NEEDS_HIGH_VALUE:0 "$AMOUNT|^0Y$" - LOGISTICS_PRODUCED_LOW_VALUE:0 "$AMOUNT|^1Y$" - LOGISTICS_PRODUCED_HIGH_VALUE:0 "$AMOUNT|^0Y$" - LOGISTICS_BALANCE_LOW_VALUE:0 "$AMOUNT|^+=1$" - LOGISTICS_BALANCE_HIGH_VALUE:0 "$AMOUNT|^+=1$" - LOGISTICS_LAND_OTHER_LABEL:0 "Other military" - LOGISTICS_NAVAL_OTHER_LABEL:0 "Other ships" - LOGISTICS_AIR_OTHER_LABEL:0 "Other planes" - LOGISTICS_STATUS_LOW_VALUE:0 "We currently need an average of $NEED|^1Y$ units of $EQUIPMENT|H$ equipment per day." - LOGISTICS_STATUS_HIGH_VALUE:0 "We currently need an average of $NEED|^0Y$ units of $EQUIPMENT|H$ equipment per day." - LOGISTICS_SURPLUS_LOW_VALUE:0 "On average we have a production surplus of $BALANCE|^2Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_SURPLUS_HIGH_VALUE:0 "On average we have a production surplus of $BALANCE|^1Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_DEFICIT_LOW_VALUE:0 "On average we have a production deficit of $BALANCE|^1Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_DEFICIT_HIGH_VALUE:0 "On average we have a production deficit of $BALANCE|^0Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_NEED_LOW_VALUE:0 "Our current average need of $EQUIPMENT|H$ is $NEED|^1Y$ units." - LOGISTICS_NEED_HIGH_VALUE:0 "Our current average need of $EQUIPMENT|H$ is $NEED|^0Y$ units." - LOGISTICS_NEED_ARMY_REINFORCEMENTS_LOW_VALUE:0 "On average we send $NEED|^1Y$ units per day as division reinforcements" - LOGISTICS_NEED_ARMY_REINFORCEMENTS_HIGH_VALUE:0 "On average we send $NEED|^0Y$ units per day as division reinforcements" - LOGISTICS_NEED_AIR_REINFORCEMENTS_LOW_VALUE:0 "On average we send $NEED|^1Y$ units per day as air reinforcements" - LOGISTICS_NEED_AIR_REINFORCEMENTS_HIGH_VALUE:0 "On average we send $NEED|^0Y$ units per day as air reinforcements" - LOGISTICS_NEED_GARRISON_REINFORCEMENTS_LOW_VALUE:0 "On average we send $NEED|^1Y$ units per day as garrison reinforcements" - LOGISTICS_NEED_GARRISON_REINFORCEMENTS_HIGH_VALUE:0 "On average we send $NEED|^0Y$ units per day as garrison reinforcements" - LOGISTICS_EFFICIENCY_NOT_HUNDRED_LOW_VALUE:0 "Our §HProduction Lines§! producing $EQUIPMENT|H$ equiment operate at an average of $EFFICIENCY|Y%$ §HEfficiency§!. We could potentially produce an additional $ADDITIONAL|^1Y$ units daily." - LOGISTICS_EFFICIENCY_NOT_HUNDRED_HIGH_VALUE:0 "Our §HProduction Lines§! producing $EQUIPMENT|H$ equiment operate at an average of $EFFICIENCY|Y%$ §HEfficiency§!. We could potentially produce an additional $ADDITIONAL|^0Y$ units daily." - LOGISTICS_ACQUIRED_TOTAL_LOW_VALUE:0 "On average we produce $PRODUCED|^1Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_ACQUIRED_TOTAL_HIGH_VALUE:0 "On average we produce $PRODUCED|^0Y$ units of $EQUIPMENT|H$ per day." - LOGISTICS_GAINED_PRODUCTION_LOW_VALUE:0 "From production: $GAINED|^1Y$ units" - LOGISTICS_GAINED_PRODUCTION_HIGH_VALUE:0 "From production: $GAINED|^0Y$ units" - LOGISTICS_STOCK_REQUEST:0 "\nReinforcements and new divisions are requesting $COUNT|H$ units." - LOGISTICS_PRODUCING:0 "Our §HProduction Lines§! produce $PRODUCING|H2$ units per week:" - LOGISTICS_VARIANT_SPEED:0 "$VARIANT|H$: $SPEED|H2$ units." - LOGISTICS_BALANCE:0 "Our current average balance based on our daily production and average needs of $EQUIPMENT|Y$ for the last $DAYS|Y$ days is $BALANCE|H$." - LOGISTICS_LOW_ON_RESOURCE:0 "Our §HProduction Lines§! producing $EQUIPMENT|H$ equipment have trouble obtaining enough $RESOURCES|H$ for maximal production efficiency." - LOGISTICS_INSTOCK_DEFICIT_LOW_VALUE:0 "We currently have a deficit of $INSTOCK|^2Y$ units of $EQUIPMENT|H$ equipment in storage." - LOGISTICS_INSTOCK_DEFICIT_HIGH_VALUE:0 "We currently have a deficit of $INSTOCK|^0Y$ units of $EQUIPMENT|H$ equipment in storage." - LOGISTICS_INSTOCK_SURPLUS_LOW_VALUE:0 "We currently have a surplus of $INSTOCK|^2Y$ units of $EQUIPMENT|H$ equipment in storage." - LOGISTICS_INSTOCK_SURPLUS_HIGH_VALUE:0 "We currently have a surplus of $INSTOCK|^0Y$ units of $EQUIPMENT|H$ equipment in storage." - LOGISTICS_ESTIMATED_EMPTY:0 "With our current need and production of $EQUIPMENT|Y$ equipment, our storage will last for $DAYS|Y$ days." - LOGISTICS_ESTIMATED_NO_SHORTAGE:0 "With our current production of $EQUIPMENT|Y$ equipment, the shortage will last for $DAYS|Y$ days." - LOGISTICS_ESTIMATED_NO_PRODUCTION:0 "We're not currently producing $EQUIPMENT|Y$ equipment." - LOGISTICS_RESOURCE:0 "Our §HProduction Lines§! require $RESOURCE|H$ for their production of $EQUIPMENT|H$." - LOGISTICS_RESOURCE_OTHER_LINES:0 "We have $LINES|Y$ §HProduction Lines§! producing equipment other than $EQUIPMENT|H$ that also require $RESOURCE|H$ for their production." - LOGISTICS_RESOURCE_SHORTAGE:0 "Our §HProduction Lines§! producing $EQUIPMENT|H$ equipment have trouble obtaining enough $RESOURCE|H$ for maximal production efficiency." - LOGISTICS_MILITARY_FACTORY:0 "$PERCENTAGE|%0Y$ of our §HMilitary Factories§! are currently producing equipment." - LOGISTICS_NAVAL_FACTORY_NONE:0 "We have no §HNaval Dockyards§!!" - LOGISTICS_NAVAL_FACTORY:0 "$PERCENTAGE|%0Y$ of our §HNaval Dockyards§! are currently constructing ships." - LOGISTICS_RESOURCES_SUMMERY:0 "We currently have access to $HAVE|Y$ units of $RESOURCE|H$ and we need $NEED|Y$ units for maximal output." - LOGISTICS_RESOURCES_NAVAL:0 "Our production of Naval equipment require $NEED|Y$ units of $RESOURCE|H$ for maximal output." - LOGISTICS_RESOURCES_LAND:0 "Our production of land equipment require $NEED|Y$ units of $RESOURCE|H$ for maximal output." - LOGISTICS_RESOURCES_AIR:0 "Our production of aircraft equipment require $NEED|Y$ units of $RESOURCE|H$ for maximal output." - LOGISTICS_RESOURCE_NEED_SUMMERY:0 "We currently need access to $NEED|Y$ additional units of $RESOURCE|H$ for maximal output." - LOGISTICS_NEED_LEND_LEASE_LOW_VALUE:0 "Lend-Lease: $NEED|^1Y$ units" - LOGISTICS_NEED_LEND_LEASE_HIGH_VALUE:0 "Lend-Lease: $NEED|^0Y$ units" - LOGISTICS_GAINED_LEND_LEASE:0 "From Lend-Lease: $GAINED|Y$ units" - LOGISTICS_STORAGE_DEPLOYMENT:0 "§TFrom new Deployments: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_ARMY_REINFORCEMENT:0 "§TFrom Division Reinforcement: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_AIR_REINFORCEMENT:0 "§TFrom Air Reinforcement: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_GAINED_LEND_LEASE:0 "§TFrom Lend-Lease: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_OPERATIONS_NEED:0 "§TFrom Operations: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_GARRISON_REINFORCEMENT:0 "§TFrom Garrison Reinforcement: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_FOREIGN:0 "§TForeign equipment: $AMOUNT|Y$ units§!" - LOGISTICS_STORAGE_PRODUCTION_POOL:0 "§TFrom Production: $AMOUNT|Y$ units§!" - PRODUCTION_OUTPUT:1 "Stockpile" - LOGISTICS_DELETE_EQUIPMENT:0 "§RDestroy§!" - LOGISTICS_DELETE_EQUIPMENT_CONFIRM_TITLE:0 "§HDestroy Stockpiled Equipment§!" - LOGISTICS_DELETE_EQUIPMENT_CONFIRM_DESC:0 "\n\nAre you sure you want to §Rdestroy§! $EQUIPMENT|Y$?\n\nThe equipment will be removed from your stockpile and you won't be able to use it anymore. This process is irreversible.\n\nThe equipment will be still accessible for enemies for $NUM_DAYS|Y$ days in case of capitulation or annexation." - LOGISTICS_FUEL_PRIORITIZATION:0 "Food Prioritization" - LOGISTICS_FUEL_STORED:0 "Stored" - LOGISTICS_FUEL_CONSUMED:0 "Consumed" - fuel_line_grid_entry_0:0 "Total Stockpiled" - fuel_line_grid_entry_1:0 "Total Consumption" - fuel_line_grid_entry_2:0 "Army Consumption" - fuel_line_grid_entry_3:0 "Navy Consumption" - fuel_line_grid_entry_4:0 "Air Consumption" - fuel_line_grid_entry_5:0 "Other Consumption" - fuel_line_grid_entry_6:0 "Total Production" - FUEL_LOW_PRIORITY_DESC:0 "Low Food Priority" - FUEL_MEDIUM_PRIORITY_DESC:0 "Medium Food Priority" - FUEL_HIGH_PRIORITY_DESC:0 "High Food Priority" - LOGISTICS_NEED_OPERATION_REQUEST_LOW_VALUE:0 "On average we send $NEED|^1Y$ units per day for operations" - LOGISTICS_NEED_OPERATION_REQUEST_HIGH_VALUE:0 "On average we send $NEED|^0Y$ units per day for operations" - diff --git a/localisation/english/replace/lotr_misc_replace_l_english.yml b/localisation/english/replace/lotr_misc_replace_l_english.yml index f71883768..b211b3d41 100644 --- a/localisation/english/replace/lotr_misc_replace_l_english.yml +++ b/localisation/english/replace/lotr_misc_replace_l_english.yml @@ -6,4 +6,98 @@ INDUSTRIAL_ORG_LIST_WINDOW_FILTER_CATEGORY_PLANE: "Eagles and Fellbeases" INDUSTRIAL_ORG_LIST_WINDOW_FILTER_CATEGORY_MATERIEL: "Melee and Archer Equipment" INDUSTRIAL_ORG_LIST_WINDOW_FILTER_CATEGORY_TOOLTIP: "Show only Guilds for $CATEGORY|Y$" INDUSTRIAL_ORG_POLITICAL_SCREEN_OPEN_ROSTER_WITH_FILTER: "§GClick to show Guilds for§! $CATEGORY|Y$" -INDUSTRIAL_ORG_LIST_WINDOW_FILTER_CAN_UNLOCK_TOOLTIP: "Show only Guilds with Trait points to spend " \ No newline at end of file +INDUSTRIAL_ORG_LIST_WINDOW_FILTER_CAN_UNLOCK_TOOLTIP: "Show only Guilds with Trait points to spend " + +infrastructure_desc:0 "This building provides the state with improvement of infrastructure. It increases your supply power in strategic regions and increases your divisions' speed." +synthetic_refinery:0 "Farm" +synthetic_refinery_plural:0 "Farms" +AIR_BASE_LEVEL:0 "$NAME|H$: $VAL|Y$" +AIR_BASE_LEVEL_UNKNOWN:0 "$NAME|H$" +fuel_silo:0 "Food Silo" +fuel_silo_plural:0 "Food Silos" +fuel_silo_desc:0 "This building provides your nation with more room for stockpiling §HFood§!." + +FREQUENCY_YEAR:0 "year" +oil_desc:0 "Food is a requirement of nearly every living creature in Middle-Earth." +aluminium_desc:0 "Mithril is an extremely rare resource that will allow the production of powerful equipment." +rubber_desc:0 "Leather is a product from livestock and is used for saddles to ride cavalry and flying beasts. It is also used in producing support equipment." +tungsten_desc:0 "String is typically made out of plant fibers and is ued for bows. In large amounts, string can be made into rope to create tension in siege machines." +steel_desc:0 "Steel is the primary metal for most types of weapons and armor." +chromium_desc:0 "Wood is used in a variety of different products including ships, weapons and siege machines." +FUEL_TITLE:0 "§HFood§!" +FUEL:0 "Food" +CURRENT_FUEL:0 "Current Food: $NUM|H$" +FUEL_CAPACITY:0 "Food Capacity: $NUM|H$" +OUT_OF_FUEL_INFO:0 "With current consumption rates, you will be out of food in $DUR|R$" +FUEL_GAIN_BY_STATES_FACTOR_TOOLTIP:0 "Food Gain will be modified by $FACTOR|+%.0$ to a total of $TOTAL|.2H$" +MAX_FUEL_BY_STATES_FACTOR_TOOLTIP:0 "Food Capacity will be modified by $FACTOR|+%.0$ to a total of $TOTAL|.2H$" +FUEL_CAPACITY_FILL_INFO:0 "With current production rate, you will fill your food capacity in $DUR|G$" +FUEL_DESC:0 "§HFood§! is generated by your country's excess food. Each country has a maximum capacity for §HFood§! which can be increased by building §HSilos§!. §HFood§! is used by all military units and it is delivered using §HSupply Lines§!." +LACK_OF_FUEL:0 "Lack of Food: $VAL|%0R$" +FUEL_STOCKPILE_HEADER:0 "\n§HFood Stockpile Capacity: $NUM$§!" +SUPPLY_TRUCKS_DESC_DETAILED:0 "Trade Caravans are used for delivering supply from supply hubs to armies." +TRIGGER_FUEL_RATIO:0 "Food Ratio" + +LOGISTICS_FUEL_PERCENTAGE:0 "§H$VALUE|0$%§! of food need satisfied." +LOGISTICS_FUEL_PRIORITIZATION:0 "Food Prioritization" +FUEL_LOW_PRIORITY_DESC:0 "Low Food Priority" +FUEL_MEDIUM_PRIORITY_DESC:0 "Medium Food Priority" +FUEL_HIGH_PRIORITY_DESC:0 "High Food Priority" + + +modifier_production_speed_fuel_silo_factor:0 "§YFood Silo§! construction speed" +modifier_production_speed_fuel_silo_factor_desc:0 "Modifies the speed of Food Silo construction." +revolutionary_drift:0 "Daily Revolutionary Support" +cooperative_drift:0 "Daily Cooperative Support" +belligerent_drift:0 "Daily Belligerent Support" +unaligned_drift:0 "Daily Support for Unaligned" +revolutionary_acceptance:0 "Acceptance of Revolutionary Diplomacy" +cooperative_acceptance:0 "Acceptance of Cooperative Diplomacy" +belligerent_acceptance:0 "Acceptance of Belligerent Diplomacy" +unaligned_acceptance:0 "Acceptance of Unaligned Diplomacy" +MODIFIER_PRODUCTION_OIL_FACTOR:0 "Farming Techniques" +MODIFIER_ARMY_FUEL_CAPACITY_FACTOR:0 "Army Food Capacity" +MODIFIER_ARMY_FUEL_CONSUMPTION_FACTOR:0 "Army Food Consumption" +MODIFIER_NAVY_FUEL_CONSUMPTION_FACTOR:0 "Navy Food Consumption" +MODIFIER_AIR_FUEL_CONSUMPTION_FACTOR:0 "Air Food Consumption" +MODIFIER_FUEL_GAIN_FACTOR:0 "Food Gain per $OIL|H$£resources_strip|1" +MODIFIER_FUEL_GAIN_FACTOR_FROM_STATES:0 "Food Gain from Farms" +MODIFIER_FUEL_GAIN_FROM_STATES:0 "Food Gain from Farms" +MODIFIER_FUEL_GAIN_ADD:0 "Food Gain per $OIL|H$£resources_strip|1" +MODIFIER_MAX_FUEL_FACTOR:0 "Food Capacity" +MODIFIER_MAX_FUEL_ADD:0 "Food Capacity (K)" +MODIFIER_MAX_FUEL_ADD_FROM_STATES:0 "Food Capacity (K)" +MODIFIER_BASE_FUEL_GAIN_FACTOR:0 "Food Gain" +MODIFIER_BASE_FUEL_GAIN_ADD:0 "Food Gain" +MODIFIER_FUEL_COST:0 "Food Cost" +state_resource_oil:0 "Food" +state_resource_aluminium:0 "Mithril" +state_resource_rubber:0 "Leather" +state_resource_tungsten:0 "String" +state_resource_chromium:0 "Wood" +temporary_state_resource_oil:0 "Food" +temporary_state_resource_aluminium:0 "Mithril" +temporary_state_resource_rubber:0 "Leather" +temporary_state_resource_tungsten:0 "String" +temporary_state_resource_chromium:0 "Wood" +country_resource_oil:0 "Food" +country_resource_aluminium:0 "Mithril" +country_resource_rubber:0 "Leather" +country_resource_tungsten:0 "String" +country_resource_chromium:0 "Wood" +state_resource_cost_oil:0 "Food Consumption" +state_resource_cost_aluminium:0 "Mithril Consumption" +state_resource_cost_rubber:0 "Leather Consumption" +state_resource_cost_tungsten:0 "String Consumption" +state_resource_cost_chromium:0 "Wood Consumption" +country_resource_cost_oil:0 "Food Consumption" +country_resource_cost_aluminium:0 "Mithril Consumption" +country_resource_cost_rubber:0 "Leather Consumption" +country_resource_cost_tungsten:0 "String Consumption" +country_resource_cost_chromium:0 "Wood Consumption" + +PRODUCTION_MATERIALS_OIL:0 "Food" +PRODUCTION_MATERIALS_ALUMINIUM:0 "Mithril" +PRODUCTION_MATERIALS_RUBBER:0 "Leather" +PRODUCTION_MATERIALS_CHROMIUM:0 "Wood" +PRODUCTION_MATERIALS_TUNGSTEN:0 "String" diff --git a/localisation/english/replace/lotr_technologies_l_english.yml b/localisation/english/replace/lotr_technologies_l_english.yml index 56425282f..2b085d01b 100644 --- a/localisation/english/replace/lotr_technologies_l_english.yml +++ b/localisation/english/replace/lotr_technologies_l_english.yml @@ -501,7 +501,6 @@ advanced_decryption_desc:0 "" metalworking:0 "Metalworking" - metalworking_desc:0 "" ship_building_tools:0 "Ship Building Tools" ship_building_tools_desc:0 "" @@ -1048,4 +1047,160 @@ fighter_eagle_men:0 "Fighter Eagle" scout_eagle:0 "Scout Eagle" scout_eagle_men:0 "Scout Eagle" fellbeast_domestication:0 "Scout Fellbeast" -fighter_fellbeast:0 "Fighter Fellbeast" \ No newline at end of file +fighter_fellbeast:0 "Fighter Fellbeast" + +armour_folder:0 "Cavalry" +armour_folder_desc:0 "Cavalry and their variants." +nsb_armour_folder:0 "Cavalry" +nsb_armour_folder_desc:0 "Cavalry and their variants." +artillery_folder:0 "Ballistics" +artillery_folder_desc:0 "Hand-held, Anti-Cavalry & Anti-Air weapons for divisions." +land_doctrine_folder:0 "Land doctrine" +naval_doctrine_folder:0 "Naval doctrine" +air_techs_folder_desc:0 "Aircraft." +air_doctrine_folder:0 "Air doctrine" +mobile_infantry_desc:0 "Regular Infantry is often too slow to keep up with, react to, or escape from rapidly moving Armored forces. The answer is to focus on horse drawn Infantry which can keep up with the pace of modern warfare.\n\n" +mass_motorization_desc:0 "An even greater focus on horse drawn troops." +mechanised_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons." +sup_mechanized_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons." +grand_mechanized_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons.\n\n" +infantry_weapons2:0 "Swordsman Equipment II" +improved_infantry_weapons_2:0 "Improved Archer Support" +advanced_infantry_weapons2:0 "Advanced Archer Support" +infantry_at:0 "Infantry Pikes I" +infantry_at2:0 "Infantry Pikes II" +paratroopers:0 "Heavy Infantry I" +paratroopers_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." +paratroopers2:0 "Heavy Infantry II" +paratroopers2_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." +paratroopers3:0 "Heavy Infantry III" +paratroopers3_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." +tech_recon:0 "Scout Company I" +tech_recon2:0 "Scout Company II" +tech_recon3:0 "Scout Company III" +tech_recon4:0 "Scout Company IV" +tech_maintenance_company_desc:0 "Maintenance is essential to our war effort." +tech_maintenance_company2_desc:0 "Maintenance is essential to our war effort." +tech_maintenance_company3_desc:0 "Maintenance is essential to our war effort." +tech_maintenance_company4_desc:0 "Maintenance is essential to our war effort." +motorised_infantry:0 "Horse Drawn Infantry" +motorised_infantry_desc:0 "By extending the use of carriages in infantry transports in the field, the mobility of otherwise slow-moving infantry units can be greatly improved, enabling faster responses and new strategies." +night_vision:0 "Crude Torches" +night_vision_desc:0 "Being able to see the enemy without being seen is key to night operations. With the invention of torch technology, we can outfit our army with devices which, though unwieldy, makes this possible." +night_vision2:0 "Improved Torches" +night_vision2_desc:0 "Early torches, although initially intended for use by charging swordsmens, had a limited vision range. As both portability and vision improves, these devices can be used by more troops operating at night." +fuel_silos:0 "Food Silos" +fuel_silos_desc:0 "Mass Storage of food requires a complex set of tanks, pipes, and valves to ensure it is both secure and readily available." +fuel_refining:0 "Food Refining I" +fuel_refining_desc:0 "Advancements in tilling of soil allow for better yield of food." +fuel_refining2:0 "Food Refining II" +fuel_refining2_desc:0 "Better planning of farm soil increases area that can be used to grow food." +fuel_refining3:0 "Food Refining III" +fuel_refining3_desc:0 "New techniques for fighting crop destroying rodents and insects will allow us to use more of our food." +fuel_refining4:0 "Food Refining IV" +fuel_refining4_desc:0 "Improved fertilization practices increases the rate of growth and size of our food." +fuel_refining5:0 "Food Refining V" +fuel_refining5_desc:0 "Soil composition discoveries allow us to pick the perfect locations for our farms, further increasing output." +synth_oil_experiments:0 "Farming Experiments" +synth_oil_experiments_desc:0 "To increase food security for our people, innovations in farming can be made." +early_refining:0 "Early Experiments" +early_refining_desc:0 "Our farms can be made more efficient and allow us to not only grow food more effectively, but also allow us to produce leather as well." +oil_processing:0 "Farming Techniques" +oil_processing_desc:0 "Introducing different types of crops into our farms will allow us to grow food throughout more of the year." +improved_oil_processing:0 "Improved Farming Techniques" +improved_oil_processing_desc:0 "Using beasts to help us farm will increase our outupt by allowing us to work longer." +advanced_oil_processing:0 "Advanced Farming Techniques" +advanced_oil_processing_desc:0 "Advanced weather prediction techniques allow us to decide whether we need to plant extra food before harvest season." +modern_oil_processing:0 "Extreme Farming Techniques" +modern_oil_processing_desc:0 "Studying plants with natural resistance to extreme weather allows us to lose less crops during bad weather cycles." +rubber_processing:0 "Leather Processing" +rubber_processing_desc:0 "Processing the leather of our animals will introduce more leather into our country's supply" +improved_rubber_processing:0 "Improved Leather Processing" +improved_rubber_processing_desc:0 "Further improvements in leather technology allow us to prevent waste and extract more leather." +advanced_rubber_processing:0 "Advanced Leather Processing" +advanced_rubber_processing_desc:0 "Stitching together smaller pieces of leather will allow us to use smaller animal's hides." +modern_rubber_processing:0 "Extreme Leather Processing" +modern_rubber_processing_desc:0 " Using finer blades prevents waste and will allow us to get extra leather from animals." +interwar_artillery:0 "Interwar Bow" +artillery1:0 "Bow I" +artillery2:0 "Improved Bow Upgrade I" +artillery3:0 "Improved Bow Upgrade II" +artillery4:0 "Bow IV" +artillery5:0 "Advanced Bow Upgrade" +rocket_artillery2:0 "Crossbow Upgrade I" +rocket_artillery3:0 "Crossbow Upgrade II" +rocket_artillery4:0 "Crossbow III" +antitank1:0 "Anti-Cavalry Upgrade" +antitank2:0 "Anti-Cavalry II" +antitank3:0 "Improved Anti-Cavalry Upgrade I" +antitank4:0 "Improved Anti-Cavalry Upgrade II" +antitank5:0 "Anti-Cavalry V" +air_superiority_desc:0 "Achieving Air Superiority will make it more difficult for enemy flying creatures to be used against our country, to allow our bombers to be used against our enemies." +formation_flying_desc:0 "By flying in formation, flying creatures can provide support to each other or work together to attack enemies." +air_offense_desc:0 "With a focus on bombing during the day we need to keep our bombers safe from intercepting flying creatures. Training our fighter pilots to work closely with the bombers will improve their fighting abilities when protecting the bombers in enemy airspace." +fighter_ace_initiative_desc:0 "Giving special awards and status to pilots who achieve Ace status, by taking down five enemies, incentives risk-taking and brings about a sense of eliteness in Ace pilots - although this does tend to make experienced pilots stay in combat positions." +multialtitude_flying_desc:0 "Air combat takes place in three dimensions, but most pilots find it harder to keep track of creatures flying above or below them. We can take advantages of this by spreading our formations vertically." +fighter_sweeps_desc:0 "Aggressive patrols of flying beasts over enemy territory may catch their flying creatures taking off or landing, when they are especially vulnerable, or disrupt enemy training flights." +AIR_TITLE_SCOUT_PLANE:0 "Air Scouts" +MOBILE_INFANTRY_LABEL_TT:0 "Improve speed and organization of horse drawn infantry." +cat_light_armor:0 "Light Cavalry models" +cat_medium_armor:0 "Medium Cavalry models" +cat_heavy_armor:0 "Heavy Cavalry models" +cat_anti_tank:0 "Anti-Cavalry" +medium_air:0 "Medium Flying Creatures" +light_air:0 "Light Flying Creatures" +heavy_air:0 "Heavy Flying Creatures" +naval_air:0 "Naval Flying Creatures" +decryption_tech_research:0 "Decryption Research Time" +encryption_tech_research:0 "Encryption Research Time" +air_equipment_research:0 "Air Research Time" +support_tech_research:0 "Support Unit Research Time" +synth_resources_research:0 "Synthetic Resources Research Time" +motorized_rocket_unit:0 "Crossbowmen Chariot" +mot_rockets_research:0 "Crossbowmen Chariot Research Time" +ARMOUR_TITLE:0 "CAVALRY" +ARTILLERY_TITLE_ROCKET:0 "CROSSBOW" +ARTILLERY_TITLE_AT:0 "ANTI-CAVALRY" +ARTILLERY_TITLE:0 "HAND-HELDS" +INDUSTRY_TITLE_OIL:0 "ADVANCED FARMING" +scout_plane1:0 "Crebain" +scout_plane2:0 "Giant Bats" +cat_synth_rubber:0 "Leather" +cat_synth_oil:0 "Food" + + +equipment_title:0 "Infantry Equipment" +equipment_c_title:0 "Spearman" +equipment_s_title:0 "Swordsman" +equipment_desc:0 "Swords, spears, axes and maces. A common footman's equipment consists not only of their weapon, but also their uniform, tent and a weeks worth of supplies." +suppweapons_title:0 "Support Weapons" +suppweapons_desc:0 "Whether on or off the battlefield, all soldiers are likely to encounter a variety of contingencies that require specialized equipment." +arty_title:0 "Archery Equipment" +arty_desc:0 "A well-placed volley of arrows can rout the most steadfast enemy. Long range projectile weapons are imperative to inflict maximum damage." +forces_title:0 "Special Forces" +forces_desc:0 "Specialized task forces to carry out high-risk missions or fight on unique terrain are imperative for operational flexibility." +chariot_title:0 "Horse-drawn Carriages" +chariot_desc:0 "The invention of the spoked wheel has enabled the contruction of lightweight carriages, drawn by horses." +cav_title:0 "Cavalry" +cav_desc:0 "Soldiers mounted on horseback offer superior mobility and speed, making them ideal for reconnaissance, skirmishing and heavy charges." +archer_title:0 "Cavalry Archers" +catapult_title:0 "Siege Equipment" +catapult_desc:0 "Breaking or circumventing high walls and other fortifications will require advanced machines." +ballistae_title:0 "Ballistae" +ballistae_desc:0 "Breaking through plate armor or bringing down ferocious beasts may require projectiles of immense stopping power." +longships_title:0 "Longships" +galleys_title:0 "Galleys" +sailing_ships_title:0 "Sailing Ships" +frigate_title:0 "Frigates" +construction_title:0 "Construction" +construction_desc:0 "With each brick placed, a humble village grows closer to a bustling metropolis. Foundations that withstand the test of time will keep it as such." +metalworking_title:0 "Metalworking" +metalworking_desc:0 "The strongest steel is required for the finest weapons. A forge's fire gives it power and flexibility, and makes the metal pliable so it may withstand every battle it's called upon to fight." +farming_title:0 "Farming" +farming_desc:0 "Agriculture is the most useful and most noble employment of man. It is the lifeblood on which empires stand and fall." +scriptorium_title:0 "Scriptorium" +scriptorium_desc:0 "Mastering the processes of writing, copying and illuminating manuscripts will unlock the realms of knowledge and learning." +alchemy_title:0 "Alchemy" +alchemy_desc:0 "The study of matter as reagents may not only bring about destructive potential, but also what virtue and power lies in medicines." +intrigue_title:0 "Intrigue" +intrigue_desc:0 "The manipulation of secrecy and information is vital for defense and proseperity. Every man, friend or foe, is surrounded by a neighborhood of voluntary spies." \ No newline at end of file diff --git a/localisation/english/replace/modifiers_l_english.yml b/localisation/english/replace/modifiers_l_english.yml deleted file mode 100644 index 65e86f0bf..000000000 --- a/localisation/english/replace/modifiers_l_english.yml +++ /dev/null @@ -1,1675 +0,0 @@ -l_english: - MODIFIER_TECH_PREFIX:0 "£tech_mod " - MODIFIER_POLITICS_PREFIX:0 "£pol_idea " - MODIFIER_DECISION_PREFIX:1 "£decision_icon_small " - MODIFIER_MISSION_PREFIX:1 "£decision_icon_small " - MOD_DAYS:0 "Day(s)" - MOD_HOUR:0 "Hour(s)" - MOD_DAILY:0 "daily" - MODIFIER_GLOBAL_BUILDING_SLOTS_FACTOR:0 "Max Factories in a State" - MODIFIER_GLOBAL_BUILDING_SLOTS_FACTOR_DESC:1 "Modifies number of shared building slots in all States." - MODIFIER_GLOBAL_BUILDING_SLOTS:0 "Max Factories in a State" - MODIFIER_LOCAL_BUILDING_SLOTS_FACTOR:0 "Max Factories in State" - MODIFIER_LOCAL_BUILDING_SLOTS_FACTOR_DESC:1 "Modifies number of shared building slots in the State." - MODIFIER_LOCAL_BUILDING_SLOTS:0 "Max Factories in State" - CAN_GUARANTEE_OTHER_IDEOLOGIES_NO:0 "Can only guarantee $IDE$ nations." - MODIFIER_ORG_LOSS_WHEN_MOVING:0 "Org Loss when Moving" - MODIFIER_ORG_LOSS_WHEN_MOVING_DESC:0 "Modifies the amount of organization lost when a division is moving" - MODIFIER_ORG_LOSS_AT_LOW_ORG_FACTOR:1 "Organization loss when below 25%" - MODIFIER_NONE:0 "None" - MODIFIER_BUILDING_CONVERTION_FACTOR:0 "Building Conversion Factor" - MODIFIER_AIR_DETECTION:0 "Air Detection" - MODIFIER_NAVAL_STRIKE:0 "Naval Strike" - VISIBLE_MODIFIERS_END:0 "Visible Modifiers End" - MODIFIER_CARRIER_TRAFFIC:0 "Carrier Traffic" - MODIFIER_CARRIER_NIGHT_TRAFFIC:0 "Carrier Night Traffic" - MODIFIER_POLITICAL_POWER_GAIN:0 "Daily Political Power Gain" - MODIFIER_POLITICAL_POWER_COST:0 "Daily Political Power Cost" - MODIFIER_POLITICAL_POWER_FACTOR:0 "Political Power Gain" - MODIFIER_NAVAL_HIT_CHANCE:0 "Naval Hit Chance" - MODIFIER_NAVAL_SPEED:0 "Naval Speed" - MODIFIER_NAVAL_DETECTION:0 "Naval Detection" - MODIFIER_SUBMARINE_ATTACK:0 "Submarine Attack" - MODIFIER_SPY_ACQUIRE_INTEL_EFFICIENCY:0 "Acquire Intel" - MODIFIER_SPY_BOOST_PARTY_POPULARITY_EFFICIENCY:0 "Boost Party Popularity" - MODIFIER_SPY_ATTEMPT_COUP_EFFICIENCY:0 "Attempt Coup" - MODIFIER_SPY_FABRICATE_CLAIM_FACTOR:0 "Justify Claim" - MODIFIER_RESISTANCE_TICK:0 "Resistance Growth" - MODIFIER_RESISTANCE_TICK_AUTO:0 "Resistance Growth" - MODIFIER_LOCAL_RESOURCES:0 "Local Resources" - MODIFIER_LOCAL_RESOURCES_FACTOR:0 "Resource Gain Efficiency" - MODIFIER_LOCAL_RESOURCES_FACTOR_DESC:0 "Modifies the amount of resources gained" - MODIFIER_LOCAL_MANPOWER:0 "Local Manpower" - MODIFIER_LOCAL_SUPPLIES:0 "Local Supplies" - MODIFIER_LOCAL_FACTORIES:0 "Local Factories" - MODIFIER_LOCAL_INTEL_TO_ENEMIES:0 "Intel to Enemies" - MODIFIER_LOCAL_FACTORY_SABOTAGE:0 "Chance to Sabotage Constructions" - MODIFIER_ATTRITION:0 "Division Attrition" - MODIFIER_ATTRITION_DESC:0 "How much damage our divisions take from attrition when traversing " - MODIFIER_AIR_ACCIDENTS:0 "Air Accidents Chance" - MODIFIER_AIR_ACCIDENTS_FACTOR:0 "Air Accidents Chance" - MODIFIER_LOCAL_ORG_REGAIN:0 "Organization Regain" - MODIFIER_ARMY_ORG_REGAIN:0 "Army Organization Regain" - occupation_policy_1:0 "Gentlest" - occupation_policy_2:0 "Gentle" - occupation_policy_3:0 "Harsh" - occupation_policy_4:0 "Harshest" - WEATHER_MODIFIERS:0 "Weather modifiers ($WEA$):" - WEATHER_PEACETIME:0 "Attrition from weather only applies if controller is at war" - NIGHT_MODIFIERS:0 "Night modifiers:" - MODIFIER_DEFENCE:0 "Defense" - MODIFIER_OFFENCE:0 "Attack" - MODIFIER_NUCLEAR_PRODUCTION:0 "Allows Nuclear Bomb" - MODIFIER_NUCLEAR_PRODUCTION_FACTOR:0 "Nuclear Production" - MODIFIER_BUILDING_CONVERTION:0 "Factory Conversion" - MODIFIER_NAVAL_SPEED_FACTOR:0 "Naval Speed" - MODIFIER_XP_GAIN_FACTOR:1 "Leader Experience Gain" - MODIFIER_XP_GAIN:0 "Experience Gain" - MODIFIER_COMMAND_CAP:0 "Command Limit" - MODIFIER_COMMAND_CAP_FACTOR:0 "Command Limit" - MODIFIER_SUBMARINE_ATTACK_FACTOR:0 "Submarine Attack" - MODIFIER_GLOBAL_MONTHLY_POPULATION:0 "Monthly Population" - MODIFIER_GLOBAL_MONTHLY_POPULATION_DESC:0 "Modifies the amount of total population gained per month" - MODIFIER_ATTRITION_FACTOR:0 "Attrition" - MODIFIER_WINTER_ATTRITION_FACTOR:0 "Winter Attrition" - MODIFIER_WINTER_ATTRITION:0 "Winter Attrition" - MODIFIER_HEAT_ATTRITION_FACTOR:0 "Heat Attrition" - MODIFIER_HEAT_ATTRITION:0 "Heat Attrition" - MODIFIER_SPOTTING_CHANCE_FACTOR:1 "Spotting Speed" - MODIFIER_SPOTTING_CHANCE:1 "Spotting Speed" - MODIFIER_SPOTTING_CHANCE_MODIFIER:0 "Spotting Speed Modifier: " - MODIFIER_SPREAD_OUT_FACTOR:0 "Fleet Spread" - MODIFIER_SPREAD_OUT:0 "Fleet Spread" - MODIFIER_SHIPS_AT_BATTLE_START_FACTOR:0 "Number of ships in the first contact" - MODIFIER_DISENGAGE_TIMER_FACTOR:0 "Disengage time" - MODIFIER_DISENGAGE_TIMER:0 "Disengage Time" - MODIFIER_NAVAL_RETREAT_CHANCE:0 "Retreat Decision Chance" - MODIFIER_NAVAL_RETREAT_SPEED:0 "Fleet speed while retreating" - MODIFIER_CONVOY_RETREAT_SPEED:0 "Convoy speed while retreating" - MODIFIER_SUB_RETREAT_SPEED:0 "Submarine speed while retreating" - MODIFIER_OUT_OF_SUPPLY_FACTOR:1 "Non-Combat Out of Supply Penalties" - MODIFIER_OUT_OF_SUPPLY_FACTOR_DESC:1 "Reduces the organization and recovery penalty that troops take when they run out of supplies." - MODIFIER_OUT_OF_SUPPLY:1 "Non-Combat Out of Supply Penalties" - MODIFIER_OUT_OF_SUPPLY_DESC:1 "How severe an organization and recovery penalty troops take when they run out of supplies." - MODIFIER_COMBINED_ARMS_BONUS_FACTOR:0 "Combined Arms" - MODIFIER_COMBINED_ARMS_BONUS:0 "Combined Arms" - MODIFIER_OFFENCE_FACTOR:0 "Offense" - MODIFIER_DEFENCE_FACTOR:0 "Defense" - MODIFIER_FLOATING_HARBOR_SUPPLY:0 "Floating Harbor Supply" - MODIFIER_FLOATING_HARBOR_RANGE:0 "Floating Harbor Range" - MODIFIER_FLOATING_HARBOR_DURATION:0 "Floating Harbor Duration" - MODIFIER_SUPPLY_CONSUMPTION_FACTOR:0 "Supply Consumption" - MODIFIER_SUPPLY_CONSUMPTION_FACTOR_DESC:0 "How much supplies our land troops need to operate efficiently." - MODIFIER_SUPPLY_CONSUMPTION:0 "Supply Consumption" - MODIFIER_SURPRISE_CHANCE_FACTOR:0 "Surprise Chance" - MODIFIER_SURPRISE_CHANCE:0 "Surprise Chance" - MODIFIER_TAC_BOMBING_FACTOR:0 "Tactical Bombing" - MODIFIER_TAC_BOMBING:0 "Tactical Bombing" - MODIFIER_AIR_SUPERIORITY_FACTOR:0 "Air Superiority" - MODIFIER_AIR_SUPERIORITY:0 "Air Superiority" - MODIFIER_CONSUMER_GOODS_FACTOR:0 "Consumer Goods Factories" - MODIFIER_AIR_ATTACK:0 "Air Attack" - MODIFIER_AIR_ATTACK_FACTOR:0 "Air Attack" - MODIFIER_AIR_DEFENCE:0 "Air Defense" - MODIFIER_AIR_DEFENCE_FACTOR:0 "Air Defense" - MODIFIER_AIR_MAX_SPEED:0 "Max Air Speed" - MODIFIER_AIR_MAX_SPEED_FACTOR:0 "Max Air Speed" - MODIFIER_AIR_AGILITY:0 "Agility" - MODIFIER_AIR_AGILITY_FACTOR:0 "Agility" - MODIFIER_AIR_BOMBING:0 "Ground Bombing" - MODIFIER_AIR_BOMBING_FACTOR:0 "Ground Bombing" - MODIFIER_AIR_BOMBING_TARGETTING:0 "Ground Bombing Targeting" - MODIFIER_STRATEGIC_BOMBER_BOMBING:0 "Strategic Bombing" - MODIFIER_STRATEGIC_BOMBER_BOMBING_FACTOR:0 "Strategic Bombing" - MODIFIER_STRATEGIC_BOMBER_BOMBING_FACTOR_DESC:0 "Modifies the effectiveness of aircraft put on strategic bombing missions" - MODIFIER_STRATEGIC_BOMBING_RANGE_FACTOR:0 "Strategic Bombing Range" - MODIFIER_AIR_RANGE:0 "Air Range" - MODIFIER_AIR_RANGE_FACTOR:0 "Air Range" - MODIFIER_NAVAL_STRIKE_ATTACK:0 "Naval Bombing" - MODIFIER_NAVAL_STRIKE_ATTACK_FACTOR:0 "Naval Bombing" - MODIFIER_NAVAL_STRIKE_TARGETTING:0 "Naval Targeting" - MODIFIER_NAVAL_STRIKE_TARGETTING_DESC:0 "How efficiently our planes target their objectives while executing naval strikes." - MODIFIER_NAVAL_STRIKE_TARGETTING_FACTOR:0 "Naval Targeting" - MODIFIER_NAVAL_STRIKE_TARGETTING_FACTOR_DESC:0 "Modifies our planes ability to target their objectives when executing naval strikes" - MODIFIER_NAVAL_STRIKE_AGILITY:0 "Naval Agility" - MODIFIER_NAVAL_STRIKE_AGILITY_FACTOR:0 "Naval Agility" - light_air_research:2 "Light Aircraft Research Speed" - medium_air_research:2 "Medium Aircraft Research Speed" - heavy_air_research:2 "Heavy Aircraft Research Speed" - cas_bomber_research:0 "CAS Research Speed" - tactical_bomber_research:0 "Tactical Bomber Research Speed" - armor_research:2 "Armor Research Speed" - artillery_research:2 "Artillery Research Speed" - naval_air_research:2 "Naval Aircraft Research Speed" - naval_mines_research:0 "Naval Mines Research Speed" - radar_tech_research:0 "Radar Research Speed" - infantry_weapons_research:3 "Weapons and Equipment Research Speed" - motorized_equipment_research:2 "Motorization Research Speed" - naval_equipment_research:2 "Naval Research Speed" - ship_modules_tech_research:0 "Ship Modules Research Speed" - bb_tech_research:0 "Battleship Research Speed" - shbb_tech_research:0 "Superheavy Battleship Research Speed" - ca_tech_research:0 "Heavy Cruiser Research Speed" - cl_tech_research:0 "Light Cruiser Research Speed" - bc_tech_research:0 "Battlecruiser Research Speed" - tp_tech_research:0 "Naval Transport Research Speed" - ss_tech_research:0 "Submarine Research Speed" - dd_tech_research:0 "Destroyer Research Speed" - cv_tech_research:0 "Aircraft Carrier Research Speed" - rocketry_research:2 "Rocket Research Speed" - nuclear_research:2 "Nuclear Research Speed" - industry_research:2 "Industrial Research Speed" - electronics_research:2 "Electronics Research Speed" - land_doctrine_research:2 "Land Doctrine Research Speed" - naval_doctrine_research:2 "Naval Doctrine Research Speed" - air_doctrine_research:2 "Air Doctrine Research Speed" - strategic_destruction_tree_research:2 "Strategic Destruction Research Speed" - jet_technology_research:2 "Jet Technology Research Speed" - train_tech_research:0 "Trains and Railways Research Speed" - improve_relation:0 "Improved relations" - attache_sent:0 "Attaché sent" - attache_sent_to_enemy:0 "Attaché sent to enemy" - IMPROVE_RELATION_EFFECTS:0 "From improved relations" - MODIFIER_AIR_ACE_GENERATION_CHANCE:0 "Ace generation chance" - MODIFIER_AIR_ACE_GENERATION_CHANCE_FACTOR:0 "Ace generation chance" - MODIFIER_AIR_ACE_GENERATION_CHANCE_FACTOR_DESC:0 "Modifies the chances of receiving an Ace for your air unit. Aces are superior pilots who boost your combat effectiveness" - MODIFIER_TRAINING_TIME_NAVY:0 "Naval training time" - MODIFIER_TRAINING_TIME_NAVY_FACTOR:0 "Naval training time" - MODIFIER_XP_GAIN_ARMY:0 "Army Experience Gain" - MODIFIER_XP_GAIN_ARMY_FACTOR:0 "Army Experience Gain" - MODIFIER_XP_GAIN_NAVY:0 "Naval Experience Gain" - MODIFIER_XP_GAIN_NAVY_FACTOR:0 "Naval Experience Gain" - MODIFIER_XP_GAIN_AIR:0 "Air Experience Gain" - MODIFIER_XP_GAIN_AIR_FACTOR:0 "Air Experience Gain" - MODIFIER_XP_GAIN_ARMY_UNIT:0 "Division Experience Gain" - MODIFIER_XP_GAIN_ARMY_UNIT_FACTOR:0 "Division Experience Gain" - MODIFIER_XP_GAIN_NAVY_UNIT:0 "Ship Experience Gain" - MODIFIER_XP_GAIN_NAVY_UNIT_FACTOR:0 "Ship Experience Gain" - MODIFIER_TRAINING_TIME_ARMY:0 "Division training time" - MODIFIER_TRAINING_TIME_ARMY_FACTOR:0 "Division training time" - MODIFIER_SPECIAL_FORCES_TRAINING_TIME_FACTOR:0 "Special Forces Division training time" - MODIFIER_ARMY_SPEED_FACTOR:0 "Divisions speed" - MODIFIER_ARMY_SPEED_FACTOR_DESC:0 "Determines the speed at which our divisions move." - MODIFIER_ARMY_ATTACK_SPEED_FACTOR:0 "Attacking divisions speed" - MODIFIER_ARMY_ATTACK_SPEED_FACTOR_DESC:0 "Determines the speed at which our divisions move into enemy territory" - MODIFIER_ARMY_ARMOR_SPEED_FACTOR:0 "Armor speed" - MODIFIER_ARMY_ORG:0 "Division Organization" - MODIFIER_ARMY_ORG_FACTOR:0 "Division Organization" - MODIFIER_NAVY_ORG:0 "Navy Organization" - MODIFIER_NAVY_ORG_FACTOR:0 "Navy Organization" - MODIFIER_AIR_ORG:0 "Air Organization" - MODIFIER_AIR_ORG_FACTOR:0 "Air Organization" - MODIFIER_TRAINING_TIME_AIR:0 "Air training time" - MODIFIER_AIR_TRAINING_XP_FACTOR:1 "Air Wing Training Experience Gain" - MODIFIER_AIR_MISSION_XP_FACTOR:1 "Air Wing Mission Experience Gain" - MODIFIER_ARMY_MORALE:0 "Division Recovery Rate" - MODIFIER_ARMY_MORALE_FACTOR:0 "Division Recovery Rate" - MODIFIER_AIR_MORALE:1 "Air Recovery Rate" - MODIFIER_AIR_MORALE_FACTOR:1 "Air Recovery Rate" - MODIFIER_NAVAL_MORALE:1 "Ship Recovery Rate" - MODIFIER_NAVAL_MORALE_FACTOR:1 "Ship Recovery Rate" - MODIFIER_STRATEGIC_BOMBER_ATTACK:0 "Bomber attack" - MODIFIER_INTERCEPTION_ATTACK:0 "Interception attack" - MODIFIER_AIR_SUPERIORITY_ATTACK:0 "Air superiority attack" - MODIFIER_CAS_ATTACK:0 "Close air support attack" - MODIFIER_PARADROP_ATTACK:0 "Paradrop attack" - MODIFIER_STRATEGIC_BOMBER_DEFENCE:0 "Bomber defense" - MODIFIER_INTERCEPTION_DEFENCE:0 "Interception defense" - MODIFIER_AIR_SUPERIORITY_DEFENCE:0 "Air superiority defense" - MODIFIER_CAS_DEFENCE:0 "Close air support defense" - MODIFIER_PARADROP_DEFENCE:0 "Paradrop defense" - MODIFIER_STRATEGIC_BOMBER_AGILITY:0 "Bomber agility" - MODIFIER_INTERCEPTION_AGILITY:0 "Interception agility" - MODIFIER_AIR_SUPERIORITY_AGILITY:0 "Air superiority agility" - MODIFIER_CAS_AGILITY:0 "Close air support agility" - MODIFIER_PARADROP_AGILITY:0 "Paradrop agility" - MODIFIER_STRATEGIC_BOMBER_ATTACK_FACTOR:0 "Bomber attack" - MODIFIER_INTERCEPTION_ATTACK_FACTOR:0 "Interception attack" - MODIFIER_AIR_SUPERIORITY_ATTACK_FACTOR:0 "Air superiority attack" - MODIFIER_CAS_ATTACK_FACTOR:0 "Close air support attack" - MODIFIER_PARADROP_ATTACK_FACTOR:0 "Paradrop attack" - MODIFIER_STRATEGIC_BOMBER_DEFENCE_FACTOR:0 "Bomber defense" - MODIFIER_STRATEGIC_BOMBER_DEFENCE_FACTOR_DESC:0 "Increase the defensive value of bombers, allowing them to last longer in anti-air combat." - MODIFIER_INTERCEPTION_DEFENCE_FACTOR:0 "Interception defense" - MODIFIER_AIR_SUPERIORITY_DEFENCE_FACTOR:0 "Air superiority defense" - MODIFIER_CAS_DEFENCE_FACTOR:0 "Close air support defense" - MODIFIER_PARADROP_DEFENCE_FACTOR:0 "Paradrop defense" - MODIFIER_STRATEGIC_BOMBER_AGILITY_FACTOR:0 "Bomber agility" - MODIFIER_INTERCEPTION_AGILITY_FACTOR:0 "Interception agility" - MODIFIER_AIR_SUPERIORITY_AGILITY_FACTOR:0 "Air superiority agility" - MODIFIER_CAS_AGILITY_FACTOR:0 "Close air support agility" - MODIFIER_PARADROP_AGILITY_FACTOR:0 "Paradrop agility" - MODIFIER_DIG_IN_SPEED:0 "Entrenchment speed" - MODIFIER_DIG_IN_SPEED_DESC:0 "How quickly our troops can construct temporary fortifications to prepare defending a location." - MODIFIER_DIG_IN_SPEED_FACTOR:0 "Entrenchment speed" - MODIFIER_DIG_IN_SPEED_FACTOR_DESC:0 "How quickly our troops can construct temporary fortifications to prepare defending a location." - MODIFIER_NAVAL_STRIKE_ATTACK_WEATHER:0 "Weather naval strike attack" - MODIFIER_NAVAL_STRIKE_ATTACK_WEATHER_FACTOR:0 "Weather naval strike attack" - MODIFIER_NAVAL_STRIKE_ATTACK_WEATHER_DESC:0 "Weather effect on naval strike attack." - MODIFIER_NAVAL_STRIKE_ATTACK_WEATHER_FACTOR_DESC:0 "Weather effect on naval strike attack." - MODIFIER_NAVAL_STRIKE_TARGETTING_WEATHER:0 "Weather naval strike targeting" - MODIFIER_NAVAL_STRIKE_TARGETTING_WEATHER_FACTOR:0 "Weather naval strike targeting" - MODIFIER_NAVAL_STRIKE_TARGETTING_WEATHER_DESC:0 "Weather effect on naval strike targeting." - MODIFIER_NAVAL_STRIKE_TARGETTING_WEATHER_FACTOR_DESC:0 "Weather effect on naval strike targeting." - MODIFIER_NAVAL_STRIKE_AGILITY_WEATHER:0 "Weather naval strike agility" - MODIFIER_NAVAL_STRIKE_AGILITY_WEATHER_FACTOR:0 "Weather naval strike agility" - MODIFIER_NAVAL_STRIKE_AGILITY_WEATHER_DESC:0 "Weather effect on naval strike agility." - MODIFIER_NAVAL_STRIKE_AGILITY_WEATHER_FACTOR_DESC:0 "Weather effect on naval strike agility." - MODIFIER_AIR_RANGE_WEATHER:0 "Weather air range" - MODIFIER_AIR_RANGE_WEATHER_FACTOR:0 "Weather air range" - MODIFIER_AIR_RANGE_WEATHER_DESC:0 "Weather effect on air range." - MODIFIER_AIR_RANGE_WEATHER_FACTOR_DESC:0 "Weather effect on air range." - MODIFIER_AIR_STRATEGIC_BOMBER_WEATHER:0 "Weather effect bombing" - MODIFIER_AIR_STRATEGIC_BOMBER_WEATHER_FACTOR:0 "Weather effect bombing" - MODIFIER_AIR_STRATEGIC_BOMBER_WEATHER_DESC:0 "Weather effect on ground bombing." - MODIFIER_AIR_STRATEGIC_BOMBER_WEATHER_FACTOR_DESC:0 "Weather effect on ground bombing." - MODIFIER_AIR_MAX_SPEED_WEATHER:0 "Weather air max speed" - MODIFIER_AIR_MAX_SPEED_WEATHER_FACTOR:0 "Weather air max speed" - MODIFIER_AIR_MAX_SPEED_WEATHER_DESC:0 "Weather effect on air maximum speed." - MODIFIER_AIR_MAX_SPEED_WEATHER_FACTOR_DESC:0 "Weather effect on air maximum speed." - MODIFIER_AIR_DEFENCE_WEATHER:0 "Weather air defense" - MODIFIER_AIR_DEFENCE_WEATHER_FACTOR:0 "Weather air defense" - MODIFIER_AIR_ATTACK_WEATHER:0 "Weather air attack" - MODIFIER_AIR_ATTACK_WEATHER_FACTOR:0 "Weather air attack" - MODIFIER_AIR_AGILITY_WEATHER:0 "Weather air agility" - MODIFIER_AIR_AGILITY_WEATHER_FACTOR:0 "Weather air agility" - MODIFIER_NAVAL_STRIKE_ATTACK_NIGHT:0 "Night naval strike attack" - MODIFIER_NAVAL_STRIKE_ATTACK_NIGHT_FACTOR:0 "Night naval strike attack" - MODIFIER_NAVAL_STRIKE_TARGETTING_NIGHT:0 "Night naval strike targeting" - MODIFIER_NAVAL_STRIKE_TARGETTING_NIGHT_FACTOR:0 "Night naval strike targeting" - MODIFIER_NAVAL_STRIKE_AGILITY_NIGHT:0 "Night naval strike agility during" - MODIFIER_NAVAL_STRIKE_AGILITY_NIGHT_FACTOR:0 "Night naval strike agility" - MODIFIER_AIR_RANGE_NIGHT:0 "Night air range" - MODIFIER_AIR_RANGE_NIGHT_FACTOR:0 "Night air range" - MODIFIER_AIR_RANGE_NIGHT_DESC:0 "Air range during night." - MODIFIER_AIR_RANGE_NIGHT_FACTOR_DESC:0 "Air range during night." - MODIFIER_AIR_STRATEGIC_BOMBER_NIGHT:0 "Night bombing" - MODIFIER_AIR_STRATEGIC_BOMBER_NIGHT_FACTOR:0 "Night bombing" - MODIFIER_AIR_MAX_SPEED_NIGHT:0 "Night air max speed" - MODIFIER_AIR_MAX_SPEED_NIGHT_FACTOR:0 "Night air max speed" - MODIFIER_AIR_MAX_SPEED_NIGHT_DESC:0 "Air maximum speed during night." - MODIFIER_AIR_MAX_SPEED_NIGHT_FACTOR_DESC:0 "Air maximum speed during night." - MODIFIER_AIR_DEFENCE_NIGHT:0 "Night air defense" - MODIFIER_AIR_DEFENCE_NIGHT_FACTOR:0 "Night air defense" - MODIFIER_AIR_DEFENCE_NIGHT_DESC:0 "Air defense during night." - MODIFIER_AIR_DEFENCE_NIGHT_FACTOR_DESC:0 "Air defense during night." - MODIFIER_AIR_ATTACK_NIGHT:0 "Night air attack" - MODIFIER_AIR_ATTACK_NIGHT_FACTOR:0 "Night air attack" - MODIFIER_AIR_ATTACK_NIGHT_DESC:0 "Air attack during night." - MODIFIER_AIR_ATTACK_NIGHT_FACTOR_DESC:0 "Air attack during night." - MODIFIER_AIR_AGILITY_NIGHT:0 "Night Air Agility" - MODIFIER_AIR_AGILITY_NIGHT_FACTOR:0 "Night Air Agility" - MODIFIER_AIR_AGILITY_NIGHT_DESC:0 "Air Agility during night." - MODIFIER_AIR_AGILITY_NIGHT_FACTOR_DESC:0 "Air Agility during night." - MODIFIER_ARMY_BONUS_AIR_SUPERIORITY:1 "Air Superiority" - MODIFIER_ARMY_BONUS_AIR_SUPERIORITY_DESC:1 "Friendly Air Superiority effect on enemy divisions." - MODIFIER_ARMY_BONUS_AIR_SUPERIORITY_FACTOR:1 "Air Superiority" - MODIFIER_ENEMY_ARMY_BONUS_AIR_SUPERIORITY_FACTOR:0 "Enemy Air Support" - MODIFIER_ENEMY_ARMY_BONUS_AIR_SUPERIORITY_FACTOR_DESC:0 "Enemy air superiority effect on our divisions." - MODIFIER_ARMY_BONUS_AIR_SUPERIORITY_FACTOR_DESC:1 "Friendly Air Superiority effect on enemy divisions." - MODIFIER_NAVY_ANTI_AIR_TARGETTING:0 "Naval AA targeting" - MODIFIER_NAVY_ANTI_AIR_TARGETTING_FACTOR:0 "Naval AA targeting" - MODIFIER_NAVY_ANTI_AIR_TARGETTING_DESC:0 "Naval targeting against aircraft." - MODIFIER_NAVY_ANTI_AIR_TARGETTING_FACTOR_DESC:0 "Naval targeting against aircraft." - MODIFIER_NAVY_ANTI_AIR_ATTACK:0 "Naval AA attack" - MODIFIER_NAVY_ANTI_AIR_ATTACK_FACTOR:0 "Naval AA attack" - MODIFIER_NAVY_ANTI_AIR_ATTACK_DESC:0 "Naval attack against aircraft." - MODIFIER_NAVY_ANTI_AIR_ATTACK_FACTOR_DESC:0 "Naval attack against aircraft." - MODIFIER_NAVY_MAX_RANGE:0 "Naval max range" - MODIFIER_NAVY_MAX_RANGE_DESC:0 "Increases the maximum naval range that our fleets can operate from any nearest naval base we have access to." - MODIFIER_NAVY_MAX_RANGE_FACTOR:0 "Naval max range factor" - MODIFIER_NAVY_MAX_RANGE_FACTOR_DESC:0 "Increases the maximum naval range that our fleets can operate from any nearest naval base we have access to." - MODIFIER_OPINION_GAIN_MONTHLY:0 "Improve relations opinion" - MODIFIER_OPINION_GAIN_MONTHLY_FACTOR:0 "Improve relations opinion" - MODIFIER_OPINION_GAIN_MONTHLY_FACTOR_DESC:0 "Increases opinion gain with other nations when using §HImprove relations§!" - MODIFIER_OPINION_GAIN_MONTHLY_SAME_IDEOLOGY:0 "Same ideology monthly opinion" - MODIFIER_OPINION_GAIN_MONTHLY_SAME_IDEOLOGY_FACTOR:0 "Same ideology monthly opinion" - MODIFIER_OPINION_GAIN_MONTHLY_SAME_IDEOLOGY_DESC:0 "Monthly opinion change if same ideology." - MODIFIER_OPINION_GAIN_MONTHLY_SAME_IDEOLOGY_FACTOR_DESC:0 "Monthly opinion change if same ideology." - MODIFIER_LINE_CHANGE_PRODUCTION_EFFICIENCY_FACTOR:1 "Production Efficiency Retention" - MODIFIER_LINE_CHANGE_PRODUCTION_EFFICIENCY_FACTOR_DESC:0 "Change in Production Efficiency loss when changing what a Production Line produces." - MODIFIER_PRODUCTION_SPEED_BUILDINGS_FACTOR:0 "Construction Speed" - MODIFIER_PRODUCTION_SPEED_BUILDINGS_FACTOR_DESC:0 "Modifies the speed of all building constructions." - modifier_production_speed_infrastructure_factor:0 "§YInfrastructure§! construction speed" - modifier_production_speed_infrastructure_factor_desc:0 "Modifies the speed of Infrastructure construction." - modifier_production_speed_arms_factory_factor:0 "§YMilitary Factory§! construction speed" - modifier_production_speed_arms_factory_factor_desc:0 "Modifies the speed of Military Factory construction." - modifier_production_speed_industrial_complex_factor:0 "§YCivilian Factory§! construction speed" - modifier_production_speed_industrial_complex_factor_desc:0 "Modifies the speed of Civilian Factory." - modifier_production_speed_air_base_factor:0 "§YAir Base§! construction speed" - modifier_production_speed_air_base_factor_desc:0 "Modifies the speed of Air base construction." - modifier_production_speed_naval_base_factor:0 "§YNaval base§! construction speed" - modifier_production_speed_naval_base_factor_desc:0 "Modifies the speed of Naval base construction." - modifier_production_speed_bunker_factor:0 "§YLand Fort§! construction speed" - modifier_production_speed_bunker_factor_desc:0 "Modifies the speed of Bunker construction." - modifier_production_speed_coastal_bunker_factor:0 "§YCoastal Fort§! construction speed" - modifier_production_speed_coastal_bunker_factor_desc:0 "Modifies the speed of Coastal bunker construction." - modifier_production_speed_dockyard_factor:0 "§YDockyard§! construction speed" - modifier_production_speed_dockyard_factor_desc:0 "Modifies the speed of Dockyard construction." - modifier_production_speed_anti_air_building_factor:0 "§YAnti Air§! construction speed" - modifier_production_speed_anti_air_building_factor_desc:0 "Modifies the speed of Anti air construction." - modifier_production_speed_synthetic_refinery_factor:0 "§YRefinery§! construction speed" - modifier_production_speed_synthetic_refinery_factor_desc:0 "Modifies the speed of Synthetic construction." - modifier_production_speed_radar_station_factor:0 "§YRadar Station§! construction speed" - modifier_production_speed_radar_station_factor_desc:0 "Modifies the speed of Radar Station construction." - modifier_production_speed_rocket_site_factor:0 "§YRocket Site§! construction speed" - modifier_production_speed_rocket_site_factor_desc:0 "Modifies the speed of Rocket Site construction." - modifier_production_speed_nuclear_reactor_factor:0 "§YNuclear Reactor§! construction speed" - modifier_production_speed_nuclear_reactor_factor_desc:0 "Modifies the speed of Nuclear Reactor construction speed" - modifier_production_speed_fuel_silo_factor:0 "§YFood Silo§! construction speed" - modifier_production_speed_fuel_silo_factor_desc:0 "Modifies the speed of Food Silo construction." - modifier_production_speed_rail_way_factor:0 "§YRailway§! construction speed" - modifier_production_speed_rail_way_factor_desc:0 "Modifies the speed of Railway construction." - modifier_production_speed_supply_node_factor:0 "§YSupply Hub§! construction speed" - modifier_production_speed_supply_node_factor_desc:0 "Modifies the speed of Supply Hub construction." - MODIFIER_PRODUCTION_FACTORY_MAX_EFFICIENCY:0 "£prod_eff_cap Production Efficiency Cap" - MODIFIER_PRODUCTION_FACTORY_MAX_EFFICIENCY_DESC:0 "Production Efficiency Cap that can be reached by mass-producing items in a single Production Line." - MODIFIER_PRODUCTION_FACTORY_START_EFFICIENCY_FACTOR:0 "Production Efficiency Base" - MODIFIER_PRODUCTION_FACTORY_START_EFFICIENCY_FACTOR_DESC:0 "Production Efficiency when starting a new Production Line." - MODIFIER_PRODUCTION_FACTORY_MAX_EFFICIENCY_FACTOR:0 "£prod_eff_cap Production Efficiency Cap" - MODIFIER_PRODUCTION_FACTORY_MAX_EFFICIENCY_FACTOR_DESC:0 "£prod_eff_cap Production Efficiency Cap determines the maximum value for your £prod_eff Production Efficiency. It can be increased by £tech_mod Technologies." - MODIFIER_PRODUCTION_FACTORY_EFFICIENCY_GAIN_FACTOR:0 "£prod_eff Production Efficiency growth" - MODIFIER_PRODUCTION_FACTORY_EFFICIENCY_GAIN_FACTOR_DESC:0 "Modifies how much Efficiency is gained by mass-producing items in the same Production line." - MODIFIER_AMPHIBIOUS_INVASION:0 "Amphibious Invasion Speed" - MODIFIER_AMPHIBIOUS_INVASION_DESC:0 "How fast units move ashore when doing amphibious invasion." - MODIFIER_PARTISAN_EFFECT_FACTOR:0 "Effect of our partisans" - MODIFIER_PARTISAN_EFFECT_FACTOR_DESC:0 "How efficiently our partisans organize against enemies that have occupied our territories." - MODIFIER_ENEMY_PARTISAN_EFFECT_FACTOR:0 "Effect of partisans on us" - MODIFIER_ENEMY_PARTISAN_EFFECT_FACTOR_DESC:0 "How efficiently enemy partisans organize in territories we occupy" - MODIFIERS_ARMY_ATTACK_FACTOR:0 "Division Attack" - MODIFIERS_ARMY_DEFENCE_FACTOR:0 "Division Defense" - MODIFIERS_ARMY_CORE_ATTACK_FACTOR:0 "Division Attack on core territory" - MODIFIERS_ARMY_CORE_DEFENCE_FACTOR:0 "Division Defense on core territory" - MODIFIERS_ARMY_INFANTRY_ATTACK_FACTOR:0 "Infantry Attack" - MODIFIERS_ARMY_INFANTRY_DEFENCE_FACTOR:0 "Infantry Defense" - MODIFIERS_ARMY_ARMOR_ATTACK_FACTOR:0 "Armor Attack" - MODIFIERS_ARMY_ARMOR_DEFENCE_FACTOR:0 "Armor Defense" - MODIFIERS_ARMY_ARTILLERY_ATTACK_FACTOR:0 "Artillery Attack" - MODIFIERS_ARMY_ARTILLERY_DEFENCE_FACTOR:0 "Artillery Defense" - MODIFIER_SPECIAL_FORCES_ATTACK_FACTOR:0 "Special forces Attack" - MODIFIER_SPECIAL_FORCES_DEFENCE_FACTOR:0 "Special forces Defense" - MODIFIER_MOTORIZED_ATTACK_FACTOR:0 "Motorized Attack" - MODIFIER_MOTORIZED_DEFENCE_FACTOR:0 "Motorized Defense" - MODIFIER_MECHANIZED_ATTACK_FACTOR:0 "Mechanized Attack" - MODIFIER_MECHANIZED_DEFENCE_FACTOR:0 "Mechanized Defense" - MODIFIER_CAVALRY_ATTACK_FACTOR:0 "Cavalry Attack" - MODIFIER_CAVALRY_DEFENCE_FACTOR:0 "Cavalry Defense" - CARRIER_SORTIE_EFFICIENCY_FACTOR:0 "Sortie efficiency" - CARRIER_SORTIE_EFFICIENCY_FACTOR_DESC:0 "The value describes additional percents to the speed of refueling and rearming planes on the carrier during the battle." - MODIFIER_CARRIER_FIGHTER_SORTIE_EFFICIENCY_FACTOR:0 "Fighters sortie efficiency" - MODIFIER_CARRIER_FIGHTER_SORTIE_EFFICIENCY_FACTOR_DESC:0 "The additional percents to the speed when refueling and rearming fighter planes on the carrier during the battle." - MODIFIER_NAVY_SUBMARINE_ATTACK_FACTOR:0 "Submarine Attack" - MODIFIER_NAVY_SUBMARINE_ATTACK_FACTOR_DESC:0 "Modifies the attack value of Submarines" - MODIFIER_NAVY_SUBMARINE_DEFENCE_FACTOR:0 "Submarine Defense" - MODIFIER_NAVY_SUBMARINE_DEFENCE_FACTOR_DESC:0 "Modifies the defense value of Submarines" - MODIFIER_NAVY_CAPITAL_SHIP_ATTACK_FACTOR:0 "Capital Ship Attack" - MODIFIER_NAVY_CAPITAL_SHIP_ATTACK_FACTOR_DESC:0 "Modifies the attack value of all Capital Ships" - MODIFIER_NAVY_CAPITAL_SHIP_DEFENCE_FACTOR:0 "Capital Ship Armor" - MODIFIER_NAVY_CAPITAL_SHIP_DEFENCE_FACTOR_DESC:0 "Modifies the armor value of all Capital Ships" - MODIFIER_NAVY_SCREEN_ATTACK_FACTOR:0 "Screen Attack" - MODIFIER_NAVY_SCREEN_DEFENCE_FACTOR:0 "Screen Defense" - MODIFIER_NAVAL_CARRIER_AIR_ATTACK_FACTOR:0 "Naval Air Attacks from Carriers" - MODIFIER_NAVAL_CARRIER_AIR_TARGETTING_FACTOR:0 "Naval Air Targeting from Carriers" - MODIFIER_NAVAL_CARRIER_AIR_AGILITY_FACTOR:0 "Naval Air Agility from Carriers" - MODIFIER_NAVAL_CARRIER_AIR_AGILITY_FACTOR_DESC:0 "Modifies the agility of planes executing naval strike missions from carriers" - MODIFIER_CONVOY_RAIDING_EFFICIENCY_FACTOR:0 "Convoy Raiding Efficiency" - MODIFIER_CONVOY_RAIDING_EFFICIENCY_FACTOR_DESC:0 "How efficiently our ships can intercept and attack enemy convoys." - MODIFIER_AIR_INTERCEPTION_DETECT_FACTOR:0 "Interception Detection" - MODIFIER_AIR_INTERCEPTION_DETECT_FACTOR_DESC:0 "The chance of detecting enemy plane while on interception mission." - MODIFIER_AIR_SUPERIORITY_DETECT_FACTOR:0 "Fighter Detection" - MODIFIER_AIR_SUPERIORITY_DETECT_FACTOR_DESC:0 "The chance of detecting enemy planes while on air superiority mission." - MODIFIER_STRAT_BOMBING_VISIBILITY:0 "Strategic bombing visibility" - MODIFIER_STRAT_BOMBING_VISIBILITY_DESC:0 "The chance of being detected by the enemy, when on strategic bombing missions." - MODIFIER_ARMY_INFANTRY_ATTACK_FACTOR:0 "Infantry Division Attack" - MODIFIER_ARMY_INFANTRY_DEFENCE_FACTOR:0 "Infantry Division Defense" - MODIFIER_ARMY_ARMOR_ATTACK_FACTOR:0 "Armor Division Attack" - MODIFIER_ARMY_ARMOR_DEFENCE_FACTOR:0 "Armor Division Defense" - MODIFIER_ARMY_ARTILLERY_ATTACK_FACTOR:0 "Artillery Attack" - MODIFIER_ARMY_ARTILLERY_DEFENCE_FACTOR:0 "Artillery Defense" - MODIFIERS_SUBMARINE_DETECTION_FACTOR:0 "Submarine Detection" - revolutionary_drift:0 "Daily Revolutionary Support" - cooperative_drift:0 "Daily Cooperative Support" - belligerent_drift:0 "Daily Belligerent Support" - unaligned_drift:0 "Daily Support for Unaligned" - revolutionary_acceptance:0 "Acceptance of Communist Diplomacy" - cooperative_acceptance:0 "Acceptance of Democratic Diplomacy" - belligerent_acceptance:0 "Acceptance of Fascist Diplomacy" - unaligned_acceptance:0 "Acceptance of Unaligned Diplomacy" - MODIFIER_RESEARCH_SPEED_FACTOR:2 "Research Speed" - MODIFIER_RESEARCH_SPEED_FACTOR_DESC:1 "Decreases the time it takes to research a new technology." - MODIFIER_ROCKET_ATTACK_FACTOR:0 "Rocket Damage" - MODIFIER_ENCRYPTION:0 "Encryption" - MODIFIER_ENCRYPTION_DESC:0 "Encryption will hide information about units on the map and focus tree progression from other countries. A higher value than the enemy's decryption will negate enemy decryption combat bonus" - MODIFIER_ENCRYPTION_FACTOR:0 "Encryption" - MODIFIER_DECRYPTION:0 "Decryption" - MODIFIER_DECRYPTION_DESC:0 "Decryption will show information about units on the map and focus tree progression from other countries. A higher value than the enemy's encryption will give a decryption combat bonus" - MODIFIER_DECRYPTION_FACTOR:0 "Decryption" - MODIFIER_INDUSTRIAL_CAPACITY_FACTOR:0 "Factory Output" - MODIFIER_INDUSTRIAL_CAPACITY_FACTOR_DESC:0 "This effectively increases the amount of work each factory can do per hour." - MODIFIER_INDUSTRIAL_CAPACITY_DOCKYARD_FACTOR:0 "Dockyard Output" - MODIFIER_INDUSTRIAL_CAPACITY_DOCKYARD_FACTOR_DESC:0 "This effectively increases the amount of work each dockyard can do per hour." - MODIFIER_INDUSTRY_AIR_DAMAGE_FACTOR:0 "Factory Bomb Vulnerability" - MODIFIER_INDUSTRY_AIR_DAMAGE_FACTOR_DESC:0 "Having our factories dispersed makes us take less damage from enemy bombing." - MODIFIER_TECH_AIR_DAMAGE_FACTOR:0 "Anti-Air Bombing Damage Reduction" - MODIFIER_TECH_AIR_DAMAGE_FACTOR_DESC:0 "Having a technological advantage increases the efficiency of our static anti-air defenses." - MODIFIER_INDUSTRY_REPAIR_FACTOR:0 "Factory Repair Speed" - MODIFIER_INDUSTRY_REPAIR_FACTOR_DESC:1 "Modifies §HCivilian Factory§! output for all repairs." - MODIFIER_PRODUCTION_OIL_FACTOR:0 "Farming Techniques" - MODIFIER_MAX_TRAINING_XP_FACTOR:0 "Max training" - MODIFIER_MIN_EXPORT_FACTOR:0 "Resources to Market" - MODIFIER_CONSCRIPTION_FACTOR:0 "Recruitable Population" - MODIFIER_CONSCRIPTION_FACTOR_DESC:0 "Modifies how much your manpower you can access from states." - MODIFIER_CONSCRIPTION_TOTAL_FACTOR:0 "Recruitable Population Factor" - MODIFIER_CONSCRIPTION_TOTAL_FACTOR_DESC:0 "Modifies how much your manpower you can access from states." - MODIFIER_TRADE_OPINION_FACTOR:0 "Trade deal opinion factor" - MODIFIER_TRADE_OPINION_FACTOR_DESC:0 "Factor of opinion value in trade deals" - MODIFIER_FACTION_TRADE_OPINION_FACTOR:0 "Faction trade deal opinion factor" - MODIFIER_FACTION_TRADE_OPINION_FACTOR_DESC:0 "Factor of opinion value in trade deals between members of the same faction." - MODIFIER_GROUND_ATTACK:0 "Ground attack" - MODIFIER_GROUND_ATTACK_FACTOR:0 "Ground attack factor" - MODIFIER_AIR_TAC_GROUND_ATTACK:0 "TAC attack" - MODIFIER_AIR_TAC_GROUND_ATTACK_DESC:0 "Bonus to tactical bomber attacks on ground troops." - MODIFIER_AIR_TAC_GROUND_ATTACK_FACTOR:0 "TAC attack" - MODIFIER_AIR_TAC_GROUND_ATTACK_FACTOR_DESC:0 "Bonus to tactical bomber attacks on ground troops." - MODIFIER_AIR_CAS_GROUND_ATTACK:0 "CAS attack" - MODIFIER_AIR_CAS_GROUND_ATTACK_DESC:0 "Bonus to close air support attacks on ground troops." - MODIFIER_AIR_CAS_GROUND_ATTACK_FACTOR:0 "CAS attack" - MODIFIER_AIR_CAS_GROUND_ATTACK_FACTOR_DESC:0 "Bonus to close air support attacks on ground troops." - MODIFIER_AIR_CAS_PRESENT_FACTOR:0 "Ground support" - MODIFIER_AIR_CAS_PRESENT_FACTOR_DESC:0 "Having well-coordinated planes helping out in combat lets your troops fight better." - MODIFIER_AIR_TAC_STRATEGIC_BOMBING_FACTOR:0 "TAC Bombing" - MODIFIER_AIR_TAC_STRATEGIC_BOMBING_FACTOR_DESC:0 "Bonus to Tactical bombers performing regular strategic bombing." - MODIFIER_TRAINING_TIME_FACTOR:0 "Training time" - MODIFIER_TRAINING_TIME_FACTOR_DESC:0 "Changes the time it takes to train troops." - MODIFIER_PUPPET_COST_FACTOR:0 "Puppet cost" - MODIFIER_PUPPET_COST_FACTOR_DESC:0 "Changes the cost of puppeting a country." - MODIFIER_EXPERIENCE_LOSS_FACTOR:0 "Experienced soldier losses" - MODIFIER_EXPERIENCE_LOSS_FACTOR_DESC:0 "How many extra losses are taken from experienced soldiers compared to fresh recruits." - MODIFIER_GENERATE_WARGOAL_TENSION_LIMIT:0 "Generate war goal tension limit" - MODIFIER_GENERATE_WARGOAL_TENSION_LIMIT_AGAINST_COUNTRY:0 "Generate war goal tension limit against country" - MODIFIER_JOIN_FACTION_TENSION_LIMIT:0 "Join faction tension limit" - MODIFIER_LEND_LEASE_TENSION_LIMIT:0 "Lend-lease tension limit" - MODIFIER_REQUEST_LEASE_TENSION_LIMIT:1 "Lend-lease request tension limit" - MODIFIER_SEND_VOLUNTEERS_TENSION_LIMIT:0 "Send volunteers tension limit" - MODIFIER_GUARANTEE_TENSION_LIMIT:0 "Guarantee tension limit" - MODIFIER_SEND_VOLUNTEER_SIZE:0 "Max volunteer force divisions" - MODIFIER_SEND_VOLUNTEER_FACTOR:0 "Max volunteer force divisions" - MODIFIER_SEND_VOLUNTEER_DIVISIONS_REQUIRED:0 "Divisions required for sending volunteer force" - MODIFIER_AIR_VOLUNTEER_CAP:0 "Air volunteer cap" - MODIFIER_ENEMY_DECLARE_WAR_TENSION:0 "Declare war tension on us" - MODIFIER_ENEMY_JUSTIFY_WAR_GOAL_TIME:0 "Justify war goal time on us" - MODIFIER_JUSTIFY_WAR_GOAL_TIME:0 "Justify war goal time" - MODIFIER_JUSTIFY_WAR_GOAL_WHEN_IN_MAJOR_WAR_TIME:0 "Justify war goal time when at war with a major" - MODIFIER_NAVAL_TORPEDO_RANGE_FACTOR:0 "Torpedo range" - MODIFIER_SUBVERSIVE_ACTIVITES_UPKEEP:0 "Subversive activities cost" - MODIFIER_FOREIGN_SUBVERSIVE_ACTIVITIES:0 "Foreign subversive activities efficiency" - MODIFIER_LAND_REINFORCE_RATE:0 "Reinforce Rate" - MODIFIER_LAND_REINFORCE_RATE_DESC:0 "Chance per hour that units in reserve are able to actively join the fight." - MODIFIER_DRIFT_DEFENCE_FACTOR:0 "Ideology drift defense" - MODIFIER_DRIFT_DEFENCE_FACTOR_DESC:0 "Reduces the effect of foreign powers trying to meddle with politics." - MODIFIER_NAVAL_COORDINATION:0 "Fleet Coordination" - MODIFIER_NAVAL_COORDINATION_DESC:0 "How quickly the fleet can gather or disperse when a target is found or when switching missions." - MODIFIER_PLANNING_SPEED:0 "Planning Speed" - MODIFIER_PLANNING_SPEED_DESC:0 "Increases the rate at which a division's planning bonus is accumulated." - MODIFIER_MAX_PLANNING:0 "Max planning" - MODIFIER_MAX_PLANNING_FACTOR:0 "Max planning factor" - MODIFIER_MAX_PLANNING_DESC:0 "The biggest our planning advantage can get no matter how long we prepare." - MODIFIER_PARTISANS_EFFECT:0 "Partisans Effect" - MODIFIER_PARTISANS_EFFECT_DESC:0 "Controls how effective partisans are." - MODIFIER_LAND_LEADER_COMMAND:0 "Land Leader Command" - MODIFIER_LAND_LEADER_COMMAND_DESC:0 "Commanders can now lead more divisions." - MODIFIER_NAVAL_LEADER_COMMAND:0 "Naval Command" - MODIFIER_NAVAL_LEADER_COMMAND_DESC:0 "Naval Commanders can now lead more ships." - MODIFIER_MAX_DIG_IN:0 "Max Entrenchment" - MODIFIER_MAX_DIG_IN_FACTOR:0 "Max Entrenchment" - MODIFIER_MAX_DIG_IN_DESC:0 "How advanced temporary fortifications our troops can make. The higher the level the more days the troops can keep improving their defenses." - MODIFIER_LAND_NIGHT_ATTACK:0 "Land Night Attack" - MODIFIER_LAND_NIGHT_ATTACK_DESC:0 "How much we can offset penalties at night." - MODIFIER_POCKET_PENALTY:0 "Encirclement penalty" - MODIFIER_POCKET_PENALTY_DESC:0 "Ability to still function even though surrounded." - MODIFIER_NO_SUPPLY_GRACE:0 "Supply Grace" - MODIFIER_NO_SUPPLY_GRACE_DESC:0 "Extra hours that our troops can last without supplies." - MODIFIER_UNDER_AIR_SUPERIORITY_BONUS:0 "Air superiority bonus" - MODIFIER_UNDER_AIR_SUPERIORITY_BONUS_DESC:0 "Ground forces that do not need to worry about the sky fight better." - MODIFIER_STAT_CARRIER_SORTIE_EFFICIENCY:0 "Sortie efficiency" - MODIFIER_STAT_CARRIER_SORTIE_EFFICIENCY_DESC:0 "How efficiently the carrier personnel can manage its planes. The higher the more of its carried planes can go on each sortie." - MODIFIER_PORT_STRIKE_ATTACK_FACTOR:0 "Port strikes" - MODIFIER_PORT_STRIKE_ATTACK_FACTOR_DESC:0 "Improved damage when performing strikes against fleets in port." - MODIFIER_CARRIER_CAPACITY_PENALTY_REDUCTION:0 "Carrier overcrowding" - MODIFIER_CARRIER_CAPACITY_PENALTY_REDUCTION_DESC:0 "Reduces the penalty for overcrowding your carriers with planes. With this you can get more planes in the air even when over capacity." - MODIFIER_MISSION_CONVOY_ESCORT_EFFICIENCY:0 "Escort efficiency" - MODIFIER_MISSION_CONVOY_ESCORT_EFFICIENCY_DESC:0 "How quickly Escorts can defend a Convoy under attack." - MODIFIER_AIR_FIGHTER_ACE_CHANCE:0 "Fighter ace chance" - MODIFIER_AIR_FIGHTER_ACE_CHANCE_DESC:0 "Chance of gaining a fighter ace in battle." - MODIFIER_AIR_CAS_ACE_CHANCE:0 "CAS ace chance" - MODIFIER_AIR_CAS_ACE_CHANCE_DESC:0 "Chance of gaining a ground attack ace in battle." - MODIFIER_AIR_BOMBER_ACE_CHANCE:0 "Bomber ace chance" - MODIFIER_AIR_BOMBER_ACE_CHANCE_DESC:0 "Chance of gaining a bomber ace in battle." - MODIFIER_RECON_FACTOR:0 "Reconnaissance" - MODIFIER_COMBAT_WIDTH_FACTOR:0 "Own Combat Width" - MODIFIER_AI_CALL_ALLY_DESIRE_FACTOR:0 "AI Modifier: Call Ally Desire" - MODIFIER_AI_CALL_ALLY_DESIRE_FACTOR_DESC:0 "How interested or reluctant the country is to call allies into war with the current leadership." - MODIFIER_AI_JOIN_ALLY_DESIRE_FACTOR:0 "AI Modifier: Join Ally Desire" - MODIFIER_AI_JOIN_ALLY_DESIRE_FACTOR_DESC:0 "How interested or reluctant the country is to join allies in their wars." - MODIFIER_AI_GET_ALLY_DESIRE_FACTOR:0 "AI Modifier: Desire to be in or expand a faction" - MODIFIER_AI_GET_ALLY_DESIRE_FACTOR_DESC:0 "How much the country wants to be in a strong faction, whether by joining one or by inviting others." - MODIFIER_AI_FOCUS_DEFENSE_FACTOR:0 "AI Modifier: Focus on Defense" - MODIFIER_AI_FOCUS_DEFENSE_FACTOR_DESC:0 "How much the country focuses on defensive technologies and strategies." - MODIFIER_AI_FOCUS_AGGRESSIVE_FACTOR:0 "AI Modifier: Focus on Offense" - MODIFIER_AI_FOCUS_AGGRESSIVE_FACTOR_DESC:0 "How much the country focuses on aggressive technologies and strategies." - MODIFIER_AI_FOCUS_WAR_PRODUCTION_FACTOR:0 "AI Modifier: Focus on War Production" - MODIFIER_AI_FOCUS_WAR_PRODUCTION_FACTOR_DESC:0 "How much the country focuses on wartime production." - MODIFIER_AI_FOCUS_MILITARY_ADVANCEMENTS_FACTOR:0 "AI Modifier: Focus on Military Advancements" - MODIFIER_AI_FOCUS_MILITARY_ADVANCEMENTS_FACTOR_DESC:0 "How much the country focuses on researching advanced military technologies." - MODIFIER_AI_FOCUS_MILITARY_EQUIPMENT_FACTOR:0 "AI Modifier: Focus on Military Equipment" - MODIFIER_AI_FOCUS_MILITARY_EQUIPMENT_FACTOR_DESC:0 "How much the country focuses on researching basic military equipment." - MODIFIER_AI_DESIRED_DIVISIONS_FACTOR:1 "AI Modifier: Desired Divisions Factor" - MODIFIER_AI_FOCUS_PEACEFUL_FACTOR:0 "AI Modifier: Focus on Peace" - MODIFIER_AI_FOCUS_PEACEFUL_FACTOR_DESC:0 "How much the country on peaceful research and policies." - MODIFIER_AI_FOCUS_NAVAL_FACTOR:0 "AI Modifier: Focus on Navy" - MODIFIER_AI_FOCUS_NAVAL_FACTOR_DESC:0 "How much the country focuses on developing its navy." - MODIFIER_AI_FOCUS_NAVAL_AIR_FACTOR:0 "AI Modifier: Focus on Naval Air" - MODIFIER_AI_FOCUS_NAVAL_AIR_FACTOR_DESC:0 "How much the country focuses on developing carriers, carrier planes and naval bombers." - MODIFIER_AI_FOCUS_AVIATION_FACTOR:0 "AI Modifier: Focus on Aviation" - MODIFIER_AI_FOCUS_AVIATION_FACTOR_DESC:0 "How much the country focuses on researching and building up its air force." - MODIFIER_NAVAL_INVASION_PREPARATION:0 "Invasion Preparation Time" - MODIFIER_NAVAL_INVASION_PREPARATION_DESC:0 "How quickly we can prepare a naval invasion." - MODIFIER_TRANSPORT_CAPACITY:0 "Troop convoy requirements" - MODIFIER_TRANSPORT_CAPACITY_DESC:0 "How much room units will require on transports. The lower the more efficiently we can move large armies over seas." - MODIFIER_NOT_SUPPORTED:0 "This modifier is §RNot Supported§! for this entry." - MODIFIER_SLOTS_FROM_POPULATION_FACTOR:0 "Building Slots from Population" - MODIFIER_SLOTS_FROM_POPULATION_FACTOR_DESC:0 "How much the Population influences the Population Building Slot limit" - MODIFIER_SLOTS_FROM_INFRASTRUCTURE_FACTOR:0 "Building Slots from Infrastructure" - MODIFIER_SLOTS_FROM_INFRASTRUCTURE_FACTOR_DESC:0 "How much the Infrastructure influences the Infrastructure Building Slot limit" - MODIFIER_ADDITIONAL_SLOTS_CAP:0 "Building Slots from Technology" - MODIFIER_ADDITIONAL_SLOTS_CAP_DESC:0 "Maximum number of Building Slots in a State" - MODIFIER_CONVERSION_COST_MIL_TO_CIV_FACTOR:0 "Military to Civilian Factory conversion cost" - MODIFIER_CONVERSION_COST_MIL_TO_CIV_FACTOR_DESC:0 "How efficiently can Military Factories be converted to Civilian Factories" - MODIFIER_CONVERSION_COST_CIV_TO_MIL_FACTOR:0 "Civilian to Military Factory conversion cost" - MODIFIER_CONVERSION_COST_CIV_TO_MIL_FACTOR_DESC:0 "How efficiently can Civilian Factories be converted to Military Factories" - MODIFIER_PRODUCTION_LACK_OF_RESOURCE_PENALTY_FACTOR:0 "Lack of Resources Penalty" - MODIFIER_PRODUCTION_LACK_OF_RESOURCE_PENALTY_FACTOR_DESC:0 "Reduces the penalties to production line output from a lack of resources." - MODIFIER_AIR_STRAT_BOMBER_NIGHT_PENALTY:0 "Night-time strategic bombing penalty" - MODIFIER_AIR_STRAT_BOMBER_NIGHT_PENALTY_DESC:0 "Reduces the penalty to bombing during the night for Strategic Bombing" - MODIFIER_AIR_NIGHT_PENALTY:0 "Night Operations Penalty" - MODIFIER_AIR_NIGHT_PENALTY_DESC:0 "Reduces the penalty to air operation during the night" - MODIFIER_AIR_WEATHER_PENALTY:0 "Bad Weather Penalty" - MODIFIER_AIR_WEATHER_PENALTY_DESC:0 "Reduces the penalty to air operation during bad weather" - MODIFIER_AIR_SUPERIORITY_EFFICIENCY:0 "Air Superiority Mission Efficiency" - MODIFIER_AIR_SUPERIORITY_EFFICIENCY_DESC:0 "Improved tactics for planes on air superiority resulting in increased ability in dogfights." - MODIFIER_AIR_ESCORT_EFFICIENCY:0 "Escort Efficiency" - MODIFIER_AIR_ESCORT_EFFICIENCY_DESC:0 "Improved tactics for planes on air superiority resulting in increased ability in dogfights." - MODIFIER_AIR_INTERCEPT_EFFICIENCY:0 "Interception Mission Efficiency" - MODIFIER_AIR_INTERCEPT_EFFICIENCY_DESC:0 "Improved tactics for planes when doing interception resulting in increased ability in dogfights." - MODIFIER_AIR_CAS_EFFICIENCY:0 "Air Support Mission Efficiency" - MODIFIER_AIR_CAS_EFFICIENCY_DESC:0 "Improved tactics for planes doing close air support resulting in increased abilities in dogfights." - MODIFIER_AIR_NAV_EFFICIENCY:0 "Naval Mission Efficiency" - MODIFIER_AIR_NAV_EFFICIENCY_DESC:0 "Improved tactics for planes doing naval bombing or port strikes resulting in increased abilities." - MODIFIER_ANNEX_COST_FACTOR:0 "Annex cost" - MODIFIER_ANNEX_COST_FACTOR_DESC:0 "Changes the cost of annexing a country." - MODIFIER_TAKE_STATES_COST_FACTOR:0 "Take states cost" - MODIFIER_TAKE_STATES_COST_FACTOR_DESC:0 "Changes the cost of taking states from a country." - MODIFIER_AI_BADASS_FACTOR:0 "AI Modifier: Threat receptivity" - MODIFIER_AIR_MISSION_EFFICIENCY:0 "Air Mission Efficiency" - MODIFIER_AIR_MISSION_EFFICIENCY_DESC:0 "With higher efficiency more aircraft are able to lift of and successfully join missions" - MODIFIER_NAVAL_INVASION_DEFENSE:0 "Invasion Defense" - MODIFIER_NAVAL_INVASION_DEFENSE_DESC:0 "Reduces the naval invasion penalties so you can fight more efficiently." - MODIFIER_NAVAL_INVASION_PENALTY:0 "Invasion Penalty" - MODIFIER_NAVAL_INVASION_PENALTY_DESC:0 "Increases the naval invasion penalties, reducing the combat efficiency." - MODIFIER_OCCUPATION_COST:0 "Occupation Cost" - MODIFIER_OCCUPATION_COST_DESC:0 "Increases the cost of keeping another nation under occupation." - MODIFIER_MINIMUM_TRAINING_LEVEL:0 "Minimum training level" - MODIFIER_MINIMUM_TRAINING_LEVEL_DESC:0 "Reduces the minimum training needed for unit to be deployed" - MODIFIER_AUTONOMY_MANPOWER_SHARE:0 "Subject manpower requirement" - MODIFIER_AUTONOMY_MANPOWER_SHARE_DESC:0 "Amount of manpower required by subject forces" - MODIFIER_TRADE_TO_OVERLORD_FACTOR:0 "Extra trade to overlord" - MODIFIER_TRADE_TO_OVERLORD_FACTOR_DESC:0 "Extra produced recourses available for trade to overlord" - MODIFIER_TRADE_COST_FACTOR:1 "Overlord trade cost" - MODIFIER_TRADE_COST_FACTOR_DESC:0 "Resources per factory in trade from subject to overlord" - MODIFIER_CIC_TO_OVERLORD_FACTOR:0 "Civilian industry to overlord" - MODIFIER_CIC_TO_OVERLORD_FACTOR_DESC:0 "How many §Ycivilian§! factories are controlled by subjects overlord" - MODIFIER_MIC_TO_OVERLORD_FACTOR:0 "Military industry to overlord" - MODIFIER_MIC_TO_OVERLORD_FACTOR_DESC:0 "How many §Ymilitary§! factories are controlled by subjects overlord" - MODIFIER_AUTONOMY_GAIN_TRADE:0 "Freedom gain by trade" - MODIFIER_AUTONOMY_GAIN_TRADE_DESC:0 "Effect on freedom gained from trade" - MODIFIER_AUTONOMY_GAIN_TRADE_FACTOR:0 "Freedom gain by trade" - MODIFIER_AUTONOMY_GAIN_TRADE_FACTOR_DESC:0 "Effect on freedom gained from trade" - MODIFIER_AUTONOMY_GAIN_LL_TO_OVERLORD:0 "Freedom gain by lend lease to overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_OVERLORD_DESC:0 "Effect on freedom gained or lossed by subject from lend lease to overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_SUBJECT:0 "Freedom gain by subject from lend lease from overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_SUBJECT_DESC:0 "Effect on freedom gained or lossed by subject from lend lease fromt overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_OVERLORD_FACTOR:0 "Freedom gain by lend lease to overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_OVERLORD_FACTOR_DESC:0 "Effect on freedom gained or lossed by subject from lend lease to overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_SUBJECT_FACTOR:0 "Freedom gain by subject from lend lease from overlord" - MODIFIER_AUTONOMY_GAIN_LL_TO_SUBJECT_FACTOR_DESC:0 "Effect on freedom gained or lossed by subject from lend lease fromt overlord" - MODIFIER_AUTONOMY_GAIN_WARSCORE:0 "Freedom gain by war score" - MODIFIER_AUTONOMY_GAIN_WARSCORE_DESC:0 "Effect on freedom gained from war participation" - MODIFIER_AUTONOMY_GAIN_WARSCORE_FACTOR:0 "Freedom gain by war score" - MODIFIER_AUTONOMY_GAIN_WARSCORE_FACTOR_DESC:0 "Effect on freedom gained from war participation" - MODIFIER_RESEARCH_SHARING_PER_COUNTRY_BONUS:0 "Technology sharing bonus" - MODIFIER_RESEARCH_SHARING_PER_COUNTRY_BONUS_FACTOR:0 "Technology sharing bonus" - MODIFIER_CAN_MASTER_BUILD_FOR_US:0 "Master can build constructions on the subject's territory" - MODIFIER_AUTONOMY_SUBJECT_GAIN:0 "Master impact" - MODIFIER_CIVIL_WAR_INVOLVEMENT_TENSION:0 "Civil war involvement tension" - MASTER_BUILDS_FREEDOM_EFFECT:0 "Autonomy effect from master building" - MASTER_BUILDS_FREEDOM_EFFECT_DESC:0 "Investments in the economy of a subject nation set back the progress made towards independence." - MODIFIER_ARMY_LEADER_COST_FACTOR:0 "Army Leader Cost" - MODIFIER_ARMY_LEADER_COST_FACTOR_DESC:0 "Modifies the cost of army leaders" - MODIFIER_NAVY_LEADER_COST_FACTOR:0 "Navy Leader Cost" - MODIFIER_NAVY_LEADER_COST_FACTOR_DESC:0 "Modifies the cost of navy leaders" - MODIFIER_MILITARY_LEADER_COST_FACTOR:0 "Military Leader Cost" - MODIFIER_MILITARY_LEADER_COST_FACTOR_DESC:0 "Modifies the cost of military leaders" - MODIFIER_AUTONOMY_GAIN:0 "Daily autonomy progress gain" - MODIFIER_ARMY_LEADER_START_LEVEL:1 "Starting level of new army leaders" - MODIFIER_ARMY_LEADER_START_ATTACK_LEVEL:0 "Starting Attack skill level of new army leaders" - MODIFIER_ARMY_LEADER_START_DEFENSE_LEVEL:0 "Starting Defense skill level of new army leaders" - MODIFIER_ARMY_LEADER_START_LOGISTICS_LEVEL:0 "Starting Logistics skill level of new army leaders" - MODIFIER_ARMY_LEADER_START_PLANNING_LEVEL:0 "Starting Planning skill level of new army leaders" - MODIFIER_NAVY_LEADER_START_LEVEL:0 "Starting level of new navy leaders" - MODIFIER_NAVY_LEADER_START_ATTACK_LEVEL:0 "Starting Attack skill level of new navy leaders" - MODIFIER_NAVY_LEADER_START_DEFENSE_LEVEL:0 "Starting Defense skill level of new navy leaders" - MODIFIER_NAVY_LEADER_START_MANEUVERING_LEVEL:0 "Starting Maneuvering skill level of new navy leaders" - MODIFIER_NAVY_LEADER_START_COORDINATION_LEVEL:0 "Starting Coordination skill level of new navy leaders" - MODIFIER_NAVAL_NIGHT_ATTACK:0 "Night-time Attack" - MODIFIER_NAVAL_NIGHT_ATTACK_DESC:0 "Modifies the attack of all ships during night-time engagements" - MODIFIER_NIGHT_SPOTTING_CHANCE:0 "Night-time Spotting" - MODIFIER_NIGHT_SPOTTING_CHANCE_MODIFIER:0 "Night-time Spotting Modifier: " - MODIFIER_NIGHT_SPOTTING_CHANCE_DESC:0 "Modifies the spotting chance of enemy vessels during night-time" - MODIFIER_NAVAL_RETREAT_CHANCE_AFTER_INITIAL_COMBAT:0 "Retreat chance after initial stage: " - MODIFIER_NAVAL_RETREAT_CHANCE_AFTER_INITIAL_COMBAT_DESC:1 "Alter the chances of the enemy leaving the combat when it decides to, if at least $HOURS$§Yh§! of combat have passed." - MODIFIER_NAVAL_RETREAT_SPEED_AFTER_INITIAL_COMBAT:0 "Retreat Speed after initial stage: " - MODIFIER_NAVAL_ENEMY_POSITIONING_IN_INITIAL_ATTACK:0 "Enemy defending positioning in initial attack: " - MODIFIER_INDUSTRY_FREE_REPAIR_FACTOR:0 "Free repair" - MODIFIER_MASTER_BUILD_AUTONOMY_FACTOR:0 "Autonomy from building" - MODIFIER_LOCAL_NON_CORE_MANPOWER:0 "Local Non-core Manpower" - MODIFIER_GLOBAL_NON_CORE_MANPOWER:0 "Non-core Manpower" - MODIFIER_MOBILIZATION_SPEED:0 "Mobilization speed" - MODIFIER_IMPROVE_RELATIONS_MAINTAIN_COST_FACTOR:0 "Improve relations maintain cost" - MODIFIER_LICENSE_PURCHASE_COST:1 "License purchase cost" - MODIFIER_LICENSE_AIR_PURCHASE_COST:0 "Air license purchase cost" - MODIFIER_LICENSE_INFANTRY_PURCHASE_COST:0 "Infantry license purchase cost" - MODIFIER_LICENSE_ARMOR_PURCHASE_COST:0 "Armor license purchase cost" - MODIFIER_LICENSE_NAVAL_PURCHASE_COST:0 "Naval license purchase cost" - MODIFIER_LICENSE_PRODUCTION_SPEED:0 "License production speed" - MODIFIER_LICENSE_TECH_DIFFERENCE_SPEED:1 "License production speed from technology difference" - MODIFIER_LICENSE_INFANTRY_EQ_TECH_DIFFERENCE_SPEED_FACTOR:0 "License production speed from technology difference for Infantry Equipment" - MODIFIER_LICENSE_ARTILLERY_EQ_TECH_DIFFERENCE_SPEED_FACTOR:0 "License production speed from technology difference for Artillery Equipment" - MODIFIER_LICENSE_LIGHT_TANK_EQ_TECH_DIFFERENCE_SPEED_FACTOR:0 "License production speed from technology difference for Light Tank Equipment" - MODIFIER_LICENSE_ANTI_TANK_EQ_TECH_DIFFERENCE_SPEED_FACTOR:0 "License production speed from technology difference for Anti-Tank Equipment" - MODIFIER_LICENSE_INFANTRY_EQ_PRODUCTION_SPEED_FACTOR:0 "License production speed for Infantry Equipment" - MODIFIER_LICENSE_ARTILLERY_EQ_PRODUCTION_SPEED_FACTOR:0 "License production speed for Artillery Equipment" - MODIFIER_LICENSE_LIGHT_TANK_EQ_PRODUCTION_SPEED_FACTOR:0 "License production speed for Light Tank Equipment" - MODIFIER_LICENSE_ANTI_TANK_EQ_PRODUCTION_SPEED_FACTOR:0 "License production speed for Anti-Tank Equipment" - MODIFIER_LICENSE_INFANTRY_EQ_COST_FACTOR:0 "License purchase cost for Infantry Equipment" - MODIFIER_LICENSE_ARTILLERY_EQ_COST_FACTOR:0 "License purchase cost for Artillery Equipment" - MODIFIER_LICENSE_LIGHT_TANK_EQ_COST_FACTOR:0 "License purchase cost for Light Tank Equipment" - MODIFIER_LICENSE_ANTI_TANK_EQ_COST_FACTOR:0 "License purchase cost for Anti-Tank Equipment" - MODIFIER_EQUIPMENT_CONVERSION_SPEED:1 "Equipment Conversion Speed" - MODIFIER_EQUIPMENT_CONVERSION_IC_COST_FACTOR:0 "Equipment Conversion Cost" - MODIFIER_ACCLIMATIZATION_COLD_CLIMATE_GAIN_FACTOR:0 "Cold acclimatization gain factor" - MODIFIER_ACCLIMATIZATION_HOT_CLIMATE_GAIN_FACTOR:0 "Hot acclimatization gain factor" - mobilization_laws_cost_factor:0 "Conscription Laws Cost" - trade_laws_cost_factor:0 "Trade Laws Cost" - economy_cost_factor:1 "Economy Laws Cost" - political_advisor_cost_factor:0 "Political Advisor Cost" - tank_manufacturer_cost_factor:1 "Tank Designer Cost" - naval_manufacturer_cost_factor:1 "Naval Designer Cost" - aircraft_manufacturer_cost_factor:1 "Aircraft Designer Cost" - materiel_manufacturer_cost_factor:1 "Materiel Designer Cost" - industrial_concern_cost_factor:0 "Industrial Concern Cost" - theorist_cost_factor:0 "Theorist Cost" - army_chief_cost_factor:0 "Army Chief Cost" - navy_chief_cost_factor:0 "Navy Chief Cost" - air_chief_cost_factor:0 "Air Chief Cost" - high_command_cost_factor:0 "High Command Cost" - MODIFIER_AI_LICENSE_ACCEPTANCE:0 "Acceptance when requesting to buy license" - MODIFIER_GUARANTEE_COST:0 "Guarantee Cost" - MODIFIER_AUTONOMY_GAIN_GLOBAL_FACTOR:0 "All autonomy gain" - MODIFIER_LICENSE_SUBJECT_MASTER_PURCHASE_COST:0 "License cost between subject and master" - stability_good_modifier:0 "Stability" - stability_bad_modifier:0 "Stability" - war_support_modifier:0 "War Support" - war_support_good_modifier:0 "War Support" - war_support_bad_modifier:0 "War Support" - MODIFIER_STABILITY_FACTOR:0 "Stability" - MODIFIER_STABILITY_WEEKLY:0 "Weekly Stability" - MODIFIER_STABILITY_WEEKLY_FACTOR:0 "Weekly Stability Gain" - MODIFIER_STABILITY_POPULARITY_FACTOR:0 "Party Popularity Stability Modifier" - MODIFIER_STABILITY_WAR_FACTOR:0 "War Penalty Stability Modifier" - MODIFIER_STABILITY_OFFENSIVE_WAR_FACTOR:0 "Offensive War Penalty Stability Modifier" - MODIFIER_STABILITY_DEFENSIVE_WAR_FACTOR:0 "Defensive War Penalty Stability Modifier" - MODIFIER_SURRENDER_LIMIT:0 "Surrender Limit" - MODIFIER_FORCED_SURRENDER_LIMIT:0 "Surrender Limit" - MODIFIER_MAX_SURRENDER_LIMIT_OFFSET:0 "Minimum Surrender Limit" - MODIFIER_WAR_SUPPORT_FACTOR:0 "War Support" - MODIFIER_WAR_SUPPORT_WEEKLY:0 "Weekly War Support" - MODIFIER_WAR_SUPPORT_WEEKLY_FACTOR:0 "Weekly War Support Gain" - MODIFIER_EQUIPMENT_CAPTURE:0 "Equipment Capture Ratio Gain" - MODIFIER_COMMAND_POWER_GAIN:0 "Daily Command Power Gain" - MODIFIER_MAX_COMMAND_POWER:0 "Maximum Command Power Increase" - MODIFIER_COMMAND_POWER_GAIN_MULT:0 "Daily Command Power Gain Multiplier" - MODIFIER_MAX_COMMAND_POWER_MULT:0 "Maximum Command Power Increase Multiplier" - MODIFIER_COMMAND_ABILITIES_COST_FACTOR:0 "Commander Abilities Cost" - MODIFIER_ATTACK_BONUS_AGAINST_A_COUNTRY:0 " Attack bonus against country" - MODIFIER_ATTACK_BONUS_AGAINST_A_COUNTRY_ON_ITS_CORES:0 "Attack on their core territory" - MODIFIER_DEFENSE_BONUS_AGAINST_A_COUNTRY:2 " Defense bonus against country" - MODIFIER_CIVILIAN_FACTORY_USE:0 "Civilian Factory Use" - MODIFIER_ARMY_LEADER_MAX_ARMY_SIZE:1 "General Max Army Size" - MODIFIER_ARMY_GROUP_LEADER_MAX_ARMY_SIZE:0 "Field Marshal Max Army Size" - MODIFIER_ARMY_LEADER_MAX_ARMY_GROUP_SIZE:0 "General Max Army Group Size" - MODIFIER_ARMY_GROUP_LEADER_MAX_ARMY_GROUP_SIZE:0 "Field Marshal Max Army Group Size" - MODIFIER_TERRAIN_PENALTY_REDUCTION:0 "Terrain Penalty Reduction" - MODIFIER_EQUIPMENT_CAPTURE_FACTOR:0 "Equipment Capture Ratio Modifier" - MODIFIER_PARATROOPER_EXTRA_SUPPLY_GRACE:0 "Extra Paratrooper Supply Grace" - MODIFIER_MARINE_EXTRA_SUPPLY_GRACE:0 "Extra Marine Supply Grace" - MODIFIER_CAS_DAMAGE_REDUCTION:0 "Damage Reduction Against CAS" - MODIFIER_AIR_SUPERIORITY_BONUS_IN_COMBAT:0 "Air Superiority Bonus in Combat" - MODIFIER_SHORE_BOMBARDMENT:0 "Shore Bombardment Bonus" - MODIFIER_RECON_FACTOR_WHILE_ENTRENCHED:0 "Recon Bonus While Entrenched" - MODIFIER_CANNOT_USE_ABILITIES:0 "Cannot Use Combat Abilities" - MODIFIER_UNIT_LEADER_SKILL_BONUS_FACTOR:0 "Leader Skill Bonuses" - MODIFIER_UNIT_LEADER_PROMOTE_COST_FACTOR:0 "Promotion Cost" - MODIFIER_SICKNESS_CHANCE:0 "Chance to Get Sick" - MODIFIER_RIVER_CROSSING_PENALTY_FACTOR:1 "River Crossing Speed Penalty" - MODIFIER_DONT_LOSE_DIGIN_ON_ATTACK_MOVE:0 "No Entrenchment Lose On Attack" - MODIFIER_SPECIAL_FORCES_CAP:0 "Special Forces Capacity Multiplier" - MODIFIER_SPECIAL_FORCES_MIN:0 "Special Forces Minimum Capacity" - MODIFIER_UNIT_SIZE_FACTOR_FOR_PARADROP:0 "Paratrooper per Plane" - MODIFIER_PARADROP_ORGANIZATION_FACTOR:0 "Paratrooper Organization Factor" - MODIFIER_PARATROOPER_DEFENSE:0 "Paratrooper Anti Air Defense" - MODIFIER_FORTIFICATION_COLLATERAL_CHANCE:1 "Fort Combat Damage Chance" - MODIFIER_FORTIFICATION_COLLATERAL_DAMAGE:1 "Fort Damage from Combat" - MODIFIER_CIC_TO_TARGET_FACTOR:0 "Civilian industry to target country" - MODIFIER_CIC_TO_TARGET_FACTOR_DESC:0 "How many §YCivilian§! factories are controlled by target country" - MODIFIER_MIC_TO_TARGET_FACTOR:0 "Military industry to target country" - MODIFIER_MIC_TO_TARGET_FACTOR_DESC:0 "How many §YMilitary§! factories are controlled by target country" - MODIFIER_TRADE_TO_TARGET_FACTOR:0 "Extra trade to overlord" - MODIFIER_TRADE_TO_TARGET_FACTOR_DESC:0 "Extra produced recourses available for trade to target country" - MODIFIER_TRADE_COST_TO_TARGET_FACTOR:0 "Target country trade cost" - MODIFIER_TRADE_COST_TO_TARGET_FACTOR_DESC:0 "Resources per factory in trade between countries" - MODIFIER_SPECIAL_FORCES_NO_SUPPLY_GRACE:0 "Special Forces Supply Grace" - MODIFIER_SPECIAL_FORCES_NO_SUPPLY_GRACE_DESC:0 "Extra hours that our Special Forces divisions can last without supplies." - MODIFIER_SPECIAL_FORCES_OUT_OF_SUPPLY_FACTOR:1 "Special Forces Non-Combat Out of Supply" - MODIFIER_SPECIAL_FORCES_OUT_OF_SUPPLY_FACTOR_DESC:1 "Reduces the organization and recovery penalty that our Special Forces divisions take when they run out of supplies." - MODIFIER_REASSIGNMENT_DURATION_FACTOR:0 "Army reassignment duration" - MODIFIER_REASSIGNMENT_DURATION_FACTOR_DESC:0 "Increases the en route duration for the general" - MODIFIER_WOUNDED_CHANCE_FACTOR:1 "Chance to get wounded in combat" - MODIFIER_WOUNDED_CHANCE_FACTOR_DESC:1 "How likely your general is to become wounded after losing a combat." - MODIFIER_NAVAL_INVASION_PREPARATION_SPEED:0 "Invasion Preparation Speed" - MODIFIER_NAVAL_INVASION_PREPARATION_SPEED_DESC:0 "Naval invasion plan speed factor" - MODIFIER_STATIC_ANTI_AIR_DAMAGE_FACTOR:0 "Static Anti Air damage factor" - MODIFIER_STATIC_ANTI_AIR_HIT_CHANCE_FACTOR:0 "Static Anti Air hit chance factor" - MODIFIER_NAVAL_CRITICAL_RECEIVE_CHANCE_FACTOR:0 "Chance to Receive Critical Hit" - MODIFIER_NAVAL_CRITICAL_RECEIVE_CHANCE_FACTOR_DESC:0 "Reduces the chance to receive a critical hit in naval combats" - MODIFIER_NAVAL_CRITICAL_SCORE_CHANCE_FACTOR:0 "Chance to score Critical Hit" - MODIFIER_NAVAL_CRITICAL_SCORE_CHANCE_FACTOR_DESC:0 "Alter the chances to inflict critical hit during naval combats" - MODIFIER_NAVAL_CRITICAL_EFFECT_FACTOR:0 "Effects of sustained Critical Hits" - MODIFIER_NAVAL_CRITICAL_EFFECT_FACTOR_DESC:0 "Alter the global effects the sustained Critical Hits have on our ships" - MODIFIER_NAVAL_DAMAGE_FACTOR:0 "Damage" - MODIFIER_NAVAL_DAMAGE_FACTOR_DESC:0 "Alter the damages dealt by our ships to others." - MODIFIER_NAVAL_DEFENSE_FACTOR:0 "Defense" - MODIFIER_NAVAL_DEFENSE_FACTOR_DESC:0 "Alter the damages received by our ships." - MODIFIER_NAVAL_ENEMY_RETREAT_CHANCE:0 "Enemy retreat chance" - MODIFIER_NAVAL_ENEMY_RETREAT_CHANCE_DESC:0 "Alter the chances of the enemy leaving the combat when it decides to." - MODIFIER_NAVAL_TORPEDO_REVEAL_CHANCE_FACTOR:0 "Torpedo reveal chance" - MODIFIER_NAVAL_TORPEDO_REVEAL_CHANCE_FACTOR_DESC:0 "Alter how likely it is for our submarine to reveal themselves when they fire at the enemy." - MODIFIER_NAVAL_TORPEDO_SCREEN_PENETRATION_FACTOR:0 "Torpedo screen penetration" - MODIFIER_NAVAL_TORPEDO_SCREEN_PENETRATION_FACTOR_DESC:0 "Alter the enemy's screening efficiency." - MODIFIER_NAVAL_TORPEDO_COOLDOWN_FACTOR:0 "Torpedo cooldown" - MODIFIER_NAVAL_TORPEDO_COOLDOWN_FACTOR_DESC:0 "Alter the rate at which we can fire torpedoes." - MODIFIER_NAVAL_TORPEDO_HIT_CHANCE_FACTOR:0 "Torpedo hit chance" - MODIFIER_NAVAL_TORPEDO_HIT_CHANCE_FACTOR_DESC:0 "Alter how likely we are to hit our target with torpedoes." - MODIFIER_ARMY_FUEL_CAPACITY_FACTOR:0 "Army Food Capacity" - MODIFIER_ARMY_FUEL_CONSUMPTION_FACTOR:0 "Army Food Consumption" - MODIFIER_NAVY_FUEL_CONSUMPTION_FACTOR:0 "Navy Food Consumption" - MODIFIER_AIR_FUEL_CONSUMPTION_FACTOR:0 "Air Food Consumption" - MODIFIER_MINES_PLANTING_BY_FLEETS_FACTOR:1 "Naval minelaying efficiency" - MODIFIER_MINES_PLANTING_BY_FLEETS_FACTOR_DESC:0 "Affects overall efficiency of naval minelaying, performed by fleets." - MODIFIER_MINES_SWEEPING_BY_FLEETS_FACTOR:0 "Naval minesweeping efficiency" - MODIFIER_MINES_SWEEPING_BY_FLEETS_FACTOR_DESC:0 "Affects overall efficiency of naval minesweeping, performed by fleets." - MODIFIER_MINES_PLANTING_BY_AIR_FACTOR:1 "Aerial minelaying efficiency" - MODIFIER_MINES_PLANTING_BY_AIR_FACTOR_DESC:0 "Affects overall efficiency of naval minelaying, performed by air wings." - MODIFIER_MINES_SWEEPING_BY_AIR_FACTOR:1 "Aerial minesweeping efficiency" - MODIFIER_MINES_SWEEPING_BY_AIR_FACTOR_DESC:0 "Affects overall efficiency of naval minesweeping, performed by air wings." - MODIFIER_NAVAL_MINES_EFFECT_REDUCTION:0 "Naval mines avoidance" - MODIFIER_NAVAL_MINES_EFFECT_REDUCTION_DESC:0 "Reduces the penalties from the mines layed by the enemies." - MODIFIER_NAVAL_MINES_DAMAGE_FACTOR:0 "Naval mines damage" - MODIFIER_NAVAL_MINES_DAMAGE_FACTOR_DESC:0 "Extra damage caused by our naval mines." - MODIFIER_NAVAL_ACCIDENTS_CHANCE:0 "Accident chance" - MODIFIER_NAVAL_ACCIDENTS_CHANCE_DESC:0 "Ships may accidently get damaged, or even sunk." - pride_of_the_fleet_country:0 "Has Pride of The Fleet" - pride_of_the_fleet_sunk_temporary:0 "Recently Lost Pride of The Fleet" - pride_of_the_fleet:0 "Pride of The Fleet" - air_wing_experience:0 "Air Wing Experience" - MODIFIER_AIR_WING_XP_LOSS_WHEN_KILLED_FACTOR:0 "Air Wing Experience loss when killed" - MODIFIER_UNIT_UPKEEP_ATTRITION_FACTOR:0 "Unit Upkeep" - MODIFIER_FUEL_GAIN_FACTOR:0 "Food Gain per $OIL|H$£resources_strip|1" - MODIFIER_FUEL_GAIN_FACTOR_FROM_STATES:0 "Food Gain from Farms" - MODIFIER_FUEL_GAIN_FROM_STATES:0 "Food Gain from Farms" - MODIFIER_FUEL_GAIN_ADD:0 "Food Gain per $OIL|H$£resources_strip|1" - MODIFIER_MAX_FUEL_FACTOR:0 "Food Capacity" - MODIFIER_MAX_FUEL_ADD:1 "Food Capacity (K)" - MODIFIER_MAX_FUEL_ADD_FROM_STATES:1 "Food Capacity (K)" - MODIFIER_BASE_FUEL_GAIN_FACTOR:0 "Food Gain" - MODIFIER_BASE_FUEL_GAIN_ADD:0 "Food Gain" - MODIFIER_FUEL_COST:0 "Food Cost" - MODIFIER_INDUSTRIAL_FACTORY_DONATIONS:0 "Industrial Factory Donations" - MODIFIER_MILITARY_FACTORY_DONATIONS:0 "Military Factory Donations" - MODIFIER_DOCKYARD_DONATIONS:0 "Dockyard Donations" - MODIFIER_NAVAL_VISIBILITY_FACTOR:0 "Visibility" - MODIFIER_NAVAL_CASUALTY_ON_HIT_FACTOR:0 "Casualties factor on hit" - MODIFIER_NAVAL_CASUALTY_ON_SINK_FACTOR:0 "Casualties on sink" - MODIFIER_NAVAL_ATTRITION_FACTOR:0 "Attrition" - MODIFIER_EXILED_DIVISIONS_ATTACK_FACTOR:0 "Exiled Divisions Attack" - MODIFIER_OWN_EXILED_DIVISIONS_ATTACK_FACTOR:0 "Own Exiled Divisions Attack" - MODIFIER_EXILED_DIVISIONS_DEFENSE_FACTOR:0 "Exiled Divisions Defense" - MODIFIER_OWN_EXILED_DIVISIONS_DEFENSE_FACTOR:0 "Own Exiled Divisions Defense" - MODIFIER_LEGITIMACY_DAILY:0 "Daily Legitimacy Gain" - MODIFIER_TARGETED_LEGITIMACY_DAILY:0 "Daily Legitimacy Gain" - WARGOAL_COST_ASSISTING_ENEMY:0 "Assisting enemy" - MODIFIER_NAVAL_MINE_HIT_CHANCE:0 "Chance to hit naval mine" - MODIFIER_MASTER_IDEOLOGY_DRIFT:0 "Master Ideology Drift" - MODIFIER_SCREENING_EFFICIENCY:0 "Screening Efficiency" - MODIFIER_POSITIONING:0 "Positioning" - MODIFIER_SCREENING_WITHOUT_SCREENS:0 "Screening bonus when using only capital ships" - MODIFIER_WEEKLY_MANPOWER:0 "Weekly Manpower" - MODIFIER_EXILED_MAPOWER_GAIN_FACTOR:0 "Daily Exile Manpower" - MODIFIER_RESISTANCE_TICK_IN_STATES_CONTROLLED_BY_ENEMY:1 "Resistance Growth in Owned States" - MODIFIER_NAVAL_ENEMY_FLEET_SIZE_RATIO_PENALTY_FACTOR:0 "Enemy fleet size penalty" - MODIFIER_NAVAL_TORPEDO_DAMAGE_REDUCTION_FACTOR:0 "Enemy Torpedo damage reduction" - MODIFIER_NAVAL_TORPEDO_ENEMY_CRITICAL_CHANCE_FACTOR:0 "Enemy Torpedo critical chance" - MODIFIER_NAVAL_LIGHT_GUN_HIT_CHANCE_FACTOR:0 "Light Gun hit chance" - MODIFIER_NAVAL_HEAVY_GUN_HIT_CHANCE_FACTOR:0 "Heavy Gun hit chance" - MODIFIER_CARRIER_SORTIE_HOURS_DELAY:0 "Carrier Air Wing sortie delay (hours)" - MODIFIER_NAVAL_ENEMY_FLEET_SIZE_RATIO_PENALTY_FACTOR_DESC:0 "Increase the penalty the enemy gets when it has many more ships than us in combat." - MODIFIER_NAVAL_HAS_POTF_IN_COMBAT_ATTACK:0 "Attack when in combat alongside the §YPride of the Fleet§!" - MODIFIER_NAVAL_HAS_POTF_IN_COMBAT_ATTACK_DESC:0 "Attack bonus for all ships fighting alongside the pride of the fleet." - MODIFIER_NAVAL_HAS_POTF_IN_COMBAT_DEFENSE:0 "Defense when in combat alongside the §YPride of the Fleet§!" - MODIFIER_NAVAL_HAS_POTF_IN_COMBAT_DEFENSE_DESC:0 "Defense bonus for all ships fighting alongside the pride of the fleet." - modifier_production_cost_max_ship_hull_cruiser:0 "Cruiser Max Cost" - modifier_production_cost_max_ship_hull_heavy:0 "Heavy Ship Max Cost" - modifier_production_cost_max_ship_hull_carrier:0 "Carrier Max Cost" - MODIFIER_INDUSTRIAL_REFIT_SPEED_FACTOR:1 "Ship Refitting Speed" - MODIFIER_INDUSTRIAL_REFIT_SPEED_FACTOR_DESC:1 "The speed at which the refitting of a ship is performed" - MODIFIER_INDUSTRIAL_REFIT_IC_COST_FACTOR:1 "Ship Refitting Cost" - MODIFIER_INDUSTRIAL_REFIT_IC_COST_FACTOR_DESC:1 "The IC cost when refitting a ship" - MODIFIER_EQUIPMENT_UPGRADE_XP_COST:0 "Equipment Experience Cost" - MODIFIER_EQUIPMENT_UPGRADE_XP_COST_DESC:0 "Experience cost factor when changing an equipment" - MODIFIER_NAVAL_EQUIPMENT_UPGRADE_XP_COST:0 "Naval Equipment Experience Cost" - MODIFIER_NAVAL_EQUIPMENT_UPGRADE_XP_COST_DESC:0 "Experience cost factor when changing a naval equipment" - MODIFIER_LAND_EQUIPMENT_UPGRADE_XP_COST:0 "Land Equipment Experience Cost" - MODIFIER_LAND_EQUIPMENT_UPGRADE_XP_COST_DESC:0 "Experience cost factor when changing a land equipment" - MODIFIER_AIR_EQUIPMENT_UPGRADE_XP_COST:0 "Air Equipment Experience Cost" - MODIFIER_AIR_EQUIPMENT_UPGRADE_XP_COST_DESC:0 "Experience cost factor when changing an air equipment" - MODIFIER_REPAIR_SPEED_FACTOR:0 "Ship Repair Speed" - MODIFIER_STRIKE_FORCE_MOVING_ORG:0 "Strike Force Org loss" - MODIFIER_STRIKE_FORCE_MOVING_ORG_DESC:0 "Strike Forces loss of org during movement will be affected by this" - modifier_experience_gain_battle_cruiser_training_factor:1 "Battlecruiser Training Experience Gain" - modifier_experience_gain_battle_cruiser_combat_factor:1 "Battlecruiser Combat Experience Gain" - modifier_experience_gain_battleship_training_factor:1 "Battleship Training Experience Gain" - modifier_experience_gain_battleship_combat_factor:1 "Battleship Combat Experience Gain" - modifier_experience_gain_carrier_training_factor:1 "Carrier Training Experience Gain" - modifier_experience_gain_carrier_combat_factor:1 "Carrier Combat Experience Gain" - modifier_experience_gain_destroyer_training_factor:1 "Destroyer Training Experience Gain" - modifier_experience_gain_destroyer_combat_factor:1 "Destroyer Combat Experience Gain" - modifier_experience_gain_heavy_cruiser_training_factor:1 "Heavy Cruiser Training Experience Gain" - modifier_experience_gain_heavy_cruiser_combat_factor:1 "Heavy Cruiser Combat Experience Gain" - modifier_experience_gain_heavy_ship_training_factor:1 "Superheavy Battleship Training Experience Gain" - modifier_experience_gain_heavy_ship_combat_factor:1 "Superheavy Battleship Combat Experience Gain" - modifier_experience_gain_light_cruiser_training_factor:1 "Light Cruiser Training Experience Gain" - modifier_experience_gain_light_cruiser_combat_factor:1 "Light Cruiser Combat Experience Gain" - modifier_experience_gain_submarine_training_factor:1 "Submarine Training Experience Gain" - modifier_experience_gain_submarine_combat_factor:1 "Submarine Combat Experience Gain" - MODIFIER_ARMOR:0 "Armor" - MODIFIER_ARMY_STRENGTH:0 "HP" - MODIFIER_BREAKTHROUGH:0 "Breakthrough" - carrier_experience_bonus_max:1 "From Carrier Experience" - carrier_experience_malus_min:1 "From Carrier Experience" - MODIFIER_RESISTANCE_TARGET:0 "Resistance Target" - MODIFIER_RESISTANCE_TARGET_ON_OUR_OCCUPIED_STATES:1 "Resistance Target in our states occupied by the enemy" - MODIFIER_RESISTANCE_DECAY:0 "Resistance Decay Speed" - MODIFIER_RESISTANCE_GROWTH:0 "Resistance Growth Speed" - MODIFIER_RESISTANCE_DECAY_ON_OUR_OCCUPIED_STATES:1 "Resistance Decay Speed in our states occupied by the enemy" - MODIFIER_RESISTANCE_GROWTH_ON_OUR_OCCUPIED_STATES:1 "Resistance Growth Speed in our states occupied by the enemy" - MODIFIER_COMPLIANCE_STARTING_VALUE:0 "Starting Compliance" - MODIFIER_COMPLIANCE_GROWTH:0 "Compliance Growth Speed" - MODIFIER_COMPLIANCE_GROWTH_ON_OUR_OCCUPIED_STATES:1 "Compliance Growth Speed in our states occupied by the enemy" - MODIFIER_ARMY_SPEED_FACTOR_FOR_CONTROLLER:0 "Divisions speed" - MODIFIER_STRATEGIC_REDEPLOYMENT_DISABLED:0 "Strategic Redeployment Disabled" - MODIFIER_STRATEGIC_REDEPLOYMENT_DISABLED_FOR_CONTROLLER:0 "Strategic Redeployment Disabled" - MODIFIER_LOCAL_SUPPLIES_FOR_CONTROLLER:0 "Local Supplies" - MODIFIER_ATTRITION_FOR_CONTROLLER:0 "Division Attrition" - MODIFIER_RESISTANCE_GARRISON_PENETRATION_CHANCE:0 "Garrison Penetration Chance" - MODIFIER_RESISTANCE_DAMAGE_TO_GARRISONS:0 "Damage to Garrisons" - MODIFIER_RESISTANCE_DAMAGE_TO_GARRISONS_ON_OUR_OCCUPIED_STATES:1 "Damage to Enemy Garrisons in our states occupied by the enemy" - MODIFIER_ENEMY_INTEL_IMPACT:0 "Enemy Intel Impact" - MODIFIER_REQUIRED_GARRISON_FACTOR:0 "Required Garrisons" - MODIFIER_RECRUITABLE_POPULATION:0 "Additional Recruitable Population" - MODIFIER_RECRUITABLE_POPULATION_FACTOR:0 "Recruitable Population" - MODIFIER_RESISTANCE_ACTIVITY_FACTOR:0 "Resistance Activity Chance" - state_resource_oil:0 "Food" - state_resource_aluminium:0 "Mithril" - state_resource_rubber:0 "Leather" - state_resource_tungsten:1 "String" - state_resource_steel:0 "Steel" - state_resource_chromium:1 "Wood" - temporary_state_resource_oil:0 "Food" - temporary_state_resource_aluminium:0 "Mithril" - temporary_state_resource_rubber:0 "Leather" - temporary_state_resource_tungsten:1 "String" - temporary_state_resource_steel:0 "Steel" - temporary_state_resource_chromium:1 "Wood" - country_resource_oil:0 "Food" - country_resource_aluminium:0 "Mithril" - country_resource_rubber:0 "Leather" - country_resource_tungsten:1 "String" - country_resource_steel:0 "Steel" - country_resource_chromium:1 "Wood" - state_resource_cost_oil:0 "Food Consumption" - state_resource_cost_aluminium:0 "Mithril Consumption" - state_resource_cost_rubber:0 "Leather Consumption" - state_resource_cost_tungsten:1 "String Consumption" - state_resource_cost_steel:0 "Steel Consumption" - state_resource_cost_chromium:1 "Wood Consumption" - country_resource_cost_oil:0 "Food Consumption" - country_resource_cost_aluminium:0 "Mithril Consumption" - country_resource_cost_rubber:0 "Leather Consumption" - country_resource_cost_tungsten:1 "String Consumption" - country_resource_cost_steel:0 "Steel Consumption" - country_resource_cost_chromium:1 "Wood Consumption" - - FACTORED_BY:0 "Factored By $VALUE|+%$" - DECRYPTION_TOTAL_BASE:0 "Total Base Value: $VALUE|+.0$" - MODIFIER_LEGITIMACY_FACTOR:0 "Legitimacy Gain" - MODIFIER_COMPLIANCE_GAIN_ADD:0 "Daily Compliance Gain" - MODIFIER_ENEMY_SPY_NETWORK_GROWTH:0 "Enemy Spy Network Growth" - MODIFIER_ENEMY_SPY_NEGATIVE_STATUS_FACTOR:0 "Enemy Spy Negative Status [wip]" - MODIFIER_NO_COMPLIANCE_GAIN:0 "No Compliance Gain" - resource_sabotage_decrease_tooltip:0 " Resource Sabotage Chance: §G-25%§!\n Resource Sabotage Duration: §G-25%§!" - factory_sabotage_decrease_tooltip:0 " Civilian Factory Sabotage Chance: §G-25%§!\n Military Factory Sabotage Chance: §G-25%§!" - - #these are used for comparison - resource_sabotage_decrease_tooltip_ADDED:0 " Resource Sabotage Chance: §G-25%§! (§G-25%§!)\n Resource Sabotage Duration: §G-25%§! (§G-25%§!)" - factory_sabotage_decrease_tooltip_ADDED:0 " Civilian Factory Sabotage Chance: §G-25%§! (§G-25%§!)\n Military Factory Sabotage Chance: §G-25%§! (§G-25%§!)" - resource_sabotage_decrease_tooltip_REMOVED:0 " Resource Sabotage Chance: §H+0%§! (§R+25%§!)\n Resource Sabotage Duration: §H+0%§! (§R+25%§!)" - factory_sabotage_decrease_tooltip_REMOVED:0 " Civilian Factory Sabotage Chance: §H+0%§! (§R+25%§!)\n Military Factory Sabotage Chance: §H+0%§! (§R+25%§!)" - resource_sabotage_decrease_tooltip_UNCHANGED:0 " Resource Sabotage Chance: §G-25%§! (§H+0%§!)\n Resource Sabotage Duration: §G-25%§! (§H+0%§!)" - factory_sabotage_decrease_tooltip_UNCHANGED:0 " Civilian Factory Sabotage Chance: §G-25%§! (§H+0%§!)\n Military Factory Sabotage Chance: §G-25%§! (§H+0%§!)" - - modifier_repair_speed_infrastructure_factor:0 "Civilian Factory Repair Speed" - modifier_repair_speed_industrial_complex_factor:0 "Civilian Factory Repair Speed" - modifier_repair_speed_arms_factory_factor:0 "Military Factory Repair Speed" - modifier_repair_speed_rail_way_factor:0 "Railway Repair Speed" - MODIFIER_CIVILIAN_INTEL_FACTOR:1 "Civilian Intelligence" - MODIFIER_ARMY_INTEL_FACTOR:1 "Army Intelligence" - MODIFIER_NAVY_INTEL_FACTOR:1 "Navy Intelligence" - MODIFIER_AIRFORCE_INTEL_FACTOR:1 "Air Intelligence" - MODIFIER_INTELLIGENCE_AGENCY_DEFENSE:0 "Counter intelligence" - MODIFIER_ROOT_OUT_RESISTANCE_EFFECTIVENESS_FACTOR:1 "Root Out Resistance mission effects" - MODIFIER_DEFENSE_IMPACT_ON_BLUEPRINT_STEALING:1 "Impact of enemy §HCounter Intelligence§! on §HSteal Blueprints§! operation" - MODIFIER_INTEL_FROM_OPERATIVES_FACTOR:1 "Intelligence gained from Operatives and Infiltrated Assets" - MODIFIER_INTEL_FROM_COMBAT_FACTOR:0 "Intelligence gained from Combat" - MODIFIER_TARGET_SABOTAGE_FACTOR:1 "Targeted Sabotage efficiency" - MODIFIER_BOOST_RESISTANCE_FACTOR:0 "Strengthen Resistance efficiency" - MODIFIER_OPERATIVE_DEATH_ON_CAPTURE_CHANCE:0 "Death chance of our Operative on capture" - MODIFIER_ENEMY_OPERATIVE_RECRUITMENT_CHANCE:2 "Enemy nationality recruit chance" - MODIFIER_OCCUPIED_OPERATIVE_RECRUITMENT_CHANCE:2 "Occupied friendly nationality recruit chance" - MODIFIER_NEW_OPERATIVE_SLOT_BONUS:1 "Operative recruitment choices" - MODIFIER_OPERATIVE_SLOT:0 "Operative slots" - MODIFIER_TRAINING_FACILITIES_ENABLED:0 "Unlock decisions to build Training Facilities" - MODIFIER_COMMANDO_TRAIT_CHANCE_FACTOR:1 "Chance of recruiting an Operative with the §HCommando§! trait" - MODIFIER_CONTROL_TRADE_MISSION_FACTOR:0 "Control Trade mission effects" - MODIFIER_DIPLOMATIC_PRESSURE_MISSION_FACTOR:0 "Diplomatic Pressure mission effects" - MODIFIER_PROPAGANDA_MISSION_FACTOR:0 "Propaganda mission effects" - MODIFIER_BOOST_IDEOLOGY_MISSION_FACTOR:0 "Boost Ideology mission effects" - MODIFIER_DECRYPTION_POWER:1 "£crypto£ Decryption Power" - MODIFIER_DECRYPTION_POWER_FACTOR:0 "£crypto£ Decryption Power Factor" - MODIFIER_CRYPTO_STRENGTH:1 "£crypto_defense£ Cryptology Level" - MODIFIER_CRYPTO_DEPARTMENT_ENABLED:0 "Unlock Cryptology Department" - MODIFIER_INTEL_NETWORK_GAIN:0 "Intel network strength gain" - MODIFIER_INTEL_NETWORK_GAIN_FACTOR:1 "Intel network strength gain factor" - MODIFIER_ENEMY_INTEL_NETWORK_GAIN_FACTOR_OVER_OCCUPIED_TAG:0 "Enemy intel network strength gain" - MODIFIER_OWN_OPERATIVE_DETECTION_CHANCE:0 "Own operative detection chance offset" - MODIFIER_ENEMY_OPERATIVE_DETECTION_CHANCE:0 "Enemy operative detection chance offset" - MODIFIER_ENEMY_OPERATIVE_DETECTION_CHANCE_OVER_OCCUPIED_TAG:0 "Enemy operative detection chance offset" - MODIFIER_OWN_OPERATIVE_DETECTION_CHANCE_FACTOR:0 "Own operative detection chance factor" - MODIFIER_ENEMY_OPERATIVE_DETECTION_CHANCE_FACTOR:0 "Enemy operative detection chance factor" - MODIFIER_ENEMY_OPERATIVE_DETECTION_CHANCE_FACTOR_OVER_OCCUPIED_TAG:0 "Enemy operative detection chance factor" - MODIFIER_OWN_OPERATIVE_CAPTURE_CHANCE_FACTOR:0 "Own operative capture chance" - MODIFIER_ENEMY_OPERATIVE_CAPTURE_CHANCE_FACTOR:0 "Enemy operative capture chance" - MODIFIER_OWN_OPERATIVE_FORCED_INTO_HIDING_TIME_FACTOR:0 "Forced into hiding time" - MODIFIER_ENEMY_OPERATIVE_FORCED_INTO_HIDING_TIME_FACTOR:0 "Enemies forced into hiding time" - MODIFIER_OWN_OPERATIVE_HARMED_TIME_FACTOR:0 "Harmed time" - MODIFIER_ENEMY_OPERATIVE_HARMED_TIME_FACTOR:0 "Enemies harmed time" - MODIFIER_OWN_OPERATIVE_INTEL_EXTRACTION_RATE:0 "Intel extraction rate" - MODIFIER_ENEMY_OPERATIVE_INTEL_EXTRACTION_RATE:0 "Enemy operative intel extraction rate" - MODIFIER_STATE_RESOURCES_FACTOR:0 "Local Available Resources" - MODIFIER_STATE_PRODUCTION_SPEED_BUILDINGS_FACTOR:0 "Local Construction Speed" - modifier_state_production_speed_infrastructure_factor:0 "§Y$infrastructure$§! construction speed" - modifier_state_production_speed_infrastructure_factor_desc:0 "Modifies the speed of $infrastructure$ construction in this state." - modifier_state_production_speed_bunker_factor:1 "§Y$bunker$§! construction speed" - modifier_state_production_speed_bunker_factor_desc:1 "Modifies the speed of $bunker$ construction in this state." - modifier_state_production_speed_coastal_bunker_factor:1 "§Y$coastal_bunker$§! construction speed" - modifier_state_production_speed_coastal_bunker_factor_desc:1 "Modifies the speed of $coastal_bunker$ construction in this state." - modifier_state_production_speed_industrial_complex_factor:0 "§Y$industrial_complex$§! construction speed" - modifier_state_production_speed_industrial_complex_factor_desc:0 "Modifies the speed of §Y$industrial_complex$§! construction in this state." - modifier_state_production_speed_supply_node_factor:0 "§Y$supply_node$§! construction speed" - modifier_state_production_speed_supply_node_factor_desc:0 "Modifies the speed of §Y$supply_node$§! construction in this state." - modifier_state_production_speed_rail_way_factor:0 "§Y$rail_way$§! construction speed" - modifier_state_production_speed_rail_way_factor_desc:0 "Modifies the speed of §Y$rail_way$§! construction in this state." - modifier_state_production_infrastructure_factor:0 "§Y$infrastructure$§! construction speed" - modifier_state_production_infrastructure_factor_desc:0 "Modifies the speed of §Y$infrastructure$§! construction in this state." - modifier_state_production_arms_factory_factor:0 "§Y$arms_factory$§! construction speed" - modifier_state_production_arms_factory_factor_desc:0 "Modifies the speed of §Y$arms_factory$§! construction in this state." - modifier_state_production_air_base_factor:0 "§Y$air_base$§! construction speed" - modifier_state_production_air_base_factor_desc:0 "Modifies the speed of §Y$air_base$§! construction in this state." - modifier_state_production_naval_base_factor:0 "§Y$naval_base$§! construction speed" - modifier_state_production_naval_base_factor_desc:0 "Modifies the speed of §Y$naval_base$§! construction in this state." - modifier_state_production_dockyard_factor:0 "§Y$dockyard$§! construction speed" - modifier_state_production_dockyard_factor_desc:0 "Modifies the speed of §Y$dockyard$§! construction in this state." - modifier_state_production_anti_air_building_factor:0 "§Y$anti_air_building$§! construction speed" - modifier_state_production_anti_air_building_factor_desc:0 "Modifies the speed of §Y$anti_air_building$§! construction in this state." - modifier_state_production_synthetic_refinery_factor:0 "§Y$synthetic_refinery$§! construction speed" - modifier_state_production_synthetic_refinery_factor_desc:0 "Modifies the speed of §Y$synthetic_refinery$§! construction in this state." - modifier_state_production_fuel_silo_factor:0 "§Y$fuel_silo$§! construction speed" - modifier_state_production_fuel_silo_factor_desc:0 "Modifies the speed of §Y$fuel_silo$§! construction in this state." - modifier_state_production_radar_station_factor:0 "§Y$radar_station$§! construction speed" - modifier_state_production_radar_station_factor_desc:0 "Modifies the speed of §Y$radar_station$§! construction in this state." - modifier_state_production_rocket_site_factor:0 "§Y$rocket_site$§! construction speed" - modifier_state_production_rocket_site_factor_desc:0 "Modifies the speed of §Y$rocket_site$§! construction in this state." - modifier_state_production_nuclear_reactor_factor:0 "§Y$nuclear_reactor$§! construction speed" - modifier_state_production_nuclear_reactor_factor_desc:0 "Modifies the speed of §Y$nuclear_reactor$§! construction in this state." - intel_network_state_level_bonus:0 "£operative_mission_icons_small|1£Intel Network" - intel_network_state_level_penalty:0 "£operative_mission_icons_small|1£Enemy Intel Network" - created_intelligence_agency:0 "Intelligence Agency" - root_out_resistance_mission_modifier:0 "Root Out Resistance Mission" - operative_nationality_mission:0 "From local nationality" - operative_nationality_operation:0 "From local nationality" - MODIFIER_CIVILIAN_INTEL_TO_OTHERS:1 "Civilian intelligence to others" - MODIFIER_ARMY_INTEL_TO_OTHERS:1 "Army intelligence to others" - MODIFIER_NAVY_INTEL_TO_OTHERS:1 "Navy intelligence to others" - MODIFIER_AIRFORCE_INTEL_TO_OTHERS:1 "Airforce intelligence to others" - MODIFIER_CIVILIAN_INTEL_TO_OTHERS_FACTOR:1 "Civilian intelligence to others" - MODIFIER_ARMY_INTEL_TO_OTHERS_FACTOR:1 "Army intelligence to others" - MODIFIER_NAVY_INTEL_TO_OTHERS_FACTOR:1 "Navy intelligence to others" - MODIFIER_AIRFORCE_INTEL_TO_OTHERS_FACTOR:1 "Airforce intelligence to others" - passive_decryption_modifier:0 "Enemy cipher is decrypted" - active_decryption_modifier:0 "Using full intelligence gained from decrypted enemy cipher" - full_decryption_modifier:0 "Using full intelligence gained from decrypted enemy cipher" - MODIFIER_BREAKTHROUGH_BONUS_AGAINST_A_COUNTRY:0 "Breakthrough bonus against country" - MODIFIER_IDEOLOGY_DRIFT_FROM_BOOST_IDEOLOGY_OPERATIVE_MISSION:0 "From subversive activities" - MODIFIER_FROM_OPERATIVE:0 "From operatives" - MODIFIER_OPERATING_IN_FOREIGN_COUNTRY:0 "Operating in a foreign country" - MODIFIER_SCALED_BY:0 "Scaled to: $VALUE$" - MODIFIER_OPERATIVE_STACKING_FACTOR:1 "Other operatives, e.g. faction members, on same mission: $VALUE$" - MODIFIER_TARGET_INTELLIGENCE_DEFENSE:0 "Target's Counter intelligence: $VALUE$" - MODIFIER_NETWORK_STRENGTH_FACTOR:0 "Local network strength: $VALUE$" - MODIFIER_NATIONAL_COVERAGE_FACTOR:0 "National coverage: $VALUE$" - MODIFIER_DISABLE_IDEA_TAKING:0 "Cannot Assign Ministers & Laws" - operation_steal_tech_outcome:0 "Steal Blueprint effectiveness" - operation_steal_tech_risk:0 "Steal Blueprint risk" - operation_steal_tech_cost:0 "Steal Blueprint cost" - operation_infiltrate_outcome:0 "Infiltration effectiveness" - operation_infiltrate_risk:0 "Infiltration risk" - operation_infiltrate_cost:0 "Infiltration cost" - target_sabotage_risk:0 "Sabotage risk" - target_sabotage_cost:0 "Sabotage cost" - operation_targeted_sabotage_industry_outcome:0 "Sabotage Industry effectiveness" - operation_targeted_sabotage_resources_outcome:0 "Sabotage Resources effectiveness" - operation_targeted_sabotage_infrastructure_outcome:0 "Sabotage Infrastructure effectiveness" - operation_boost_resistance_outcome:0 "Strengthen Resistance effectiveness" - operation_boost_resistance_risk:0 "Strengthen Resistance risk" - operation_boost_resistance_cost:0 "Strengthen Resistance cost" - operation_fake_intel_outcome:0 "False Intelligence effectiveness" - operation_fake_intel_risk:0 "False Intelligence risk" - operation_fake_intel_cost:0 "False Intelligence cost" - operation_capture_cipher_outcome:0 "Capture Cipher effectiveness" - operation_capture_cipher_risk:0 "Capture Cipher risk" - operation_capture_cipher_cost:0 "Capture Cipher cost" - operation_coordinated_strike_outcome:0 "Coordinated Strike effectiveness" - operation_coordinated_strike_risk:0 "Coordinated Strike risk" - operation_coordinated_strike_cost:0 "Coordinated Strike cost" - operation_collaboration_government_outcome:0 "Prepare Collaboration Government effectiveness" - operation_collaboration_government_risk:0 "Prepare Collaboration Government risk" - operation_collaboration_government_cost:0 "Prepare Collaboration Government cost" - operation_coup_government_outcome:0 "Stage Coup effectiveness" - operation_coup_government_risk:0 "Stage Coup risk" - operation_coup_government_cost:0 "Stage Coup cost" - operation_rescue_operative_outcome:0 "Rescue Operative effectiveness" - operation_rescue_operative_risk:0 "Rescue Operative risk" - operation_rescue_operative_cost:0 "Rescue Operative cost" - operation_make_resistance_contacts_outcome:0 "Make Resistance Contacts effectiveness" - operation_make_resistance_contacts_risk:0 "Make Resistance Contacts risk" - operation_make_resistance_contacts_cost:0 "Make Resistance Contacts cost" - operation_risk:0 "Operation risk" - operation_cost:0 "Operation cost" - operation_outcome:0 "Operation effectiveness" - MODIFIER_AGENCY_UPGRADE_TIME:0 "Agency upgrade time" - MODIFIER_CIVILIAN_INTEL_DECRYPTION_BONUS:0 "Decrypted Civilian Cipher Bonus: $VALUE$" - MODIFIER_ARMY_INTEL_DECRYPTION_BONUS:0 "Decrypted Army Cipher Bonus: $VALUE$" - MODIFIER_NAVY_INTEL_DECRYPTION_BONUS:0 "Decrypted Navy Cipher Bonus: $VALUE$" - MODIFIER_AIRFORCE_INTEL_DECRYPTION_BONUS:0 "Decrypted Airforce Cipher Bonus: $VALUE$" - country_is_at_war:0 "Country is at war" - country_is_at_peace:0 "Country is at peace" - MODIFIER_SUPPLY_FACTOR:1 "Supply Efficiency" - MODIFIER_SUPPLY_NODE_RANGE:0 "Supply Range" - MODIFIER_FEMALE_OPERATIVE_CHANCE:0 "Added Female Operative Chance: $VALUE$" - MODIFIER_FEMALE_ARMY_LEADER_CHANCE:0 "Added Female Army Leader Chance: $VALUE$" - MODIFIER_FEMALE_ADMIRAL_CHANCE:0 "Added Female Admiral Chance: $VALUE$" - MODIFIER_FEMALE_COUNTRY_LEADER_CHANCE:0 "Added Female Country Leader Chance: $VALUE$" - MODIFIER_TRUCK_ATTRITION:0 "Supply Truck Attrition" - MODIFIER_TRUCK_ATTRITION_FACTOR:0 "Supply Truck Attrition" - MODIFIERS_ARMY_ATTACK_AGAINST_MINOR_FACTOR:0 "Attack against minor countries" - MODIFIERS_ARMY_DEFENCE_AGAINST_MINOR_FACTOR:0 "Defense against minor countries" - MODIFIERS_ARMY_BREAKTHROUGH_AGAINST_MINOR_FACTOR:0 "Breakthrough against minor countries" - MODIFIERS_ARMY_ATTACK_AGAINST_MAJOR_FACTOR:0 "Attack against major countries" - MODIFIERS_ARMY_DEFENCE_AGAINST_MAJOR_FACTOR:0 "Defense against major countries" - MODIFIERS_ARMY_BREAKTHROUGH_AGAINST_MAJOR_FACTOR:0 "Breakthrough against major countries" - MODIFIER_AIR_DOCTRINE_COST_FACTOR:0 "Air Doctrine Cost" - MODIFIER_LAND_DOCTRINE_COST_FACTOR:0 "Land Doctrine Cost" - MODIFIER_NAVAL_DOCTRINE_COST_FACTOR:0 "Naval Doctrine Cost" - fighter_design_cost_factor:0 "Fighter Design Cost" - scout_plane_design_cost_factor:0 "Scout Plane Unit Design Cost" - cv_fighter_design_cost_factor:0 "Carrier Fighter Design Cost" - heavy_fighter_equipment_design_cost_factor:0 "Heavy Fighter Design Cost" - jet_fighter_design_cost_factor:0 "Jet Fighter Design Cost" - ship_hull_light_design_cost_factor:0 "Light Ship Design Cost" - ship_hull_heavy_design_cost_factor:0 "Heavy Ship Design Cost" - ship_hull_carrier_design_cost_factor:0 "Carrier Design Cost" - ship_hull_cruiser_design_cost_factor:0 "Cruiser Design Cost" - ship_hull_submarine_design_cost_factor:0 "Submarine Design Cost" - CAS_equipment_design_cost_factor:0 "Close Air Support Design Cost" - cv_CAS_equipment_design_cost_factor:0 "Carrier Close Air Support Design Cost" - nav_bomber_equipment_design_cost_factor:0 "Naval Bomber Design Cost" - cv_nav_bomber_equipment_design_cost_factor:0 "Carrier Based Naval Bomber Design Cost" - tac_bomber_equipment_design_cost_factor:0 "Tactical Bomber Design Cost" - jet_tac_bomber_equipment_design_cost_factor:0 "Jet Tactical Bomber Design Cost" - strat_bomber_equipment_design_cost_factor:0 "Strategic Bomber Design Cost" - jet_strat_bomber_equipment_design_cost_factor:0 "Jet Strategic Bomber Design Cost" - modifier_unit_transport_plane_design_cost_factor:0 "Transport Unit Design Cost" - modifier_unit_rocket_interceptor_design_cost_factor:0 "Rocket Interceptor Unit Design Cost" - modifier_unit_guided_missile_design_cost_factor:0 "Rocket Unit Design Cost" - modifier_unit_suicide_craft_design_cost_factor:0 "Yokosuka MXY7 Ohka Unit Design Cost" - modifier_unit_amphibious_armor_design_cost_factor:0 "Amphibious Tank Battalion Unit Design Cost" - modifier_unit_amphibious_mechanized_design_cost_factor:0 "Amtrac Battalion Unit Design Cost" - modifier_unit_anti_air_design_cost_factor:0 "Support Anti-Air Unit Design Cost" - modifier_unit_anti_air_brigade_design_cost_factor:0 "Anti-Air Unit Design Cost" - modifier_unit_mot_anti_air_brigade_design_cost_factor:0 "Motorized Anti-Air Unit Design Cost" - modifier_unit_anti_tank_design_cost_factor:0 "Support Anti-Tank Unit Design Cost" - modifier_unit_anti_tank_brigade_design_cost_factor:0 "Anti-Tank Unit Design Cost" - modifier_unit_mot_anti_tank_brigade_design_cost_factor:0 "Motorized Anti-Tank Unit Design Cost" - modifier_unit_armored_car_design_cost_factor:0 "Armored Car Unit Design Cost" - modifier_unit_artillery_design_cost_factor:0 "Support Artillery Unit Design Cost" - modifier_unit_rocket_artillery_design_cost_factor:0 "Support Rocket Artillery Unit Design Cost" - modifier_unit_artillery_brigade_design_cost_factor:0 "Artillery Unit Design Cost" - modifier_unit_mot_artillery_brigade_design_cost_factor:0 "Motorized Artillery Unit Design Cost" - modifier_unit_rocket_artillery_brigade_design_cost_factor:0 "Rocket Artillery Unit Design Cost" - modifier_unit_mot_rocket_artillery_brigade_design_cost_factor:0 "Truck-drawn Rocket Artillery Unit Design Cost" - modifier_unit_motorized_rocket_brigade_design_cost_factor:0 "Motorized Rocket Artillery Unit Design Cost" - modifier_unit_battle_cruiser_design_cost_factor:0 "Battlecruiser Unit Design Cost" - modifier_unit_battleship_design_cost_factor:0 "Battleship Unit Design Cost" - modifier_unit_carrier_design_cost_factor:0 "Carrier Unit Design Cost" - modifier_unit_cavalry_design_cost_factor:0 "Cavalry Unit Design Cost" - modifier_unit_camelry_design_cost_factor:0 "Camelry Unit Design Cost" - modifier_unit_destroyer_design_cost_factor:0 "Destroyer Unit Design Cost" - modifier_unit_engineer_design_cost_factor:0 "Engineer Company Unit Design Cost" - modifier_unit_field_hospital_design_cost_factor:0 "Field Hospital Unit Design Cost" - modifier_unit_heavy_armor_design_cost_factor:0 "Heavy Tank Unit Design Cost" - modifier_unit_modular_heavy_armor_design_cost_factor:0 "modular_heavy_armor Unit Design Cost" - modifier_unit_heavy_cruiser_design_cost_factor:0 "Heavy Cruiser Unit Design Cost" - modifier_unit_infantry_design_cost_factor:0 "Infantry Unit Design Cost" - modifier_unit_bicycle_battalion_design_cost_factor:0 "Bicycle Battalion Unit Design Cost" - modifier_unit_marine_design_cost_factor:0 "Marines Unit Design Cost" - modifier_unit_mountaineers_design_cost_factor:0 "Mountaineers Unit Design Cost" - modifier_unit_paratrooper_design_cost_factor:0 "Paratroopers Unit Design Cost" - modifier_unit_motorized_design_cost_factor:0 "Motorized Infantry Unit Design Cost" - modifier_unit_mechanized_design_cost_factor:0 "Mechanized Infantry Unit Design Cost" - modifier_unit_fake_intel_unit_design_cost_factor:0 "Fake Intel Batallion Unit Design Cost" - modifier_unit_light_armor_design_cost_factor:0 "Light Tank Unit Design Cost" - modifier_unit_modular_light_armor_design_cost_factor:0 "modular_light_armor Unit Design Cost" - modifier_unit_light_cruiser_design_cost_factor:0 "Light Cruiser Unit Design Cost" - modifier_unit_logistics_company_design_cost_factor:0 "Logistics Company Unit Design Cost" - modifier_unit_maintenance_company_design_cost_factor:0 "Maintenance Company Unit Design Cost" - modifier_unit_medium_armor_design_cost_factor:0 "Medium Tank Unit Design Cost" - modifier_unit_modular_medium_armor_design_cost_factor:0 "modular_medium_armor Unit Design Cost" - modifier_unit_military_police_design_cost_factor:0 "Military Police Unit Design Cost" - modifier_unit_modern_armor_design_cost_factor:0 "Modern Tank Unit Design Cost" - modifier_unit_railway_gun_design_cost_factor:0 "railway_gun Unit Design Cost" - modifier_unit_recon_design_cost_factor:0 "Cavalry Recon Detachment Unit Design Cost" - modifier_unit_mot_recon_design_cost_factor:0 "Motorized Recon Company Unit Design Cost" - modifier_unit_armored_car_recon_design_cost_factor:0 "Light Armored Recon Company Unit Design Cost" - modifier_unit_light_tank_recon_design_cost_factor:0 "Armored Recon Company Unit Design Cost" - modifier_unit_signal_company_design_cost_factor:0 "Signal Company Unit Design Cost" - modifier_unit_light_sp_anti_air_brigade_design_cost_factor:0 "Light SP Anti-Air Unit Design Cost" - modifier_unit_medium_sp_anti_air_brigade_design_cost_factor:0 "Medium SP Anti-Air Unit Design Cost" - modifier_unit_heavy_sp_anti_air_brigade_design_cost_factor:0 "Heavy SP Anti-Air Unit Design Cost" - modifier_unit_super_heavy_sp_anti_air_brigade_design_cost_factor:0 "Super Heavy SP Anti-Air Unit Design Cost" - modifier_unit_modern_sp_anti_air_brigade_design_cost_factor:0 "Modern SP Anti-Air Unit Design Cost" - modifier_unit_modular_light_sp_anti_air_brigade_design_cost_factor:0 "modular_light_sp_anti_air_brigade Unit Design Cost" - modifier_unit_modular_medium_sp_anti_air_brigade_design_cost_factor:0 "modular_medium_sp_anti_air_brigade Unit Design Cost" - modifier_unit_modular_heavy_sp_anti_air_brigade_design_cost_factor:0 "modular_heavy_sp_anti_air_brigade Unit Design Cost" - modifier_unit_light_sp_artillery_brigade_design_cost_factor:0 "Light SP Artillery Unit Design Cost" - modifier_unit_medium_sp_artillery_brigade_design_cost_factor:0 "Medium SP Artillery Unit Design Cost" - modifier_unit_heavy_sp_artillery_brigade_design_cost_factor:0 "Heavy SP Artillery Unit Design Cost" - modifier_unit_super_heavy_sp_artillery_brigade_design_cost_factor:0 "Super Heavy SP Artillery Unit Design Cost" - modifier_unit_modern_sp_artillery_brigade_design_cost_factor:0 "Modern SP Artillery Unit Design Cost" - modifier_unit_modular_light_sp_artillery_brigade_design_cost_factor:0 "modular_light_sp_artillery_brigade Unit Design Cost" - modifier_unit_modular_medium_sp_artillery_brigade_design_cost_factor:0 "modular_medium_sp_artillery_brigade Unit Design Cost" - modifier_unit_modular_heavy_sp_artillery_brigade_design_cost_factor:0 "modular_heavy_sp_artillery_brigade Unit Design Cost" - modifier_unit_super_heavy_armor_design_cost_factor:0 "Super-Heavy Tank Unit Design Cost" - modifier_unit_light_tank_destroyer_brigade_design_cost_factor:0 "Light Tank Destroyer Unit Design Cost" - modifier_unit_medium_tank_destroyer_brigade_design_cost_factor:0 "Medium Tank Destroyer Unit Design Cost" - modifier_unit_heavy_tank_destroyer_brigade_design_cost_factor:0 "Heavy Tank Destroyer Unit Design Cost" - modifier_unit_super_heavy_tank_destroyer_brigade_design_cost_factor:0 "Super Heavy Tank Destroyer Unit Design Cost" - modifier_unit_modern_tank_destroyer_brigade_design_cost_factor:0 "Modern Tank Destroyer Unit Design Cost" - modifier_unit_modular_light_tank_destroyer_brigade_design_cost_factor:0 "modular_light_tank_destroyer_brigade Unit Design Cost" - modifier_unit_modular_medium_tank_destroyer_brigade_design_cost_factor:0 "modular_medium_tank_destroyer_brigade Unit Design Cost" - modifier_unit_modular_heavy_tank_destroyer_brigade_design_cost_factor:0 "modular_heavy_tank_destroyer_brigade Unit Design Cost" - modifier_module_ship_light_battery_1_design_cost_factor:0 "Ship 85 mm RF. Cannon Design Cost" - modifier_module_ship_light_battery_2_design_cost_factor:0 "Ship 105 mm RF. Cannon Design Cost" - modifier_module_ship_light_battery_3_design_cost_factor:0 "Ship 127 mm RF. Cannon Design Cost" - modifier_module_ship_light_battery_4_design_cost_factor:0 "Ship 130 mm RF. Cannon Design Cost" - modifier_module_dp_light_battery_design_cost_factor:0 "Ship 127 mm Dual-Purpose Battery Design Cost" - modifier_module_ship_heavy_battery_1_design_cost_factor:0 "Ship 28 cm Cannon Design Cost" - modifier_module_ship_heavy_battery_2_design_cost_factor:0 "Ship 30.5 cm Cannon Design Cost" - modifier_module_ship_heavy_battery_3_design_cost_factor:0 "Ship 38 cm Cannon Design Cost" - modifier_module_ship_heavy_battery_4_design_cost_factor:0 "Ship 40.6 cm Cannon Design Cost" - modifier_module_ship_super_heavy_battery_1_design_cost_factor:0 "Ship 46 cm Cannon Design Cost" - modifier_module_ship_medium_battery_1_design_cost_factor:0 "Ship 17 cm Cannon Design Cost" - modifier_module_ship_medium_battery_2_design_cost_factor:0 "Ship 19 cm Cannon Design Cost" - modifier_module_ship_medium_battery_3_design_cost_factor:0 "Ship 20.3 cm Cannon Design Cost" - modifier_module_ship_medium_battery_4_design_cost_factor:0 "Ship 20.3 cm Auto-Loading Cannon Design Cost" - modifier_module_ship_light_medium_battery_1_design_cost_factor:0 "Ship 14.5 cm Cannon Design Cost" - modifier_module_ship_light_medium_battery_2_design_cost_factor:0 "Ship 15 cm Cannon Design Cost" - modifier_module_ship_light_medium_battery_3_design_cost_factor:0 "Ship 15.5 cm Cannon Design Cost" - modifier_module_ship_light_medium_battery_4_design_cost_factor:0 "Ship 15.5 cm Auto-Loading Cannon Design Cost" - modifier_module_ship_secondaries_1_design_cost_factor:0 "Ship 75mm RF. Cannon Design Cost" - modifier_module_ship_secondaries_2_design_cost_factor:0 "Ship 120mm RF. Cannon Design Cost" - modifier_module_dp_ship_secondaries_design_cost_factor:0 "Ship 127mm Dual-Purpose Secondary Battery Design Cost" - modifier_module_ship_anti_air_1_design_cost_factor:0 "Ship .50 cal. MG Design Cost" - modifier_module_ship_anti_air_2_design_cost_factor:0 "Ship 20mm AA Design Cost" - modifier_module_ship_anti_air_3_design_cost_factor:0 "Ship 37mm AA Design Cost" - modifier_module_ship_anti_air_4_design_cost_factor:0 "Ship 40mm Quad AA Design Cost" - modifier_module_ship_fire_control_system_0_design_cost_factor:0 "Ship Central Rangefinding Design Cost" - modifier_module_ship_fire_control_system_1_design_cost_factor:0 "Ship Director Fire Design Cost" - modifier_module_ship_fire_control_system_2_design_cost_factor:0 "Ship Mechanical Rangekeeper Design Cost" - modifier_module_ship_fire_control_system_3_design_cost_factor:0 "Ship Ballistic Computer Design Cost" - modifier_module_ship_radar_1_design_cost_factor:0 "Ship Decimetric Naval Search Radar Design Cost" - modifier_module_ship_radar_2_design_cost_factor:0 "Ship Improved Decimetric Naval Search Radar Design Cost" - modifier_module_ship_radar_3_design_cost_factor:0 "Ship Centrimetric Gunnery Radar Design Cost" - modifier_module_ship_radar_4_design_cost_factor:0 "Ship Integrated Fire Control Radar Design Cost" - modifier_module_light_ship_engine_1_design_cost_factor:0 "Ship 35,000 Shp Engine Design Cost" - modifier_module_light_ship_engine_2_design_cost_factor:0 "Ship 40,000 Shp Engine Design Cost" - modifier_module_light_ship_engine_3_design_cost_factor:0 "Ship 45,000 Shp Engine Design Cost" - modifier_module_light_ship_engine_4_design_cost_factor:0 "Ship 50,000 Shp Engine Design Cost" - modifier_module_sub_ship_engine_1_design_cost_factor:0 "Ship 1,000 Shp Engine Design Cost" - modifier_module_sub_ship_engine_2_design_cost_factor:0 "Ship 2,000 Shp Engine Design Cost" - modifier_module_sub_ship_engine_3_design_cost_factor:0 "Ship 3,000 Shp Engine Design Cost" - modifier_module_sub_ship_engine_4_design_cost_factor:0 "Ship 4,000 Shp Engine Design Cost" - modifier_module_cruiser_ship_engine_1_design_cost_factor:0 "Ship 60,000 Shp Engine Design Cost" - modifier_module_cruiser_ship_engine_2_design_cost_factor:0 "Ship 70,000 Shp Engine Design Cost" - modifier_module_cruiser_ship_engine_3_design_cost_factor:0 "Ship 80,000 Shp Engine Design Cost" - modifier_module_cruiser_ship_engine_4_design_cost_factor:0 "Ship 90,000 Shp Engine Design Cost" - modifier_module_heavy_ship_engine_1_design_cost_factor:0 "Ship 30,000 Shp Engine Design Cost" - modifier_module_heavy_ship_engine_2_design_cost_factor:0 "Ship 90,000 Shp Engine Design Cost" - modifier_module_heavy_ship_engine_3_design_cost_factor:0 "Ship 150,000 Shp Engine Design Cost" - modifier_module_heavy_ship_engine_4_design_cost_factor:0 "Ship 210,000 Shp Engine Design Cost" - modifier_module_carrier_ship_engine_1_design_cost_factor:0 "Ship 50,000 Shp Engine Design Cost" - modifier_module_carrier_ship_engine_2_design_cost_factor:0 "Ship 120,000 Shp Engine Design Cost" - modifier_module_carrier_ship_engine_3_design_cost_factor:0 "Ship 150,000 Shp Engine Design Cost" - modifier_module_carrier_ship_engine_4_design_cost_factor:0 "Ship 210,000 Shp Engine Design Cost" - modifier_module_ship_torpedo_1_design_cost_factor:0 "Ship 3x 450mm Torpedo Launcher Design Cost" - modifier_module_ship_torpedo_2_design_cost_factor:0 "Ship 4x 450mm Torpedo Launcher Design Cost" - modifier_module_ship_torpedo_3_design_cost_factor:0 "Ship 3x 533mm Torpedo Launcher Design Cost" - modifier_module_ship_torpedo_4_design_cost_factor:0 "Ship 4x 533mm Torpedo Launcher Design Cost" - modifier_module_ship_torpedo_sub_1_design_cost_factor:0 "Ship 4x 450mm Torpedo Tubes Design Cost" - modifier_module_ship_torpedo_sub_2_design_cost_factor:0 "Ship 6x 450mm Torpedo Tubes Design Cost" - modifier_module_ship_torpedo_sub_3_design_cost_factor:0 "Ship 4x 533mm Torpedo Tubes Design Cost" - modifier_module_ship_torpedo_sub_4_design_cost_factor:0 "Ship 6x 533mm Torpedo Tubes Design Cost" - modifier_module_ship_mine_layer_1_design_cost_factor:0 "Ship Minelaying Rails Design Cost" - modifier_module_ship_mine_layer_sub_design_cost_factor:0 "Ship Minelaying Tubes Design Cost" - modifier_module_ship_mine_sweeper_1_design_cost_factor:0 "Ship Minesweeping Gear Design Cost" - modifier_module_ship_depth_charge_1_design_cost_factor:0 "Ship Depth Charge Rails Design Cost" - modifier_module_ship_depth_charge_2_design_cost_factor:0 "Ship Depth Charge Thrower Design Cost" - modifier_module_ship_depth_charge_3_design_cost_factor:0 "Ship Anti-submarine Mortar Design Cost" - modifier_module_ship_depth_charge_4_design_cost_factor:0 "Ship Advanced Anti-submarine Mortar Design Cost" - modifier_module_ship_sub_snorkel_1_design_cost_factor:0 "Ship Basic Schnorkel Design Cost" - modifier_module_ship_sub_snorkel_2_design_cost_factor:0 "Ship Improved Schnorkel Design Cost" - modifier_module_ship_airplane_launcher_1_design_cost_factor:0 "Ship Floatplane Catapult Design Cost" - modifier_module_ship_airplane_launcher_2_design_cost_factor:0 "Ship Improved Floatplane Catapult Design Cost" - modifier_module_ship_deck_space_design_cost_factor:0 "Ship Hangar Space Design Cost" - modifier_module_ship_extra_fuel_tank_design_cost_factor:0 "Ship Extra Fuel Tanks Design Cost" - modifier_module_ship_sonar_1_design_cost_factor:0 "Ship Hydrophones Design Cost" - modifier_module_ship_sonar_2_design_cost_factor:0 "Ship Active Sonar Design Cost" - modifier_module_ship_armor_bb_1_design_cost_factor:0 "Ship 200mm Belt/40mm Deck Design Cost" - modifier_module_ship_armor_bc_1_design_cost_factor:0 "Ship 150mm Belt/25mm Deck Design Cost" - modifier_module_ship_armor_bb_2_design_cost_factor:0 "Ship 350mm Belt/150mm Deck Design Cost" - modifier_module_ship_armor_bc_2_design_cost_factor:0 "Ship 305mm Belt/100mm Deck Design Cost" - modifier_module_ship_armor_bb_3_design_cost_factor:0 "Ship 380mm Belt/155mm Deck Design Cost" - modifier_module_ship_armor_bc_3_design_cost_factor:0 "Ship 330mm Belt/130mm Deck Design Cost" - modifier_module_ship_armor_shbb_design_cost_factor:0 "Ship 450mm Belt/210mm Deck Design Cost" - modifier_module_ship_armor_cruiser_1_design_cost_factor:0 "Ship 50mm Belt/40mm Deck Design Cost" - modifier_module_ship_armor_cruiser_2_design_cost_factor:0 "Ship 100mm Belt/30mm Deck Design Cost" - modifier_module_ship_armor_cruiser_3_design_cost_factor:0 "Ship 120mm Belt/50mm Deck Design Cost" - modifier_module_ship_armor_cruiser_4_design_cost_factor:0 "Ship 150mm Belt/60mm Deck Design Cost" - modifier_module_ship_armor_carrier_deck_design_cost_factor:0 "Ship 90mm Deck Design Cost" - modifier_module_tank_gasoline_engine_design_cost_factor:0 "Tank Gasoline Engine Design Cost" - modifier_module_tank_diesel_engine_design_cost_factor:0 "Tank Diesel Engine Design Cost" - modifier_module_tank_petrol_electric_engine_design_cost_factor:0 "Tank Petrol-Electric Engine Design Cost" - modifier_module_tank_gas_turbine_engine_design_cost_factor:0 "Tank Gas Turbine Design Cost" - modifier_module_tank_riveted_armor_design_cost_factor:0 "Tank Riveted Armor Design Cost" - modifier_module_tank_cast_armor_design_cost_factor:0 "Tank Cast Armor Design Cost" - modifier_module_tank_welded_armor_design_cost_factor:0 "Tank Welded Armor Design Cost" - modifier_module_tank_torsion_bar_suspension_design_cost_factor:0 "Tank Torsion Bar Design Cost" - modifier_module_tank_christie_suspension_design_cost_factor:0 "Tank Christie Suspension Design Cost" - modifier_module_tank_bogie_suspension_design_cost_factor:0 "Tank Bogie Suspension Design Cost" - modifier_module_tank_interleaved_suspension_design_cost_factor:0 "Tank Interleaved Roadwheels Design Cost" - modifier_module_tank_light_one_man_tank_turret_design_cost_factor:0 "Tank Light One Man Turret Design Cost" - modifier_module_tank_light_two_man_tank_turret_design_cost_factor:0 "Tank Light Two Man Turret Design Cost" - modifier_module_tank_light_three_man_tank_turret_design_cost_factor:0 "Tank Light Three Man Turret Design Cost" - modifier_module_tank_light_fixed_superstructure_turret_design_cost_factor:0 "Tank Light Fixed Superstructure Design Cost" - modifier_module_tank_medium_one_man_tank_turret_design_cost_factor:0 "Tank Medium One Man Turret Design Cost" - modifier_module_tank_medium_two_man_tank_turret_design_cost_factor:0 "Tank Medium Two Man Turret Design Cost" - modifier_module_tank_medium_three_man_tank_turret_design_cost_factor:0 "Tank Medium Three Man Turret Design Cost" - modifier_module_tank_medium_fixed_superstructure_turret_design_cost_factor:0 "Tank Medium Fixed Superstructure Design Cost" - modifier_module_tank_heavy_two_man_tank_turret_design_cost_factor:0 "Tank Heavy Two Man Turret Design Cost" - modifier_module_tank_heavy_three_man_tank_turret_design_cost_factor:0 "Tank Heavy Three Man Turret Design Cost" - modifier_module_tank_heavy_fixed_superstructure_turret_design_cost_factor:0 "Tank Heavy Fixed Superstructure Design Cost" - modifier_module_tank_super_heavy_four_man_tank_turret_design_cost_factor:0 "Tank Super Heavy Four Man Turret Design Cost" - modifier_module_tank_super_heavy_three_man_tank_turret_design_cost_factor:0 "Tank Super Heavy Three Man Turret Design Cost" - modifier_module_tank_modern_tank_turret_design_cost_factor:0 "Tank Modern Turret Design Cost" - modifier_module_tank_heavy_machine_gun_design_cost_factor:0 "Tank Heavy Machine Gun Design Cost" - modifier_module_tank_auto_cannon_design_cost_factor:0 "Tank Automatic Cannon Design Cost" - modifier_module_tank_auto_cannon_2_design_cost_factor:0 "Tank Improved Automatic Cannon Design Cost" - modifier_module_tank_anti_air_cannon_design_cost_factor:0 "Tank Basic Anti-Air Gun Design Cost" - modifier_module_tank_anti_air_cannon_2_design_cost_factor:0 "Tank Improved Anti-Air Gun Design Cost" - modifier_module_tank_anti_air_cannon_3_design_cost_factor:0 "Tank Advanced Anti-Air Gun Design Cost" - modifier_module_tank_small_cannon_design_cost_factor:0 "Tank Small Cannon Design Cost" - modifier_module_tank_small_cannon_2_design_cost_factor:0 "Tank Improved Small Cannon Design Cost" - modifier_module_tank_close_support_gun_design_cost_factor:0 "Tank Close Support Gun Design Cost" - modifier_module_tank_medium_cannon_design_cost_factor:0 "Tank Medium Cannon Design Cost" - modifier_module_tank_medium_cannon_2_design_cost_factor:0 "Tank Improved Medium Cannon Design Cost" - modifier_module_tank_medium_howitzer_design_cost_factor:0 "Tank Medium Howitzer Design Cost" - modifier_module_tank_medium_howitzer_2_design_cost_factor:0 "Tank Improved Medium Howitzer Design Cost" - modifier_module_tank_high_velocity_cannon_design_cost_factor:0 "Tank Basic High-Velocity Cannon Design Cost" - modifier_module_tank_high_velocity_cannon_2_design_cost_factor:0 "Tank Improved High-Velocity Cannon Design Cost" - modifier_module_tank_high_velocity_cannon_3_design_cost_factor:0 "Tank Advanced High-Velocity Cannon Design Cost" - modifier_module_tank_heavy_cannon_design_cost_factor:0 "Tank Basic Heavy Cannon Design Cost" - modifier_module_tank_heavy_cannon_2_design_cost_factor:0 "Tank Improved Heavy Cannon Design Cost" - modifier_module_tank_heavy_cannon_3_design_cost_factor:0 "Tank Improved Heavy Cannon Design Cost" - modifier_module_tank_heavy_howitzer_design_cost_factor:0 "Tank Heavy Howitzer Design Cost" - modifier_module_tank_super_heavy_cannon_design_cost_factor:0 "Tank Super-Heavy Cannon Design Cost" - modifier_module_tank_radio_1_design_cost_factor:0 "Tank Basic Radio Design Cost" - modifier_module_tank_radio_2_design_cost_factor:0 "Tank Improved Radio Design Cost" - modifier_module_tank_radio_3_design_cost_factor:0 "Tank Advanced Radio Design Cost" - modifier_module_amphibious_drive_design_cost_factor:0 "Tank Amphibious Drive Design Cost" - modifier_module_secondary_turret_hmg_design_cost_factor:0 "Tank Secondary Turret - HMG Design Cost" - modifier_module_secondary_turret_small_cannon_design_cost_factor:0 "Tank Secondary Turret - Small Cannon Design Cost" - modifier_module_secondary_turret_close_support_gun_design_cost_factor:0 "Tank Secondary Turret - Close Support Design Cost" - modifier_module_sloped_armor_design_cost_factor:0 "Tank Sloped Armor Design Cost" - modifier_module_stabilizer_design_cost_factor:0 "Tank Stabilizer Design Cost" - modifier_module_smoke_launchers_design_cost_factor:0 "Tank Smoke Launchers Design Cost" - modifier_module_extra_ammo_storage_design_cost_factor:0 "Tank Extra Ammunition Storage Design Cost" - modifier_module_wet_ammo_storage_design_cost_factor:0 "Tank Wet Ammunition Storage Design Cost" - modifier_trait_adaptable_xp_gain_factor:0 "Adaptable Trait XP Gain" - modifier_trait_aggressive_assaulter_xp_gain_factor:0 "Aggressive Assaulter Trait XP Gain" - modifier_trait_air_controller_xp_gain_factor:0 "Air Controller Trait XP Gain" - modifier_trait_ambusher_xp_gain_factor:0 "Ambusher Trait XP Gain" - modifier_trait_arctic_water_expert_xp_gain_factor:0 "Arctic Water Expert Trait XP Gain" - modifier_trait_armor_officer_xp_gain_factor:0 "Armor Officer Trait XP Gain" - modifier_trait_engineer_officer_xp_gain_factor:0 "Engineer Officer Trait XP Gain" - modifier_trait_aviation_enthusiast_xp_gain_factor:0 "Aviation Enthusiast Trait XP Gain" - modifier_trait_BALTIC_anti_bolshevik_xp_gain_factor:0 "Baltic Anti Bolshevik Trait XP Gain" - modifier_trait_BALTIC_ex_russian_xp_gain_factor:0 "Baltic Ex Russian Trait XP Gain" - modifier_trait_battleship_adherent_xp_gain_factor:0 "Battleship Adherent Trait XP Gain" - modifier_trait_bearer_of_artillery_xp_gain_factor:0 "Bearer Of Artillery Trait XP Gain" - modifier_trait_big_guns_expert_xp_gain_factor:0 "Big Guns Expert Trait XP Gain" - modifier_trait_blockade_runner_xp_gain_factor:0 "Blockade Runner Trait XP Gain" - modifier_trait_blue_water_expert_xp_gain_factor:0 "Blue Water Expert Trait XP Gain" - modifier_trait_bold_xp_gain_factor:0 "Bold Trait XP Gain" - modifier_trait_brilliant_strategist_xp_gain_factor:0 "Brilliant Strategist Trait XP Gain" - modifier_trait_camouflage_expert_xp_gain_factor:0 "Camouflage Expert Trait XP Gain" - modifier_trait_career_officer_xp_gain_factor:0 "Career Officer Trait XP Gain" - modifier_trait_caustic_personality_xp_gain_factor:0 "Caustic Personality Trait XP Gain" - modifier_trait_cavalry_expert_xp_gain_factor:0 "Cavalry Expert Trait XP Gain" - modifier_trait_cavalry_leader_xp_gain_factor:0 "Cavalry Leader Trait XP Gain" - modifier_trait_cavalry_officer_xp_gain_factor:0 "Cavalry Officer Trait XP Gain" - modifier_trait_chief_engineer_xp_gain_factor:0 "Chief Engineer Trait XP Gain" - modifier_trait_combined_arms_expert_xp_gain_factor:0 "Combined Arms Expert Trait XP Gain" - modifier_trait_commando_xp_gain_factor:0 "Commando Trait XP Gain" - modifier_trait_concealment_expert_xp_gain_factor:0 "Concealment Expert Trait XP Gain" - modifier_trait_craven_xp_gain_factor:0 "Craven Trait XP Gain" - modifier_trait_crisis_magician_xp_gain_factor:0 "Crisis Magician Trait XP Gain" - modifier_trait_cruiser_captain_xp_gain_factor:0 "Cruiser Captain Trait XP Gain" - modifier_trait_cuts_corners_xp_gain_factor:0 "Cuts Corners Trait XP Gain" - modifier_trait_defensive_doctrine_xp_gain_factor:0 "Defensive Doctrine Trait XP Gain" - modifier_trait_demoted_xp_gain_factor:0 "Demoted Trait XP Gain" - modifier_trait_desert_fox_xp_gain_factor:0 "Desert Fox Trait XP Gain" - modifier_trait_destroyer_leader_xp_gain_factor:0 "Destroyer Leader Trait XP Gain" - modifier_trait_disgruntled_xp_gain_factor:0 "Disgruntled Trait XP Gain" - modifier_trait_dive_bomber_xp_gain_factor:0 "Dive Bomber Trait XP Gain" - modifier_trait_exiled_leader_xp_gain_factor:0 "Exiled Leader Trait XP Gain" - modifier_trait_expert_delegator_xp_gain_factor:0 "Expert Delegator Trait XP Gain" - modifier_trait_expert_improviser_xp_gain_factor:0 "Expert Improviser Trait XP Gain" - modifier_trait_fast_planner_xp_gain_factor:0 "Fast Planner Trait XP Gain" - modifier_trait_fighter_director_xp_gain_factor:0 "Fighter Director Trait XP Gain" - modifier_trait_fleet_protector_xp_gain_factor:0 "Fleet Protector Trait XP Gain" - modifier_trait_flight_deck_manager_xp_gain_factor:0 "Flight Deck Manager Trait XP Gain" - modifier_trait_fly_swatter_xp_gain_factor:0 "Fly Swatter Trait XP Gain" - modifier_trait_fortress_buster_xp_gain_factor:0 "Fortress Buster Trait XP Gain" - modifier_trait_gentlemanly_xp_gain_factor:0 "Gentlemanly Trait XP Gain" - modifier_trait_green_water_expert_xp_gain_factor:0 "Green Water Expert Trait XP Gain" - modifier_trait_ground_pounder_xp_gain_factor:0 "Ground Pounder Trait XP Gain" - modifier_trait_guerilla_fighter_xp_gain_factor:0 "Guerilla Fighter Trait XP Gain" - modifier_trait_gunnery_expert_xp_gain_factor:0 "Gunnery Expert Trait XP Gain" - modifier_trait_harsh_leader_xp_gain_factor:0 "Harsh Leader Trait XP Gain" - modifier_trait_hidden_sympathies_xp_gain_factor:0 "Hidden Sympathies Trait XP Gain" - modifier_trait_hill_fighter_xp_gain_factor:0 "Hill Fighter Trait XP Gain" - modifier_trait_hunter_killer_xp_gain_factor:0 "Hunter Killer Trait XP Gain" - modifier_trait_infantry_expert_xp_gain_factor:0 "Infantry Expert Trait XP Gain" - modifier_trait_infantry_leader_xp_gain_factor:0 "Infantry Leader Trait XP Gain" - modifier_trait_infantry_officer_xp_gain_factor:0 "Infantry Officer Trait XP Gain" - modifier_trait_inflexible_strategist_xp_gain_factor:0 "Inflexible Strategist Trait XP Gain" - modifier_trait_inshore_fighter_xp_gain_factor:0 "Inshore Fighter Trait XP Gain" - modifier_trait_inspirational_leader_xp_gain_factor:0 "Inspirational Leader Trait XP Gain" - modifier_trait_invader_ii_xp_gain_factor:0 "Invader Ii Trait XP Gain" - modifier_trait_ironside_xp_gain_factor:0 "Ironside Trait XP Gain" - modifier_trait_JAP_communist_sympathizer_xp_gain_factor:0 "JAP Communist Sympathizer Trait XP Gain" - modifier_trait_JAP_samurai_lineage_xp_gain_factor:0 "JAP Samurai Lineage Trait XP Gain" - modifier_trait_jungle_rat_xp_gain_factor:0 "Jungle Rat Trait XP Gain" - modifier_trait_lancer_xp_gain_factor:0 "Lancer Trait XP Gain" - modifier_trait_loading_drill_master_xp_gain_factor:0 "Loading Drill Master Trait XP Gain" - modifier_trait_logistics_wizard_xp_gain_factor:0 "Logistics Wizard Trait XP Gain" - modifier_trait_lone_wolf_xp_gain_factor:0 "Lone Wolf Trait XP Gain" - modifier_trait_marksman_xp_gain_factor:0 "Marksman Trait XP Gain" - modifier_trait_media_personality_xp_gain_factor:0 "Media Personality Trait XP Gain" - modifier_trait_mine_layer_xp_gain_factor:0 "Mine Layer Trait XP Gain" - modifier_trait_mine_sweeper_xp_gain_factor:0 "Mine Sweeper Trait XP Gain" - modifier_trait_naval_invader_xp_gain_factor:0 "Naval Invader Trait XP Gain" - modifier_trait_naval_liason_xp_gain_factor:0 "Naval Liason Trait XP Gain" - modifier_trait_naval_lineage_xp_gain_factor:0 "Naval Lineage Trait XP Gain" - modifier_trait_navy_career_officer_xp_gain_factor:0 "Navy Career Officer Trait XP Gain" - modifier_trait_navy_media_personality_xp_gain_factor:0 "Navy Media Personality Trait XP Gain" - modifier_trait_offensive_doctrine_xp_gain_factor:0 "Offensive Doctrine Trait XP Gain" - modifier_trait_old_guard_navy_xp_gain_factor:0 "Old Guard Navy Trait XP Gain" - modifier_trait_old_guard_xp_gain_factor:0 "Old Guard Trait XP Gain" - modifier_trait_operative_commando_xp_gain_factor:0 "Operative Commando Trait XP Gain" - modifier_trait_operative_demolition_expert_xp_gain_factor:0 "Operative Demolition Expert Trait XP Gain" - modifier_trait_operative_double_agent_xp_gain_factor:0 "Operative Double Agent Trait XP Gain" - modifier_trait_operative_escape_artist_xp_gain_factor:0 "Operative Escape Artist Trait XP Gain" - modifier_trait_operative_infiltrator_xp_gain_factor:0 "Operative Infiltrator Trait XP Gain" - modifier_trait_operative_linguist_xp_gain_factor:0 "Operative Linguist Trait XP Gain" - modifier_trait_operative_master_interrogator_xp_gain_factor:0 "Operative Master Interrogator Trait XP Gain" - modifier_trait_operative_natural_orator_xp_gain_factor:0 "Operative Natural Orator Trait XP Gain" - modifier_trait_operative_safe_cracker_xp_gain_factor:0 "Operative Safe Cracker Trait XP Gain" - modifier_trait_operative_seducer_xp_gain_factor:0 "Operative Seducer Trait XP Gain" - modifier_trait_operative_tough_xp_gain_factor:0 "Operative Tough Trait XP Gain" - modifier_trait_operative_well_groomed_xp_gain_factor:0 "Operative Well Groomed Trait XP Gain" - modifier_trait_organisational_leader_xp_gain_factor:0 "Organisational Leader Trait XP Gain" - modifier_trait_organizer_xp_gain_factor:0 "Organizer Trait XP Gain" - modifier_trait_panzer_expert_xp_gain_factor:0 "Panzer Expert Trait XP Gain" - modifier_trait_panzer_leader_xp_gain_factor:0 "Panzer Leader Trait XP Gain" - modifier_trait_paratrooper_xp_gain_factor:0 "Paratrooper Trait XP Gain" - modifier_trait_peasant_sympathiser_xp_gain_factor:0 "Peasant Sympathiser Trait XP Gain" - modifier_trait_POL_sanation_left_leader_xp_gain_factor:0 "POL Sanation Left Leader Trait XP Gain" - modifier_trait_POL_sanation_right_leader_xp_gain_factor:0 "POL Sanation Right Leader Trait XP Gain" - modifier_trait_politically_connected_xp_gain_factor:0 "Politically Connected Trait XP Gain" - modifier_trait_ranger_xp_gain_factor:0 "Ranger Trait XP Gain" - modifier_trait_reassigned_xp_gain_factor:0 "Reassigned Trait XP Gain" - modifier_trait_recently_promoted_xp_gain_factor:0 "Recently Promoted Trait XP Gain" - modifier_trait_safety_first_xp_gain_factor:0 "Safety First Trait XP Gain" - modifier_trait_scavenger_xp_gain_factor:0 "Scavenger Trait XP Gain" - modifier_trait_search_pattern_expert_xp_gain_factor:0 "Search Pattern Expert Trait XP Gain" - modifier_trait_seawolf_xp_gain_factor:0 "Seawolf Trait XP Gain" - modifier_trait_sick_xp_gain_factor:0 "Sick Trait XP Gain" - modifier_trait_silent_hunter_xp_gain_factor:0 "Silent Hunter Trait XP Gain" - modifier_trait_skilled_staffer_xp_gain_factor:0 "Skilled Staffer Trait XP Gain" - modifier_trait_skirmisher_xp_gain_factor:0 "Skirmisher Trait XP Gain" - modifier_trait_smoke_screen_expert_xp_gain_factor:0 "Smoke Screen Expert Trait XP Gain" - modifier_trait_spotter_xp_gain_factor:0 "Spotter Trait XP Gain" - modifier_trait_substance_abuser_xp_gain_factor:0 "Substance Abuser Trait XP Gain" - modifier_trait_substance_addict_xp_gain_factor:0 "Substance Addict Trait XP Gain" - modifier_trait_superior_tactician_xp_gain_factor:0 "Superior Tactician Trait XP Gain" - modifier_trait_swamp_fox_xp_gain_factor:0 "Swamp Fox Trait XP Gain" - modifier_trait_thorough_planner_xp_gain_factor:0 "Thorough Planner Trait XP Gain" - modifier_trait_torpedo_bomber_xp_gain_factor:0 "Torpedo Bomber Trait XP Gain" - modifier_trait_torpedo_expert_xp_gain_factor:0 "Torpedo Expert Trait XP Gain" - modifier_trait_BUL_ff_sympathizer_xp_gain_factor:0 "BUL Ff Sympathizer Trait XP Gain" - modifier_trait_BUL_tsar_loyalist_xp_gain_factor:0 "BUL Tsar Loyalist Trait XP Gain" - modifier_trait_BUL_zveno_member_xp_gain_factor:0 "BUL Zveno Member Trait XP Gain" - modifier_trait_cautious_xp_gain_factor:0 "Cautious Trait XP Gain" - modifier_trait_engineer_xp_gain_factor:0 "Engineer Trait XP Gain" - modifier_trait_GRE_fascist_sympathizer_xp_gain_factor:0 "GRE Fascist Sympathizer Trait XP Gain" - modifier_trait_GRE_marxist_acolyte_xp_gain_factor:0 "GRE Marxist Acolyte Trait XP Gain" - modifier_trait_GRE_stauch_monarchist_xp_gain_factor:0 "GRE Stauch Monarchist Trait XP Gain" - modifier_trait_GRE_venezelist_loyalist_xp_gain_factor:0 "GRE Venezelist Loyalist Trait XP Gain" - modifier_trait_mountaineer_xp_gain_factor:0 "Mountaineer Trait XP Gain" - modifier_trait_reckless_xp_gain_factor:0 "Reckless Trait XP Gain" - modifier_trait_SPA_carlist_loyalties_xp_gain_factor:0 "SPA Carlist Loyalties Trait XP Gain" - modifier_trait_SPA_falangist_loyalties_xp_gain_factor:0 "SPA Falangist Loyalties Trait XP Gain" - modifier_trait_SPA_nationalist_sympathies_xp_gain_factor:0 "SPA Nationalist Sympathies Trait XP Gain" - modifier_trait_SPR_anti_stalinist_loyalties_xp_gain_factor:0 "Trait_SPR Anti Stalinist Loyalties Trait XP Gain" - modifier_trait_SPR_republican_loyalties_xp_gain_factor:0 "SPR Republican Loyalties Trait XP Gain" - modifier_trait_SPR_stalinist_loyalties_xp_gain_factor:0 "SPR Stalinist Loyalties Trait XP Gain" - modifier_trait_TUR_kemalist_champion_xp_gain_factor:0 "TUR Kemalist Champion Trait XP Gain" - modifier_trait_trickster_xp_gain_factor:0 "Trickster Trait XP Gain" - modifier_trait_unyielding_defender_xp_gain_factor:0 "Unyielding Defender Trait XP Gain" - modifier_trait_urban_assault_specialist_xp_gain_factor:0 "Urban Assault Specialist Trait XP Gain" - modifier_trait_war_hero_xp_gain_factor:0 "War Hero Trait XP Gain" - modifier_trait_winter_expert_xp_gain_factor:0 "Winter Expert Trait XP Gain" - modifier_trait_winter_specialist_xp_gain_factor:0 "Winter Specialist Trait XP Gain" - modifier_trait_wounded_xp_gain_factor:0 "Wounded Trait XP Gain" - MODIFIER_ASSIGN_ARMY_LEADER_CP_COST:0 "Assign Army Leader Cost (£command_power ): $VALUE|Y0$" - MODIFIER_ASSIGN_NAVY_LEADER_CP_COST:0 "Assign Navy Leader Cost (£command_power ): $VALUE|Y0$" - MODIFIER_EXILED_GOVERNMENT_WEEKLY_MANPOWER:0 "Weekly Exiled Government Manpower" - MODIFIER_NAVY_WEATHER_PENALTY:0 "Bad Weather Penalty" - MODIFIER_NAVY_WEATHER_PENALTY_DESC:0 "Reduces the penalty to naval operations during bad weather" - MODIFIER_AIR_MANPOWER_REQUIREMENT_FACTOR:0 "Air manpower requirement " - MODIFIER_AIR_CAS_ORG_DAMAGE_FACTOR:0 "Close Attack Support organization damage" - MODIFIER_AIR_ADVISOR_COST_FACTOR:0 "Air Advisor Cost" - MODIFIER_NAVY_ADVISOR_COST_FACTOR:0 "Navy Advisor Cost" - MODIFIER_ACE_BONUSES_FACTOR:0 "Air aces bonuses" - MODIFIER_AIR_UNTRAINED_PILOTS_PENALTY_FACTOR:1 "Untrained pilots penalty for new Air Wings" - MODIFIER_AIR_HOME_DEFENCE_FACTOR:0 "Air home defence factor" - MODIFIER_AIR_POWER_PROJECTION_FACTOR:0 "Air power projection factor" - MODIFIER_AIR_CARRIER_NIGHT_PENALTY_REDUCTION_FACTOR:0 "Carrier night penalty reduction" - MODIFIER_ARMY_ADVISOR_COST_FACTOR:0 "Army Advisor Cost" - cat_mobile_warfare_cost_factor:0 "Mobile Warfare Doctrine Cost" - cat_superior_firepower_cost_factor:0 "Superior Firepower Doctrine Cost" - cat_grand_battle_plan_cost_factor:0 "Grand Battleplan Doctrine Cost" - cat_mass_assault_cost_factor:0 "Mass Assault Doctrine Cost" - cat_strategic_destruction_cost_factor:0 "Strategic Destruction Doctrine Cost" - cat_battlefield_support_cost_factor:0 "Battlefield Support Doctrine Cost" - cat_operational_integrity_cost_factor:0 "Operational Integrity Doctrine Cost" - cat_fleet_in_being_cost_factor:0 "Fleet in Being Doctrine Cost" - cat_trade_interdiction_cost_factor:0 "Trade Interdiction Doctrine Cost" - cat_base_strike_cost_factor:0 "Base Strike Doctrine Cost" - modifier_army_sub_unit_cavalry_attack_factor:0 "Cavalry Attack" - modifier_army_sub_unit_cavalry_defence_factor:0 "Cavalry Defence" - modifier_army_sub_unit_cavalry_speed_factor:0 "Cavalry Speed" - modifier_army_sub_unit_camelry_attack_factor:0 "Camelry Attack" - modifier_army_sub_unit_camelry_defence_factor:0 "Camelry Defense" - modifier_army_sub_unit_camelry_speed_factor:0 "Camelry Speed" - modifier_army_sub_unit_infantry_attack_factor:0 "Infantry Attack" - modifier_army_sub_unit_infantry_defence_factor:0 "Infantry Defense" - modifier_army_sub_unit_infantry_speed_factor:0 "Infantry Speed" - modifier_army_sub_unit_armored_car_attack_factor:0 "Armored Car Attack" - modifier_army_sub_unit_armored_car_defence_factor:0 "Armored Car Defense" - modifier_army_sub_unit_armored_car_speed_factor:0 "Armored Car Speed" - modifier_army_sub_unit_armored_car_max_org_factor:0 "Armored Car Organization" - modifier_army_sub_unit_armored_car_recon_attack_factor:0 "Armored Recon Company Attack" - modifier_army_sub_unit_armored_car_recon_defence_factor:0 "Armored Recon Company Defense" - modifier_army_sub_unit_armored_car_recon_speed_factor:0 "Armored Recon Company Speed" - modifier_army_sub_unit_armored_car_recon_max_org_factor:0 "Armored Recon Company Organization" - modifier_army_sub_unit_light_tank_recon_attack_factor:0 "Armored Recon Company Attack" - modifier_army_sub_unit_light_tank_recon_defence_factor:0 "Armored Recon Company Defense" - modifier_army_sub_unit_light_tank_recon_speed_factor:0 "Armored Recon Company Speed" - modifier_army_sub_unit_light_tank_recon_max_org_factor:0 "Armored Recon Company Organization" - modifier_army_sub_unit_mountaineers_attack_factor:0 "Mountaineers Attack" - modifier_army_sub_unit_mountaineers_defence_factor:0 "Mountaineers Defense" - modifier_army_sub_unit_mountaineers_speed_factor:0 "Mountaineers Speed" - modifier_army_sub_unit_mountaineers_max_org_factor:0 "Mountaineers Organization" - modifier_army_sub_unit_paratrooper_attack_factor:0 "Paratroopers Attack" - modifier_army_sub_unit_paratrooper_defence_factor:0 "Paratroopers Defense" - modifier_army_sub_unit_paratrooper_speed_factor:0 "Paratroopers Speed" - modifier_army_sub_unit_paratrooper_max_org_factor:0 "Paratroopers Organization" - modifier_army_sub_unit_irregular_infantry_attack_factor:0 "Irregular Infantry Attack" - modifier_army_sub_unit_irregular_infantry_defence_factor:0 "Irregular Infantry Defense" - modifier_army_sub_unit_irregular_infantry_max_org_factor:0 "Irregular Infantry Organization" - modifier_army_sub_unit_irregular_infantry_speed_factor:0 "Irregular Infantry Speed" - modifier_army_sub_unit_militia_attack_factor:0 "Militia Attack" - modifier_army_sub_unit_militia_defence_factor:0 "Militia Defense" - modifier_army_sub_unit_militia_speed_factor:0 "Militia Speed" - modifier_army_sub_unit_militia_max_org_factor:0 "Militia Organization" - modifier_army_sub_unit_militia_org_recovery_cap_factor:0 "Militia Organization Recovery Cap" - modifier_army_sub_unit_blackshirt_assault_battalion_attack_factor:0 "Blackshirt Assault Battalion Attack" - modifier_army_sub_unit_blackshirt_assault_battalion_defence_factor:0 "Blackshirt Assault Battalion Defense" - modifier_army_sub_unit_blackshirt_assault_battalion_speed_factor:0 "Blackshirt Assault Battalion Speed" - modifier_army_sub_unit_blackshirt_assault_battalion_max_org_factor:0 "Blackshirt Assault Battalion Organization" - modifier_army_sub_unit_military_police_attack_factor:0 "Military Police Attack" - modifier_army_sub_unit_military_police_defence_factor:0 "Military Police Defense" - modifier_army_sub_unit_military_police_speed_factor:0 "Military Police Speed" - modifier_army_sub_unit_military_police_max_org_factor:0 "Military Police Organization" - MODIFIER_CHOOSE_PREFERRED_TACTIC_COST:0 "Preferred Tactics Selection Cost" - MODIFIER_RAILWAY_GUN_BOMBARDMENT_FACTOR:0 "Railway Gun Bombardment" - MODIFIER_UNIT_LEADER_AS_ADVISOR_CP_COST_FACTOR:0 "Commander as Advisor Cost" - MODIFIER_INITIATIVE_FACTOR:0 "Initiative" - MODIFIER_NAVAL_INVASION_PLANNING_SPEED:0 "Naval Invasion Planning" - MODIFIER_NAVAL_INVASION_PLANNING_SPEED_DESC:0 "Increases the rate at which a division's planning bonus is accumulated during a naval invasion." - NAVAL_INVASION_PLANNING_BONUS_MALUS:0 "Base Naval Invasion Malus: $VALUE|R0$§R%§!" - MODIFIER_TERRAIN_TRAIT_XP_GAIN_FACTOR:0 "Terrain traits XP Gain" - modifier_experience_gain_motorized_combat_factor:0 "Motorised experence gain from combat" - modifier_experience_gain_mechanized_combat_factor:0 "Mechanised experence gain from combat" - modifier_experience_gain_infantry_combat_factor:0 "Infantry experence gain from combat" - modifier_experience_gain_artillery_combat_factor:0 "Artillery experence gain from combat" - modifier_production_cost_supply_node_factor:0 "§YSupply Hub§! construction cost" - modifier_production_cost_supply_node_factor_desc:0 "Modifies the cost of Supply Hub construction." - MODIFIER_SUPPLY_PENALTY_ON_CORE:0 "Supply Combat Penalties on Core Territory" - supply_combat_penalties_on_core_factor:0 "Supply Combat Penalties on Core Territory" - coordination_bonus:0 "Coordination" - MODIFIER_COORDINATION_BONUS:0 "Coordination" - coordination_bonus_desc:0 "Coordination increases the amount of damage dealt to the primary target in combat. Other damage is spread over all other targets." - MODIFIER_COORDINATION_BONUS_DESC:0 "Coordination increases the amount of damage dealt to the primary target in combat. Other damage is spread over all other targets." - MODIFIER_EMBARGO_THRESHOLD_FACTOR:0 "Embargo Tension Limit" - MODIFIER_EMBARGO_THRESHOLD_FACTOR_DESC:0 "Modifies the world tension threshold that a target needs to have reached, in order to send an embargo." - MODIFIER_EMBARGO_COST_FACTOR:0 "Embargo Cost Modifier" - MODIFIER_EMBARGO_COST_FACTOR_DESC:0 "Modifies the cost to send an embargo." - embargo_threshold_factor:0 "Embargo Tension Limit" - embargo_cost_factor:0 "Embargo Cost Factor" - MODIFIER_WEEKLY_CASUALTIES_WAR_SUPPORT:0 "Weekly War Support (Combat Casualties)" - MODIFIER_WEEKLY_CONVOYS_WAR_SUPPORT:0 "Weekly War Support (Sunk Convoys)" - MODIFIER_WEEKLY_BOMBING_WAR_SUPPORT:0 "Weekly War Support (Enemy Bombing)" - WAR_SUPPORT_AT_WAR_CURRENTLY_TITLE:0 "\n\nEffects While At War:" - MODIFIER_ACE_EFFECTIVENESS_FACTOR:0 "Ace Effectiveness" - MODIFIER_POWER_BALANCE_DAILY:0 "Daily balance of power change" - MODIFIER_POWER_BALANCE_WEEKLY:0 "Weekly balance of power change" - MODIFIER_LOCAL_SUPPLY_IMPACT:0 "Local Supply Impact" - dense_rural_infrastructure:0 "Densely Populated Rural Area" - dense_rural_infrastructure_desc:0 "The infrastructure networks in this area are already highly saturated by a dense local population.\n\nCan be removed by reaching max §H Infrastructure§! in this state." - MODIFIER_LOCAL_NON_CORE_SUPPLY_IMPACT:0 "Local Non-Core Supply Impact" - MODIFIER_GRANT_MEDAL_COST_FACTOR:0 "Grant Medal Cost" - MODIFIER_FIELD_OFFICER_PROMOTION_PENALTY:0 "Field Officer Division Penalty" - MODIFIER_FEMALE_DIVISIONAL_COMMANDER_CHANCE:0 "Female Divisional Commander Chance" - DIVISION_VIEW_HAS_MEDALS:0 "View division medals" - -FACTION_CREATED_UNDER_MASTER_MESSAGE:0 "Faction created by master" \ No newline at end of file diff --git a/localisation/english/replace/newsevents_l_english.yml b/localisation/english/replace/newsevents_l_english.yml new file mode 100644 index 000000000..f8c0d100a --- /dev/null +++ b/localisation/english/replace/newsevents_l_english.yml @@ -0,0 +1,320 @@ +l_english: + news.402.t:0 "Angmar reforms the Kingdom of Arnor" + news.402.d:0 "The Kingdom of Angmar, having shed the dark legacy of the Witch King, has taken a historic stride toward reconciliation and unity in the North. Renouncing the ways of the past, Angmar has mended fences with their neighbors to the south, including Arthedain, Cardolan, and Rhudaur. Embracing a spirit of cooperation and understanding, the once-divided lands have united under the banner of peace and solidarity.\n\nIn an unprecedented move, Angmar has announced the reforming of the ancient Kingdom of Arnor, a realm steeped in history and tradition. This significant development signals a new era for the North, as the realms of old are reborn, fostering hope for a future of new-found glory." + news.402.a:0 "An unexpected Development." + ###################################### + news.401.t:0 "The Stewardship Flees to Tolfalas" + news.401.d:0 "The peasant revolt in Gondor has escalated into a full-blown uprising. As villages across the land join the rebellion, the grip of the noble houses on power is slipping away. In a desperate bid to escape the wrath of the enraged populace, Denethor, managing to evacuate substantial riches from the capital and securing the loyalty of most of his fleet, has made a daring decision. The former Steward, along with a contingent of loyal nobles, has fled mainland Gondor, seeking refuge on the remote island of Tolfalas.\n\nThe decision to retreat to Tolfalas, a strategic move to regroup and plan their revenge, underscores the dire state of affairs in the heart of Gondor. The once-mighty nobility, now scattered and in disarray, faces a formidable challenge from the united and determined peasant forces." + news.401.a:0 "A precarious situation." + ###################################### + news.400.t:0 "Peasant Uprising Sweeps Gondor" + news.400.d:0 "Chaos has descended upon the heart of Gondor as a massive peasant uprising, led by the once-royal Ivriniel, has stormed the throne room in Minas Tirith. Renouncing her royal titles, Ivriniel has become the unexpected champion of the common people, igniting a revolt against the aristocracy and the existing power structures within the realm. The Stewardship and many aristocrats, fearing the wrath of the enraged populace, are fleeing south, leaving behind a city in turmoil." + news.400.a:0 "A deep blow to the stability of Gondor." + ###################################### + news.399.t:0 "Gondor expresses interest in Harondor" + news.399.d:0 "In a significant diplomatic move, Gondor has publicly expressed keen interest in the territories of Harondor, a strategic region to the south of the realm. The declaration, made by Gondor's emissaries, signals a shift in the realm's expansionist ambitions, as they look beyond their borders toward new territories.\n\nHarondor, long a region of cultural and historical significance, has now become the focus of Gondor's attention. The prospect of Gondor's expansion raises questions about the potential implications for the region's inhabitants and the delicate balance of power in the South." + news.399.a:0 "A bold move." + ###################################### + news.398.t:0 "Denethor II delegitimizes Isildur's Dynasty" + news.398.d:0 "After many years of a vacant throne, the royal council of Gondor has agreed to no longer reconize Isildur's heritage. 'After several heirs to Gondors throne have declined to serve as Gondor's king, the bloodline has become unclear. We simply can't know anymore who the true heir is or is not.' - said Irolas, primary advisor to Stewart Denethor. What reforms the Gondor government will enact after this step remain to be seen, but the following months will certainly be of great importance to Gondor's future." + news.398.a:0 "A long lost kingdom." +###################################### + news.397.t:0 "Celeborn Departs Lothlórien Amidst Tensions" + news.397.d:0 "Tensions within the enchanted realm of Lothlórien have reached a boiling point, leading to the departure of Lord Celeborn, one of the realm's distinguished leaders. Some sources suggest that he was forcefully pushed into exile, while others contend that he left of his own volition, choosing to embark on a journey toward the Havens of Lindon. The sudden exit has left many questioning the stability of the realm and the future of its leadership.\n\nAs Lothlórien grapples with the aftermath of this significant departure, the shadow of division and uncertainty looms over the realm. The departure of Lord Celeborn marks a profound shift in the balance of power and governance, leaving the Golden Wood to chart an uncertain path forward." + news.397.a:0 "How will the elves of Lórien fare without Celeborn?" +###################################### + news.396.t:0 "Lothlórien Assembles 'Elven Fellowship'" + news.396.d:0 "The realm of Lothlórien has taken a bold step by forming a new Fellowship of the Ring, exclusively composed of elven members. The move comes as the Golden Wood claims possession of the One Ring.\n\nElven leaders from Lothlórien cited concerns over the risks of placing the fate of the One Ring into the hands of simple Hobbits, men, and dwarves, as was initially proposed by Elrond's Fellowship of the Ring. While acknowledging the wisdom of Elrond's original concept, Lothlórien's leaders assert that the stakes are too high to entrust the Ring to those who might be more susceptible to its corrupting influence." + news.396.a:0 "Fellowship 2: Elven Boogaloo" +###################################### + news.395.t:0 "Two Hobbits sail to the Undying Lands" + news.395.d:0 "Frodo Baggins, the resolute halfling who bore the One Ring to its destruction, and his venerable uncle, Bilbo Baggins, embark on a journey beyond the western sea to the fabled Undying Lands. The news reverberates across the realms, evoking a tapestry of emotions from joy to sorrow.\n\nIn a poignant ceremony held at the docks of Rivendell, surrounded by friends, family, and well-wishers, the two hobbits step onto a ship that will carry them to Aman." + news.395.a:0 "A rare exception granted by the elves." +###################################### + news.394.t:0 "Galadriel and Celeborn leave Middle Earth" + news.394.d:0 "Lady Galadriel and Lord Celeborn of Lothlórien have announced their decision to depart from the lands of Middle-earth to the lands of Aman. The news reverberates across the realm, touching hearts from the Misty Mountains to the shores of Gondor.\n\nThe bittersweet decision is met with mixed emotions as the Elven realm prepares to bid farewell to its beloved rulers. The golden woods of Lórien have flourished under their stewardship, and their legacy will echo through eternity." + news.394.a:0 "How will Lothlórien fare without them?" +###################################### + news.393.t:0 "Durin's Bane Dies" + news.393.d:0 "In a climactic and heroic confrontation, the infamous Balrog known as Durin's Bane has been defeated in an epic battle that shook the foundations of Middle-earth. The formidable demon, which had haunted the depths of Khazad-dûm for ages, was vanquished by a coalition of valiant warriors after a relentless struggle." + news.393.a:0 "Durin's Bane's Bane." + ###################################### + news.392.t:0 "Sauron resurfaces in Angmar" + news.392.d:0 "In a shocking turn of events, the malevolent presence of Sauron has resurfaced within the ancient kingdom of Angmar. Having lost control over the orcs in Mordor, the Dark Lord has now seized command in the North, unleashing his dark forces upon the lands once again.\nThe resurgence of Sauron's power in Angmar has sent tremors of fear throughout the region. Whispers of his return echo through the icy mountains, leaving the inhabitants in a state of dread. As the dark clouds of Mordor cast their shadow upon the Northern realms, the people of Arnor brace themselves for the imminent threat." + news.392.a:0 "the North faces a perilous future." + ###################################### + news.390.t:0 "Storm gathers on Caradhras " + news.390.d:0 "A powerful storm is said to be gathering over the Redhorn Pass in the Misty Mountains. According to local reports, the storm is expected to bring heavy rains and strong winds. The pass, which is known for its treacherous terrain, is likely to be severely affected by the storm, and travelers are advised to take caution of potential avalanches caused by lightning-strikes.\nThere are rumors circulating among the locals that the storm may be the work of Saruman, whilst others claim it was the mountain of Caradhras itself." + news.390.a:0 "Crossing the Misty Mountains will be even more difficult now." + ###################################### + news.388.t:0 "The Hornburg's defenses are breached" + news.388.d:0 "The great walls of the Hornburg, a fortified stronghold at the mouth of the Helm's Deep gorge, have been breached after being rocked by a gigantic explosion. With this calamity, the besieging orcs are streaming past the deeping wall leaving nothing but terror in their wake. It remains unclear if the garrison can hold out much longer." + news.388.a:0 "Is this the end for Rohan?" + ###################################### + news.389.t:0 "[From.From.GetName] seizes the One Ring" + news.389.d:0 "Recent rumors of [From.From.GetName] getting their hands on the One Ring have been confirmed. This Master Ring, crafted by the Dark Lord Sauron, is known for its ability of granting unprecedented power, but also to corrupt." + news.389.a:0 "One Ring to bring them all and in the darkness bind them..." + ###################################### + news.387.t:0 "Saruman betrays Mordor" + news.387.d:0 "Saruman today, in a daring move, has announced cutting all ties with Sauron. Saying he no longer trust his ally in its capability to conquer Middle-Earth. When asked if he will create his on alliance of countries he did not answer." + news.387.a:0 "Unexpected" + ###################################### + news.386.t:0 "Mordor seizes the Black Gate Outskirts" + news.386.d:0 "Mordor spokespeople have announced the occupation of the Black Gate Outskirts, a region bordering the Dead Marshes. The area is considered strategically important, and Mordor's move is seen as potentially opening a second invasion-front into Gondor. This development is being closely monitored by regional powers, and it remains to be seen how the situation will evolve in the coming days. To many it seems an all-out invasion is imminent." + news.386.a:0 "Why do I hear boss music?" + ###################################### + news.385.t:0 "Rhun embroiled in civil war" + news.385.d:0 "The conflict, which began as a dispute over political ideology, has quickly escalated into a full-blown war, with both sides mobilizing their forces and engaging in fierce battles across the country. The Khamulists, known for their strict devotion to Morgoth, have seized control of several key cities and are using their military might to try and crush the resistance of the Blue Wizards, who have formed a united front and are fighting for the right to determine their own destiny, free from Mordor's influence. As the conflict continues to rage on, it remains uncertain who will emerge victorious, but the people of Rhun certainly are paying a heavy price for this war." + news.385.a:0 "The situation is deteriorating rapidly..." +###################################### + news.384.t:0 "Khamul declares himself a new Dark Lord" + news.384.d:0 "In a shocking turn of events, the warlord Khamul has declared himself a new Dark Lord and the sole heir to Morgoth. In a rambling and ominous speech, Khamul alleges that his former master, Sauron, is too weak to undertake a glorious conquest of Middle-Earth and that it was time for a new ruler to take his place. Khamul's declaration has sent shockwaves throughout the land, with many questioning his sanity and true motivations. Some fear that he may be seeking to overthrow Sauron and seize control of his vast armies, while others believe that he may be a pawn in a larger, more sinister plot. Whatever the case, it is clear that Khamul's rise to power represents a grave threat to the peace and stability of Middle-Earth." + news.384.a:0 "An audacious claim!" + ###################################### + news.383.t:0 "Dol Guldur seized by orcs of Mordor" + news.383.d:0 "A Mordor military force originating from the supposedly abandoned fortress of Dol Guldur have seized control over much of Mirkwood's southern regions, severly crippling any Elven efforts to quell the fast-spreading insurgency. By nightfall there were also reports of Orc forces moving towards the South and planning an all-out attack on the Mirkwood Elves. Thranduil said they were 'deeply concerned' about Dol Guldur developments and urged a 'strong and coordianted response to push back the orc invaders'." + news.383.a:0 "That fortress is nothing but trouble..." + ###################################### + news.382.t:0 "The Great Spiders declare war on Mirkwood Elves" + news.382.d:0 "Recent disagreements between the Elves of the Mirkwood and the Great Spiders have sparked the so-called 'War of the Forest'. The Spiders have quickly gained control over the north-western Mirkwood, ostracizing, or eating, any elves found in the region and now plan to do the same for the entirety of the region. 8-legged protests errupted earlier this year when Elves opened fire on Arachno-Syndicalist demonstrators, killing several in the process. The unrest has now triggered a nationwide attack on the elven-led government." + news.382.a:0 "The Mirkwood is full of surprises." + ###################################### + news.381.t:0 "Denethor commits suicide" + news.381.d:0 "The Stewart of Gondor, Denethor II is dead. Reportedly he was mad with grief for his two lost sons, Faramir and Boromir leading to him throwing himself of the top of the White City of Minas Tirith." + news.381.a:0 "Hmm..." + ###################################### + news.380.t:0 "Faramir is dead" + news.380.d:0 "The well respected general of Gondor, Faramir, is dead. Reportedly his forces where overwhelmed at the Gondor city of Osgiliath by a legion of Mordor Orcs. The Generals father, Denethor declined to give a statement saying isntead that 'he had never been so heartbroken'." + news.380.a:0 "May he find rest now." + ###################################### + news.379.t:0 "Boromir is dead" + news.379.d:0 "The well respected general of Gondor, Boromir, is dead. Reportedly his forces where overwhelmed at the Gondor city of Osgiliath by a legion of Mordor Orcs. The Generals father, Denethor declined to give a statement saying isntead that 'he had never been so heartbroken'." + news.379.a:0 "May he find rest now." + ###################################### + news.378.t:0 "Faramir is dead" + news.378.d:0 "The son to the Stewart of Gondor, Faramir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. Reportedly a Isengard special tasks group lead by an Uruk-Hai named Lurtz attacked the Fellowship and killed Faramir in the process. 'He saved our lives and died like a true warrior of Gondor.' claimed one of the Fellowships's Hobbits." + news.378.a:0 "Click here to pay your respects." + ###################################### + news.377.t:0 "Boromir is dead" + news.377.d:0 "The firstborn son to the Stewart of Gondor, Boromir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. Reportedly a Isengard special tasks group lead by an Uruk-Hai named Lurtz attacked the Fellowship and killed Boromir in the process. 'He saved our lives and died like a true warrior of Gondor.' claimed one of the Fellowships's Hobbits." + news.377.a:0 "Click here to pay your respects." + ###################################### + news.376.t:0 "Sauron is dead" + news.376.d:0 "The Dark Lord of Mordor has died! Rumors claim that two Hobbits managed to destroy the One Ring within the fires of Mount Doom. How exactly they accomplished this, remains unclear. Several Eagle-sg10 light aircraft planes have been deployed in a rescue mission for the Hobbits. The future of Mordor has never been this clouded, as the leadership of Sauron was a central part of Mordors structural integrity." + news.376.d_elves:0 "The Dark Lord of Mordor has died! Rumors claim that a pack of elves managed to destroy the One Ring within the fires of Mount Doom. How exactly they accomplished this, remains unclear. Several Eagle-sg10 light aircraft planes have been deployed in a rescue mission for the Hobbits. The future of Mordor has never been this clouded, as the leadership of Sauron was a central part of Mordors structural integrity." + news.376.a:0 "Hmm..." + ###################################### + news.375.t:0 "Mordor finds the One Ring" + news.375.d:0 "Mordor authorities claim to have recovered the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when a Mordor task force recovered it at the Dead Marshes. 'The One Ring is a historical trinket of the Dark Lord Sauron. It belongs in a Mordor museum!' claimed Mordor spokesperson Mouth of Sauron." + news.375.a:0 "Sauron will return..." + ###################################### + news.374.t:0 "Boromir takes the One Ring" + news.374.d:0 "Rivendell authorities have anounced that a great tragedy has befallen their special task force known as 'the fellowship of the ring'. Reportedly one of the unit's members, Bormir, stole the One Ring from a Hobbit that was tasked with keeping it safe. Boromir appears to have gone out of reach, conceivably riding for his home country of Gondor." + news.374.a:0 "Well then..." + ###################################### + news.373.t:0 "Saruman intercepts the One Ring" + news.373.d:0 "Isengard authorities claim to have found the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when an Isengard task force, lead by an Uruk-Hai named Lurtz intercepted the Fellowsip of the Ring and recovered it. 'The One Ring is a dangerous artifact and should not be left in the hands of a careless Hobbit. Gandalf and Elrond are fools to think this was a good idea.' claimed Saruman of Isengard." + news.373.a:0 "Hmm..." + ###################################### + news.372.t:0 "Galadriel takes the One Ring" + news.372.d:0 "Lothlórien authorities claim to have found the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit who gave it as a gift to the co-ruler of Lothlórien, Galadriel. This event prompted the Hobbit's companions, a Rivendell task force named 'The Fellowship of the Ring' to attack Galadriel in order to recover the Ring. 'The Fellowship is in Lórien custody. There have been several testimonies of the Hobbit giving the Ring voluntarily, thus the Fellowship has no right to intervene.'" + news.372.a:0 "Worrying..." + ###################################### + news.371.t:0 "Frodo hands over the Ring to Galadriel" + news.371.d:0 "In a surprising turn of events, Frodo Baggins, the hobbit who had been entrusted with the One Ring, willingly handed it over to Galadriel, the Lady of Lothlórien. The decision came after a long and difficult journey for Frodo and his companions, who had faced countless dangers and obstacles in their quest to destroy the Ring and defeat the Dark Lord Sauron. As they rested in the peaceful surroundings of Lothlórien, Frodo was approached by Galadriel, who sensed the burden he carried and offered to take the Ring from him, to which he agreed. Galadriel, for her part, pledged to keep the Ring safe and to use its power only for the greater good of Middle-Earth." + news.371.a:0 "This is what you get for entrusting it to a simple Hobbit." + ###################################### + news.370.t:0 "The One Ring interpected at the Shire" + news.370.d:0 "Mordor authorities claim to have recovered the One Ring! Reportedly, the Ring had been in the hands of a Shire Hobbit when a Mordor task force recovered it. 'The One Ring is a historical trinket of the Dark Lord Sauron. It belongs in a Mordor museum!' claimed Mordor spokesperson Mouth of Sauron." + news.370.a:0 "Sauron will return..." + ###################################### + news.369.t:0 "Sauron recovers his true form" + news.369.d:0 "Dark Lord of Mordor and legacy to Morgoth, Sauron has, at last, recovered his material form. After having been defeated at the hands of The Last Alliance (tm), the dark Lord was forced to live on in spirit only. Now where the one Ring has been recovered by Mordor Forces, Sauron could channel his malice into a bodily form. 'It's so good to be able to walk again!' - said the pleased Dark Lord - 'It was very difficult for me to be that eye, especially since I have vertigo!'" + news.369.a:0 "Doom will be upon all things." + ###################################### + news.368.t:0 "Gondor abandons Isildurs heritage" + news.368.d:0 "The royal council of Gondor has agreed to abandon Isildur's heritage. 'After several heirs to Gondors throne have declined to serve as Gondor's king, the bloodline has become unclear. We simply can't know anymore who the true heir is or is not.' - said Irolas, primary advisor to Stewart Denethor. What reforms the Gondor government will enact after this step remain to be seen, but the following months will certainly be of great importance to Gondor's future." + news.368.a:0 "A long lost kingdom." + ###################################### + news.367.t:0 "Gondor give the Ring to Sauron" + news.367.d:0 "The realms of Gondor and Mordor have invoked a war assembly to discuss the possibility of peace. As a trading token, Gondor proposed to hand over the one Ring to Sauron in return for a seize fire, an offer that Mordor spokesperson Mouth of Sauron agreed to. A temporary peace deal has been signed between the two nations and the one Ring is being transported safely to Barad-dûr." + news.367.a:0 "Worrying..." + ###################################### + news.366.t:0 "Aragorn crowned King of Gondor" + news.366.d:0 "A former chieftain of the Dúnedain of the North known as Aragorn, commonly referred to as 'Strider' was crowned King Elessar Telcontar of Gondor. Said to be a great warrior and leader, Aragorn is now the 35th King of Gondor and the first man ever to sit on Gondors throne since the days of his ancestor Isildur. 'Long have I desired to look upon the likenesses of Isildur and Anarion, my sires of old. Under their shadow Elessar, the Elfstone son of Arathorn of the House of Valandil Isildur's son heir of Elendil, has naught to dread!' is how he proclaimed his lineage at the coronation." + news.366.a:0 "Hmm..." + ###################################### + news.365.t:0 "The Dead rise in Minas Tirith" + news.365.d:0 "Thousands of Gondor Soldiers shuddered in fear yesterday as an army of ghost soldiers overwhelmed the Pelennor Fields. The initial shock was tempered with heartfelt relief as the soldiers realised the dead were fighting on their side. Reportedly the army of the dead, also referred to as the Deadm Men of Dunharrow of simply 'Oathbreakers' is composed of 'cursed' men of the White Mountains. 'A silly superstition' - claimed Gondor scientist Dawkins Richardson - 'this was merely an regular army dressed in bright green clothing'." + news.365.a:0 "This must mean Isildur's heir has returned..." + ###################################### + news.364.t:0 "Enedwaith yields to Saruman" + news.364.d:0 "A lot of pro-Isengard support has been seen from Enedwaith tribes over the recent months but what no politcal analyst could predict is that with a recent military coup on central Enedwaith government a group of militiamen have taken control over Enedwaith and sworn their loyalty to Saruman, leader of the Council of Wizards. Saruman has welcomed their service and promised glory and wealth in return." + news.364.a:0 "Of course they did." + ###################################### + news.363.t:0 "Lothlòrien stands with Mordor" + news.363.d:0 "The joint house of Celeborn and Galadriel of Lothlòrien have openly declared their alligance with Sauron's Mordor. This surprising turn of events reportedly occured as a response to Mordors global submission ultimatum, uttered by spokesperson 'Mouth of Sauron' earlier this week. Galadriel and Celeborn have maintained rule over Lothlòrien for centuries never claiming a royal title, though that might be about to change." + news.363.a:0 "Hmm..." + ###################################### + news.362.t:0 "Galadriel leaves Middle Earth" + news.362.d:0 "Co-ruler and Lady of Lothlórien Galadriel is set to leave Middle Earth from the Grey Havens in Mithlond and sail to Valinor. Many Lòrien Elves have mourned the early departure of their beloved Co-Ruler, as she is commonly known as one of the greatest Eldar in Middle-earth as well as the bearer of Nenya, one of the three Elven rings of power. Galadriel claims her departure comes early due to a unusual division between herself and her husband, Lord Celeborn who has been more approving of progressive reforms. 'The world has changed. A dark terror looms over my people and I cannot stand in the way.' she claimed." + news.362.a:0 "A great loss for Lothlórien." + ###################################### + news.361.t:0 "Moria elect a Balrog as their leader" + news.361.d:0 "The citizens of the Mines of Moria held a grand assembly this week and came to the decision to appoint a Balrog of Morgoth as their new sovereign. Although little is known of the Valaraukar, dubbed 'Durin's Bane', except that he lived within the depths of the dwarven kingdom for centuries after Morgorth's defeat during the War of the Wrath. When the dwarves digged too deep in search for mithril, the beast awoke slaying Dwarf-King Durin VI claiming the title of Durin's Bane." + news.361.a:0 "WTF" + ###################################### + news.384.t:0 "Moria crowns Glóin the son of Gróin as Durin the 7th" + news.384.d:0 "The Balrog was cornered into the orc tunnels which were then collapsed by the dwarves, however when the balrog emerged from the debris, an underground water reservoir was released, which destroyed the Balrog. The dwarven celebratory feast begins!" + news.384.a:0 "A victory for all peaceful folk" + ###################################### + news.360.t:0 "Dawn of the Rivendell Initiative" + news.360.d:0 "The Rivendell led alliance between former Arnorian regions aswell as elven Nations is set to be launched this coming Sunday, according to internal sources. The Alliance is being led by Imladirs leader and well respected war veteran Lord Elrond who has appointed a new political chamber in celebration of this new union. The allliance has been dubbed 'the Rivendell Initiavie' and aims at opposing Mordor influences on western regions. Rivendell authorities claimed the door is still open if there are other nations who feel like to join their coalition." + news.360.a:0 "Hmm..." + ###################################### + news.359.t:0 "Rivendell blame dwarves for Elrond's death" + news.359.d:0 "Elrond's former closest confident Erestor told a packed courtroom today that dwarf agents were to blame for the 'cowardly attack' on Elrond. Elrond's son Elladan, who acted as head of the court, claimed the evidence was 'adequate, cogent and excluded all other possibilities.' Dwarf authoroties have dismissed these accusations and demanded the 'so-called evidence' be made public. Thousands of elves have taken it to the streets of Imladris and demanded the assasins be put to justice." + news.359.a:0 "Worrying..." + ###################################### + news.358.t:0 "Rivendell blames Rhudaur for Elrond's death" + news.358.d:0 "Elrond's former closest confident Erestor told a packed courtroom today that Rhudaur agents were to blame for the 'cowardly attack' on Elrond. Elrond's son Elladan, who acted as head of the court, claimed the evidence was 'adequate, cogent and excluded all other possibilities.' Rhudaur authoroties have dismissed these accusations and demanded the 'so-called evidence' be made public, prompting further clashes between Rivendell and Rhudaur. Thousands of elves have taken it to the streets of Imladris and demanded the assasins be put to justice." + news.358.a:0 "Worrying..." + ###################################### + news.357.t:0 "Elrond assasinated!" + news.357.d:0 "Rivendell - Lord Elrond, the head of the White Council, was shot during private meeting this afternoon. His death has been confirmed by medial professionals after his relocation to an emergency room. The circumstances of the assasination are unclear, as the meeting was highly confidential. Elrond's eldest son has assumed command of Rivendell for the time being and several suspects have been arrested in his name. Imladris police chiefs have launched an all-out investigation to persecute the perpetrators of this crime." + news.357.a:0 "Click here to pay your respects." + ###################################### + news.356.t:0 "Dawn of the First Hobbit Empire" + news.356.d:0 "Hobbit authorities have passed a new constitution declaring the Shire as the first ever 'Hobbit Empire'. The text was passed by the National Hobbit Assemlby by 73 votes out of 80 and is widely considered a historic milestone. Analysts say the declaration was induced by recent tensions between the Shire and their former overseers of Arthedain. "This constitution is one of consensus. We Hobbits will never be looked down upon again." were the words given by Assembly Speaker Lotho Sackville-Baggins, now adopting the title of Hobbit Emperor." + news.356.a:0 "This is a histpric day for the Shire." + ###################################### + news.355.t:0 "The Shire questions Arthedains authority" + news.355.d:0 "After having relished Arthedain protection for centuries, a common consensus has risen in the Shire that they no longer require the Rangers of the North to keep them safe. After their terrible defeat against Angmar, Arthedains military has remained weakever since, leaving the Shire as one of the only heavily populated states in the area." + news.355.a:0 "Worrying." + ###################################### + news.354.t:0 "Hobbit Inventor discovers 'Third Breakfast'" + news.354.d:0 "The widely celebrated Hobbit researcher Rorimac 'Goldfather' Brandybuck has recently published his postulation of the potential existence of a 'third breakfast'. The paper has been published in many scientific journals and is beng celebrated as one of the most influential Hobbit inventions of the third age. 'If a Hobbit can have two breakfasts within 5 hours, the discrete Fourier transformation matrices for each breakfast are conjugate summetric when applied to the specific time dilation of the Shire, thus leaving a finite amount of time for a third breakfast!' - is how Brandybuck summarized his postulation in pupular science journal 'Hobbit Advances in Quantumn Food Theory'." + news.354.a:0 "A small step for a Hobbit, one giant leap for Middle Earth." + ###################################### + news.353.t:0 "Arthedain seeks to reunite Arnor" + news.353.d:0 "Arthedian authorities have issued a royal decree to restore the Kingdom of Arnor. Other previously arnorian Nations have not yet responded to this proposal. 'We stand today on the groundwork of an age of great restoration.' said acclaimed political writer and commentator Erwin Khal. The kingdom of Arnor has not been on any map since TA 861, when it split up into the kingdoms of Cardolan, Rhudaur and Arthedain due to political disputes with Gondor's Valandil." + news.353.a:0 "This is a historic day for Arthedain." + ###################################### + news.352.t:0 "Angmar denounces the Witch King" + news.352.d:0 "Thousands of Anmgar citizens marched in the streets of Carn-Dûm today in protest of their former leader, the so-called 'Witch King of Angmar'. Leaflets given out during the march include detailed descriptions of how the Witch King fled to Mordor while his people bleed in the mud. 'A King should not abadon his people. The Witch King is a coward and he can rot in Mordor.' said the protests leading figure Oulf. The Witch King of Angmar was the original founder of Angmar and thus posseses a lot of historical influence in the country, however Angmar citizens appear dissatisfied with Witch King policies." + news.352.a:0 "So be it." + ###################################### + news.351.t:0 "Angmar seeks Independence" + news.351.d:0 "Portests in Angmar have escalated violently over the last months severly damaging goverment facilites and injuring several police authorities. The protesters have condemned the Gondor provisional government as 'imperialist slavery' and demand a sovereign Anmgar government to take its place. Gondor authorites claim they are doing their best to calm down the situation and restore stability to Anmgar as soon as as time allows." + news.351.a:0 "Worrying..." + ###################################### + news.350.t:0 "Mirkwood intervenes with Erebor" + news.350.d:0 "The Elves of the Mirkwood have stood up in protection of their former ally, the town of Dale. Demands where put forth that Erebor stand their army down and seize all hostilities towards the town at once. Rather hesitantly, the dwarves have yielded to these demands. Tensions between Mirkwood and Erebor have been high since the Smaug-incident at the Lonely Mountain, however a prominent Laketown spokesperson spoke out with great optimism for future Mirkwood-Erebor relations." + news.350.a:0 "Fine." + ###################################### + news.349.t:0 "The Ents go to war" + news.349.d:0 "The trees of the Entwood have issued a rather lengthy war declaration against the realm of Isengard. Reportedly convinced by two Hobbits, Treebeard gathered his kin and commenced an all out assault on Orthanc. Isengard representatives claim the Ents are 'clearly overreacting' to what they claim was 'just a little firewood gathering'. All journalists have fallen asleep while talking to Ent representatives, so their stance on the issue is currently unknown." + news.349.a:0 "Strange." + ###################################### + news.348.t:0 "Spark of the Harad Civil War" + news.348.d:0 "The realms of Harad have taken up arms against one another! Several high-ranking generals seeking to overthrow the pro-Mordor stance aswell as large parts of the Realms of Pellardur and Umbar have issued an ultimatum and declared all allies to Mordor traitors to the Realm. Mordor central government has responded to these statements by a declaration of war and claimed that Haradwaith was the legitiamte government." + news.348.a:0 "Worrying." + ###################################### + news.347.t:0 "Haradwaith stands with Mordor" + news.347.d:0 "Over the past years many political commentators have noted the pro-Sauron rhetoric originating from the Realms of Harad, Pellardur, Umbar and Khand. In a public statement issued by Haradwaith's new political leader the nation declared itself a 'close ally to Mordor' and 'blithe servant to Morgoth's legacy'." + news.347.a:0 "Well then." + ###################################### + news.346.t:0 "Rhûn declares for Sauron" + news.346.d:0 "The past few years have seen a rise in black-speech rhetoric from the political leaders of Rhûn. Reportedly the Rhunians enthusiastic approval of Mordor policies have led to an alliance between the nations. Khamûl, an important Mordor personality and native to the Realms of Rhûn was appointed it's leader to the delight of many Dark-Pact advocates." + news.346.a:0 "Well then." + ###################################### + news.345.t:0 "The Dead Marshes yield to Mordor" + news.345.d:0 "After permanent political pressure from their neighbouring country, the realms of Dagorlad have laid down their weapons and surrended. After declaring martial law, Lord Sauron has named his disciple Khamûl the new leader of the marshes." + news.345.a:0 "Well then." + ###################################### + news.344.t:0 "Lord Balin is dead." + news.344.d:0 "After having reclaimed the mountain of Erebor for his kin, the legendary dwarf Balin has suffered a tragic fate in his quest to reclaim the mines of Moria. The quest seemed to be going well, but a recent surge in Orc forces has taken the valiant dwarves by surprise. With their leader dead, Moria seems lost, as military experts estimate the dwarves' chances of survival at 80 to 1." + news.344.a:0 "Oh dear." + ###################################### + news.343.t:0 "Boromir is dead" + news.343.d:0 "The firstborn son to the Stewart of Gondor, Boromir, is dead. The Stewart's son recently departed from Rivendell as part of a special task force known as the 'fellowship of the ring' and according to the units leader, Gandalf, he had lived up to all expectations. However it seems things turned sour since we last heard from Gandalf, since Lord Elrond claims that Boromir attempted to sabotage the task force which prompted elven Prince Legolas to shoot him with his bow and arrow. Denethor claims to have 'never been so hearbroken'." + news.343.a:0 "Oh dear." + ###################################### + news.342.t:0 "Theoden orders execution of former chief advisor" + news.342.d:0 "His grace Theoden, King of the Rohirrim has formally sentenced his former chief advisor Grima Wormtongue to death. Many questions have been raised in regards to this verdict as the King had previously praised Wormtongue's service greatly. The rupture ocurred after Theoden accused Wormtongue of espionage and plotting to usurp the throne. " + news.342.a:0 "Interesting." + ###################################### + news.341.t:0 "King Theoden casts out former chief advisor" + news.341.d:0 "His grace Theoden, King of the Rohirrim has formally excommunicated his former chief advisor Grima Wormtongue from his realm. Many questions have been raised in regards to this ousting as the King had previously praised Wormtongue's service greatly. The rupture ocurred after Theoden accused Wormtongue of espionage and plotting to usurp the throne. Mr. Wormtongue declined to comment on these statements and has last been seen heading west with some haste." + news.341.a:0 "Interesting." + ###################################### + news.340.t:0 "Prince Théodred dies" + news.340.d:0 "The second Marshal of Rohan, eldest son to King Theoden and rightful heir to the throne has been murdered. The perpetrators of this crime remain yet unknown, but reportedly a Horde of Orcs originating from Isengard overran the region he was staioned in. Théodred's death was announced this morning by the niece of King Theoden, the lady Eowyn." + news.340.a:0 "Prince Theodead...?" + ###################################### + news.339.t:0 "King Theoden passes away" + news.339.d:0 "The entirety of Rohan plunged into grief following the death of Rohan's King, Theoden. His grace passed away after losing his battle to grave medial condition that has plagued Rohan's stability for months. In keeping with rohanian traditions his body has been buried underneath a layer of earth covered in Simbelmynë flowers. Tens of thousands gathered in Edoras to pay their respects and honor his memory. After the death of late prince Theodred, Rohan's throne now falls to the King's niece, Eowyn, and her husband Grima Wormtongue." + news.339.a:0 "Click here to pay your respects" + ###################################### + news.338.t:0 "Rohan celebrates a royal wedding" + news.338.d:0 "Niece to King Theoden of Rohan and known as the 'White Lady of Rohan', Eowyn has announced an engagement to the King's primary advisor, Grima Wormtongue. 'I was hesitant at first, but it is the will of my King thus I shall see it done.' - were the ominous words Eowyn shared with press this morning. The announcement of their wedding ended in days of fevered speculation by Rohan journalists. Common conjectures included connections to the King's recent illness and Eowyn's exiled brother, Eomer. Of course, no rohanian speculation would be complete without an Isengard-related conspiracy theory, of which we've seen plenty over the last week." + news.338.a:0 "Unusual times for a wedding..." + ###################################### + news.337.t:0 "King of Rohan afflicted by serious illness" + news.337.d:0 "A Rohan representative announced today in a public statement that the King of Rohan, Theoden, had fallen terribly ill. Medical professionals have concluded the disease to be Hypothyroidism, a rare condition which results from a lack thyroid hormones. Common symptoms include a feeling of tiredness, depression and skin decay. 'The grip of the illness is strong... the King's been bedbound for a month and passing seizures are becoming more pronounced. The underlying cause seems to be a slow and progressive decay of the nervous system, which will greatly affect his ability to rule.' said Dr. Theodorant. The King's niece, Eowyn, seems to have a more optimistic outlook on the situation: 'He is strong. He has always been strong. He'll fight the illness tooth and nail. I know he will.'" + news.337.a:0 "Rohan's leadership will suffer." + ###################################### + news.336.t:0 "Prince Théodred dies" + news.336.d:0 "The second Marshal of Rohan, eldest son to King Theoden and rightful heir to the throne died today at what has been named 'the battle of the Fords of Isen'. Reportedly a Horde of Orcs originating from Isengard overran the region known as the Fords of Isen leaving terror in their wake. Rohanian soldiers are still falling back from the area. Théodred's death was announced this morning by the niece of King Theoden, the lady Eowyn. Marshal Grimbold who reportedly defended Théodreds body 'with admirable heroism' was also seriously injured, according to a Rohan spokesman." + news.336.a:0 "Prince Theodead...?" + ###################################### + news.335.t:0 "Saruman denounces Rohans integrity" + news.335.d:0 "In a press conference last week Saruman, Chief of the Wizards, lashed out at 'demented' King Theoden. He claimed Rohans government had less authority than 'a halfwitted dwarf' and warned he would 'send the boys in' if King Theoden didn't 'clean up this mess'. In response to these inflamatory statements the Kings Cousin, Eomer, said threats by Isengard would 'not go unpunished' and described the Wizard as a 'senile maniac fond of playing with fire'. Both parties have ceased all trade between Isengard and Rohan for the time being." + news.335.a:0 "Worrying..." + ###################################### + news.334.t:0 "Saruman and Gandalf announce a new Alliance" + news.334.d:0 "Two Wizards met this evening at Orthanc (Isengard) and announced they are forming a new alliance in response to the aggressive rhetoric of the Mouth of Sauron. The move comes with Saruman hosting a one-week summit at Isengard at which Gandalf reportedly convinced Saruman of Mordors military threat." + news.334.a:0 "Magical." + ###################################### + news.333.t:0 "Wizard Clash at Orthanc!" + news.333.d:0 "A physical fight erupted in the tower of Orthanc (Isengard) during a heated debate between two wizards.Saruman, leader of the Order of Wizards reportedly closed the door on his former confidant Gandalf the Grey, prompting him to throw Saruman off his feet. This scene is uncommon for Isengards normally sedate athmosphere. Gandalf the Grey was also reportedly arrested during the clash for "interfering with Isengard affairs"." + news.333.a:0 "Oh dear..." + ###################################### + news.332.t:0 "Rivendell invokes secret council" + news.332.d:0 "All the way from Gondor to Erebor words have spread of Elrond, Lord of Imladris, summoning several notable representatives to Rivendell where a rather mysterious gathering was held. The information discussed in said gathering has been classified as highly confidential and all participants have refused to provide further explanations. Rumors have spread that the council was invoked in response to the recent inflamatory comments made by a representative of Mordor, but why was the White Council not summoned instead?" + news.332.a:0 "Mysterious." + ###################################### + news.331.t:0 "Paranormal Activities in the Shire" + news.331.d:0 "The north Arthedian region, commonly knwon as the Shire, has been subject to recent commotion when one of their eldest members mysteriously vanished during his birithday celebrations. Bilbo Baggins, the oldest living Hobbit (age 111), was just giving his birthday speech when he reportedly 'vanished into thin air'. Hobbit authorities are investigating the happening. Allegedly the disappearance occured shortly after the arrival of firework specialist Gandalf the Grey at the village. He is being detained as a suspect for now. "Bilbo was always a quiet and reserved type of person, but I didn't imagine he would just leave so suddenly!" said Josephine Maxwell Baggins." + news.331.a:0 "Worrying..." + news.331.a.tt:0 "Unlocks the §YQuest for the Ring§! decisions." + ######################### FELLOWSHIP NEWS EVENTS + news.1000.t:0 "The Fellowship of the Ring" + news.1000.a:0 "Hmm..." + news.1000.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but I am a wizard after all.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1001.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have a dwarf.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1002.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small, but I'm grateful to Ironfoot for sending such a capable warrior.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1010.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have an elf.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1011.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Gondor could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1012.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Gondor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1020.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small, but I'm grateful to Thranduil for sending such a capable fighter.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1021.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Gondor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1022.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Gondor would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1100.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The size of the fellowship is worryingly small for the task at hand, but at least we have a man of Gondor.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1101.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Thranduil could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1102.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Thranduil as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1110.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I realize times are hard and kings don't want to send their warriors abroad, yet I'm sure Erebor could have spared at least something.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1111.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is sizeable enough. What worries me is the skill of it's members...' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1112.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Ironfoot, Gimli will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1120.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Erebor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1121.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Thranduil, his son Legolas will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1122.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. The dwarf and elf will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1200.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'Boromir will complement the fellowship nicely, yet I am displeased at Mirkwood and Erebor for their lack of collaboration.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1201.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Mirkwood as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1202.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Mirkwood would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1210.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship seems capable, yet I am disappointed in Erebor as it seems they aren't taking the threat at hand seriously.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1211.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I am confident the fellowship will prevail. I'm espacially grateful to Denethor, his son Boromir will be a great addition to the team!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1212.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. Boromir and Gimli will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1220.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'The fellowship is made up of legendary warriors, if only Erebor would have offered some help aswell.' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1221.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I feel very confident about this fellowship. Boromir and Legolas will complement the team particularly well!' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" +news.1222.d:0 "Elronds summit at Rivendell concluded earlier this week with the formation of a new special task force named 'the fellowship of the ring'. The exact purpose of this unit remains a secret, but the unusually large number of Hobbits has raised some questions within the elvish community. 'I have full confidence in this fellowship! With such capable warriors, how can we not succeed?' - Said the leader of the task force, Gandalf the Grey. At a press conference in Mordor, the Mouth of Sauron expressed his heartfelt disapproval of Lord Elrond's decision. 'Rivendell's intent has been more than clear! This is an openly declared terrorist cabal designed to instill fear into the good and peaceful people of Mordor! Unacceptable!'" diff --git a/localisation/english/replace/production_l_english.yml b/localisation/english/replace/production_l_english.yml deleted file mode 100644 index b251ec179..000000000 --- a/localisation/english/replace/production_l_english.yml +++ /dev/null @@ -1,279 +0,0 @@ -l_english: - PRODUCTION_PRODUCTION_LABEL:0 "Production" - PRODUCTION_EQUIPMENTPOOL_LABEL:0 "Storage" - PRODUCTION_EFFICIENCY_LABEL:0 "§TEfficiency§!" - PRODUCTION_EQUIPMENT_LABEL:0 "Equipment" - PRODUCTION_ADJUSTERS_LABEL:0 "Adjusters" - PRODUCTION_MATERIALS_LABEL:0 "Materials" - PRODUCTION_FACTORIES_LABEL:0 "Factories" - PRODUCTION_OPERATIONAL_ARMS_FACTORIES_LABEL:0 "Military Factories" - PRODUCTION_OPERATIONAL_DOCKYARDS_LABEL:0 "Naval Dockyards" - PRODUCTION_OPERATIONAL_FACTORIES_LABEL:0 "Civilian Factories" - PRODUCTION_OPERATIONAL_DOCKYARDS_LABEL_SHORT:0 "Dockyards" - PRODUCTION_AVAILABLE_ARMS_FACTORIES_LABEL:0 "Available Military Factories" - PRODUCTION_AVAILABLE_DOCKYARDS_LABEL:0 "Available Naval Dockyards" - PRODUCTION_AVAILABLE_FACTORIES_LABEL:0 "Available Civilian Factories" - PRODUCTION_OPERATIONAL_FACTORIES_VALUE:0 "$VALUE$/$TOT$" - PRODUCTION_MILITARY_LABEL:0 "§TArmy & Airforce Equipment§!" - PRODUCTION_NAVAL_LABEL:0 "§TNavy Equipment§!" - PRODUCTION_BUILDINGS_LABEL:0 "§TBuildings construction§!" - PRODUCTION_PRODUCING_DAILY:0 "$AMOUNT$/day" - PRODUCTION_PRODUCING_WEEKLY:0 "$AMOUNT$/week" - PRODUCTION_PRODUCING_MONTHLY:0 "$AMOUNT$/month" - PRODUCTION_PRODUCING_YEARLY:0 "$AMOUNT$/year" - PRODUCTION_PRODUCING_ETA_DATE:0 "Next complete: $DATE$" - PRODUCTION_REPAIRING_ETA_DATE:0 "Reparation complete: $DATE$" - PRODUCTION_PRODUCING_ETA_DAYS:0 "In $AMOUNT$ days" - PRODUCTION_PRODUCING_ETA_WEEKS:0 "In $AMOUNT$ weeks" - PRODUCTION_PRODUCING_ETA_MONTHS:0 "In $AMOUNT$ months" - PRODUCTION_PRODUCING_ETA_YEARS:0 "In $AMOUNT$ years" - PRODUCTION_PRODUCING_NEVER:1 "§RNever§!" - PRODUCTION_PRODUCING_NO_FACTORIES:0 "§RNo factories assigned§!" - PRODUCTION_PRODUCING_NONE:0 "§RNone§!" - PRODUCTION_CAN_NOT_DEPLOY:0 "§RCannot deploy§!" - PRODUCTION_CAN_NOT_DEPLOY_MANPOWER:0 "Insufficient Manpower" - PRODUCTION_INCREASE_PRIORITY_LABEL:0 "§GClick to §Hincrease priority§!.\nShift+click to give the production §Hhighest priority§!.§!" - PRODUCTION_DECREASE_PRIORITY_LABEL:0 "§GClick to §Hdecrease priority§!.\nShift+click to give the production §Hlowest priority§!.§!" - PRODUCTION_PRIORITY_DELAYED:0 "A Production Line with higher priority will be given access to resources before Production Lines with a lower priority." - PRODUCTION_EFFICIENCY:0 "£prod_eff §TProduction Efficiency: $AMOUNT|H2%$§!" - PRODUCTION_EFFICIENCY_MOD:0 "£prod_eff §TProduction Efficiency: $AMOUNT|Y2%$§!\n" - PRODUCTION_EFFICIENCY_WITH_GAIN:2 "£prod_eff §TProduction Efficiency: $AMOUNT|H2%$§! ($GAIN|H3%$ per day)" - PRODUCTION_EFFICIENCY_DESC:0 "§TAverage Factory Production Efficiency.\nProduction Efficiency Increases by $VALUE|H=2$%/unit produced split evenly on active Factories.§!" - PRODUCTION_RESOURCE_PENALTY:0 "§TLack of resources: $AMOUNT|R2%$§!" - PRODUCTION_ASSIGN_EQUIPMENT:0 "§TAssign Equipment to start production.§!" - PRODUCTION_MATERIALS_OIL:0 "Food" - PRODUCTION_MATERIALS_ALUMINIUM:0 "Mithril" - PRODUCTION_MATERIALS_RUBBER:0 "Leather" - PRODUCTION_MATERIALS_CHROMIUM:0 "Wood" - PRODUCTION_MATERIALS_STEEL:0 "Steel" - PRODUCTION_MATERIALS_TUNGSTEN:0 "String" - PRODUCTION_MATERIAL_VAL:0 "$VALUE|0H$" - PRODUCTION_VEHICLES_BUTTON:0 "Build Armored Vehicles" - PRODUCTION_VEHICLES_BUTTON_DISABLED:0 "Armored Vehicles are §RNot invented§!!" - PRODUCTION_VEHICLES_BUTTON_NO_FACTORIES_DISABLED:0 "We have §RNo military factories!§!" - PRODUCTION_INFANTRY_BUTTON:0 "Build Infantry & Artillery Equipment" - PRODUCTION_INFANTRY_BUTTON_DISABLED:0 "Infantry & Artillery Equipment is §RNot invented§!!" - PRODUCTION_INFANTRY_BUTTON_NO_FACTORIES_DISABLED:0 "We have §RNo military factories!§!" - PRODUCTION_AIRCRAFT_BUTTON:0 "Build Aircraft" - PRODUCTION_AIRCRAFT_BUTTON_DISABLED:0 "Aircraft is §RNot invented§!!" - PRODUCTION_AIRCRAFT_BUTTON_NO_FACTORIES_DISABLED:0 "We have §RNo military factories§!!" - PRODUCTION_SHIPS_BUTTON:0 "Build Ships" - PRODUCTION_SHIPS_BUTTON_DISABLED:0 "Ships are §RNot invented§!!" - PRODUCTION_SHIPS_BUTTON_NO_DEPLOY_DISABLED:0 "We have §RNo ports§!!" - PRODUCTION_SHIPS_BUTTON_NO_FACTORIES_DISABLED:0 "We have §RNo dockyards§!!" - PRODUCTION_CONSUMER_GOODS_VALUE:0 "$VALUE$" - PRODUCTION_CONSUMER_GOODS:0 "Consumer Goods" - PRODUCTION_CONSUMER_GOODS_LABEL:0 "§HConsumer Goods§!" - PRODUCTION_CONSUMER_GOODS_DESC:1 "With our current Economic Policy, the people expect $PERCENTAGE|H0%$ of our number of Civilian and Military Factories to produce Consumer Goods. This need is filled by Civilian Factories only, leaving us with $OPERATIONAL|H$ factories where $TRADE_USABLE|H$ can be used for trade." - PRODUCTION_CIV_AND_MIL_FACTORIES:0 "Civilian and Military Factories: $KEY|H$" - PRODUCTION_REQ_CONSUMER_GOODS_FACTORIES:0 "Required Consumer Goods Factories: $KEY|H$" - PRODUCTION_MATERIAL_COST_DESC:0 "§TThis Production Line uses $AMOUNT|0H$ unit of $MATERIAL|H$.§!" - PRODUCTION_MATERIAL_COST_LACKING_DESC:2 "§T$AMOUNT|0H$ more units are required for full efficiency.§!\nProduction will continue at §Rreduced speed§!." - PRODUCTION_LINE_CANCEL:4 "§GClick§! to §RCancel§! this Production Line.\n§GShift+Click§! to §RCancel§! all Production Lines." - PRODUCTION_LINE_CANCEL_SHIP_REFIT:1 "§GClick§! to §RScuttle§! this Ship which is being refit." - PRODUCTION_CREATE_VARIANT:0 "§HCreate variant§!" - PRODUCTION_CANCEL_CONSTRUCTION:0 "§TCancel this construction.§!" - PRODUCTION_VARIANT_OBSOLETE_YES:1 "Recommission" - PRODUCTION_VARIANT_OBSOLETE_NO:1 "Decommission" - PRODUCTION_VARIANT_OBSOLETE_YES_DESC:0 "§GClick§! to recommission this variant, marking it as up-to-date equipment." - PRODUCTION_VARIANT_OBSOLETE_NO_DESC:0 "§GClick§! to decommission this variant, marking it as outdated equipment." - TRADE_FACTORIES_VALUE:0 "$VALUE$/$TOT$" - CONFIRMCANCELPRODUCTIONLINE_TITLE:0 "Cancel Production Line" - CONFIRMCANCELPRODUCTIONLINE_DESC:0 "Are you sure you want to §Rcancel§! this Production Line?" - CONFIRMCANCELALLPRODUCTIONLINE_TITLE:0 "Cancel All Lines" - CONFIRMCANCELALLPRODUCTIONLINE_DESC:0 "Are you sure you want to §Rcancel§! all Production Lines?" - CONFIRM_SWITCH_PRODUCTION_MODEL_TITLE:0 "Switch Equipment" - CONFIRM_SWITCH_PRODUCTION_MODEL_DESC:0 "Are you sure you want to §Rswitch§! Equipment? This makes you lose $DAYS|R$ days of production." - CONFIRMCANCELCONSTRUCTION_TITLE:0 "Cancel construction" - CONFIRMCANCELCONSTRUCTION_DESC:0 "Are you sure you want to §Rcancel§! the construction of $CONSTRUCTION|H$ in $REGION|H$?" - CONFIRMCANCELCONSTRUCTION_RAILWAY_DESC:0 "Are you sure you want to §Rcancel§! the construction of railway $NAME|H$" - CONFIRMCANCELCONSTRUCTIONS_TITLE:0 "Cancel constructions" - CONFIRMCANCELCONSTRUCTIONS_DESC:0 "Are you sure you want to §Rcancel§! all constructions?" - INFINITY:0 "£infinity_icon" - PRODUCTION_EQUIPMENT_NEED:0 "Need: $AMOUNT|Y$" - PRODUCTION_DEPLOY_TO_BASE:0 "Deploy to port: $BASE|H$" - PRODUCTION_DEPLOY_TO_FLEET:1 "Deploy to task force: $FLEET|H$" - PRODUCTION_DEPLOY_TO_RESERVE_FLEET_THEATER:1 "Deploy to the Reserve of theater: $THEATER|H$" - PRODUCTION_NAVAL_DEPLOYMENT_FLEET_INVALID_BASE:0 "Deploy target $FLEET|H$ has no base." - PRODUCTION_NAVAL_DEPLOYMENT_FLEET:1 "Deploy target task force $FLEET|H$ with base in $STATE|H$." - PRODUCTION_NAVAL_DEPLOYMENT_THEATER:0 "Deploy target theater $THEATER|H$ with base in $STATE|H$." - PRODUCTION_NAVAL_DEPLOYMENT_BASE:0 "Deploy target base in $STATE|H$." - PRODUCTION_NAVAL_DEPLOYMENT_INVALID_BASE:0 "No deploy target set." - PRODUCTION_NAVAL_DEPLOYMENT_NOT_DEPLOYABLE:0 "Not deployable" - PRODUCTION_NAVAL_DEPLOYMENT_AUTO_DEPLOYMENT:0 "Auto" - PRODUCTION_NAVAL_DEPLOYMENT_SCRAPPING:0 "Scrapping" - PRODUCTION_NAVAL_DEPLOYMENT_SCRAPPING_DESC:0 "No valid base to deploy to. Unit will be scrapped upon completion." - PRODUCTION_NAVAL_DEPLOYMENT_STOCKPILING:0 "Stockpiling" - PRODUCTION_RIGHT_CLICK_TO_ZOOM:0 "§GRight-click to go to province§!" - PRODUCTION_NAVAL_DEPLOY_LIST:0 "Deploy target" - WEEKLY_PRODUCTION:0 "Weekly production" - PRODUCTION_WORKING_FACTORIES:0 "This is the amount of Factories that are currently working on one of your Production Lines." - PRODUCTION_WORKING_DOCKYARDS:0 "This is the amount of Dockyards that are currently working on one of your Production Lines." - PRODUCTION_WORKING_DOCKYARDS_FOR_REPAIRS:0 "This is the amount of Dockyards that are currently used for ship repairs." - PRODICTION_MIC_TRANSFERED:0 "$AMOUNT|Y$ of our factories are used by $OVERLORD|Y$." - PRODICTION_MIC_RECEIVED_FROM_SUBJECT:0 "$AMOUNT|Y$ of military factories are received from our subjects." - PRODICTION_MIC_SENT_TO_OVERLORD:0 "$AMOUNT|R$ of our military factories are given to our overlord, and we have left only $LEFT|H$." - PRODICTION_MIC_RECEIVED_FROM_EXILE_DONATIONS:0 "$AMOUNT|Y$ of our military factories are donations from the exiled governments we host." - PRODUCTION_CIVILIAN_FACTORIES_AVAILABLE:0 "Available for construction: $VALUE|Y$" - PRODUCTION_CIVILIAN_FACTORIES_CURRENTLY:0 "In Use: $VALUE|R$" - PRODUCTION_MAX_EFFICIENCY_BASE:0 "Base Cap: $VALUE|Y%$" - PRODUCTION_MAX_EFFICIENCY_TOT:0 "£prod_eff_cap Production Efficiency Cap: $VALUE|Y%$" - PRODUCTION_MAX_EFFICIENCY_HINT:0 "£prod_eff_cap Production Efficiency Cap determines the maximum value for your £prod_eff Production Efficiency. It can be increased by £tech_mod Technologies." - PRODUCTION_RESOURCES_PER_FACTORY:0 "§HResources per factory to produce:§!" - PRODUCTION_MATERIAL_NO_WASTE:0 "Line is not wasting any of this resource." - PRODUCTION_MATERIAL_WASTE:0 "Line is wasting $WASTE|R2$ of this resource." - PRODUCTION_SPEED:0 "Production speed: $SPEED|Y$" - PRODUCTION_SPEED_MODIFIERS:0 "§YProduction output modified by:§!" - INDUSTRIAL_CAPACITY_FACTOR:0 "Factory Output: $VALUE|Y$" - INDUSTRIAL_CAPACITY_FACTOR_MODIFIERS:0 "Factory Output modified by:" - INDUSTRIAL_PROGRESS:0 "$BUILDING|H$ is $PROGRESS|0H$/$COST|0H$ ( $VALUE|0%H$ ) completed." - INDUSTRIAL_PROGRESS_REPAIR:0 "$BUILDING|H$ repair progress: $PROGRESS|%0H$" - INDUSTRIAL_BASE_FACTORY_OUTPUT:0 "Base factory output: $VALUE|H$" - INDUSTRIAL_BASE_SPEED:0 "Output from $FACTORIES|0H$ factories: $VALUE|H$" - PROD_COST_VALUE:0 "£production_cost $VALUE$" - NAVPROD_COST_VALUE:0 "£navprod_cost $VALUE$" - PRODUCTION_CIVILIAN_FACTORIES_OWNED:0 "Owned: $VAL|H$" - PRODUCTION_CIVILIAN_FACTORIES_BORROWED:0 "From exports: +$VAL|H$" - PRODUCTION_CIVILIAN_FACTORIES_FROM_SUBJECTS:0 "From subjects: +$VAL|H$" - PRODUCTION_CIVILIAN_FACTORIES_SENT_TO_MASTER:0 "Given to Overlord: $VAL|R$" - PRODUCTION_CIVILIAN_FACTORIES_FROM_OTHERS:0 "From other countries: +$VAL|H$" - PRODUCTION_CIVILIAN_FACTORIES_SENT_TO_OTHERS:0 "Given to other countries: $VAL|R$" - PRODUCTION_CIVILIAN_FACTORIES_DAMAGED:0 "Damaged: $VAL|R$" - PRODUCTION_EQUIPMENT_TOTAL_NEED:2 "$VALUE|0Y$" - PRODUCTION_EQUIPMENT_TOTAL_NEED_FILLED:1 "$AMOUNT|0G$" - PRODUCTION_EQUIPMENT_TOTAL_NEED_UPGRADE:1 "$VALUE|0Y$" - PRODUCTION_EQUIPMENT_DAILY_BALANCE:0 "Daily balance: $VALUE|=2Y$" - PRODUCTION_EQUIPMENT_FILL_ESTIMATION:0 "With current daily balance we will §YFill§! our needs in $VALUE|0Y$ Days." - PRODUCTION_EQUIPMENT_FILLED:0 "Our needs are §GFilled§! for now." - PRODUCTION_EQUIPMENT_LOSSES:0 "We lost $VALUE|R$ equipment yesterday." - PROD_LINE_PLANE_DEST_RESERVES_DUE_TO_MANPOWER:0 "Moved to §YReserves§! due insufficient §HManpower§! for the requested §YReinforcements§!" - PROD_LINE_PLANE_DEST_RESERVES:1 "Moved to §YReserves§!" - PROD_LINE_PLANE_DEST_UPGRADING:2 "Needed for §YUpgrades§!" - PROD_LINE_PLANE_DEST_REINFORCEMENT:2 "Needed for §YReinforcement§!" - PROD_LINE_LAND_DEST_RESERVES:1 "Being §YStockpiled§!" - PROD_LINE_LAND_DEST_UPGRADING:2 "Needed for §YUpgrades§!" - PROD_LINE_LAND_DEST_REINFORCEMENT:2 "Needed for §YReinforcement§!" - CONFIRM_REMOVE_BUILDING_LEVEL_TITLE:0 "Remove Building" - CONFIRM_REMOVE_BUILDING_LEVEL_DESC:0 "Are you sure you want to §Rremove§! this Building?" - CONFIRM_REMOVE_CONSTRUCTION_LEVEL_TITLE:0 "Cancel Construction" - CONFIRM_REMOVE_CONSTRUCTION_LEVEL_DESC:0 "Are you sure you want to §Rcancel§! this Construction?" - CONFIRM_REMOVE_CONVERSION_LEVEL_TITLE:0 "Cancel Conversion" - CONFIRM_REMOVE_CONVERSION_LEVEL_DESC:0 "Are you sure you want to §Rcancel§! this Conversion?" - CONFIRM_ADD_CONVERSION_LEVEL_TITLE:0 "Start Conversion" - CONFIRM_ADD_CONVERSION_LEVEL_DESC:0 "Are you sure you want to §Rconvert§! this Building?" - PRODUCTION_EFFICIENCY_GAIN_BASE:0 "Daily base gain: $VAL|%Y$" - PRODUCTION_RESOURCE_FACTOR:0 "Lack of resources: $VAL|%+$" - PRODUCTION_OUTPUT_EXPLAIN:0 "Our $FACTORIES|Y$ £factory_item Military Factories contribute $OUTPUT|Y$ £production_cost . \n$ITEM|Y$ has a cost of $ITEM_COST|2Y$ £production_cost , which means we can produce $PERTIMEPERIOD$.\n" - PRODUCTION_OUTPUT_EXPLAIN_NAVAL:0 "Our $FACTORIES|Y$ £naval_factory_icon Naval Dockyards contribute £navprod_cost $OUTPUT|Y$.\n$ITEM|Y$ has a cost of $ITEM_COST|2Y$ £navprod_cost , which means we can produce $PERTIMEPERIOD$.\n" - PRODUCTION_UNITS_PER_DAY:0 "$UNITS|Y$ units per day" - PRODUCTION_UNITS_PER_WEEK:0 "$UNITS|Y$ units per week" - PRODUCTION_UNITS_PER_MONTH:0 "$UNITS|Y$ units per month" - PRODUCTION_UNITS_PER_YEAR:0 "$UNITS|Y$ units per year" - PRODUCTION_FACTORY_ASSIGN_DESC:1 "Click to assign £factory_item $FACTORIES|Y$ §YMilitary Factories§! to this Production Line. This would give a base production output of £production_cost $OUTPUT|Y$ per day.\nThe total output will be affected by §YResources§!, §YProduction Efficiency§! and other §YProduction modifiers§!." - PRODUCTION_DOCKYARD_ASSIGN_DESC:1 "Click to assign £naval_factory_icon $FACTORIES|Y$ §YNaval Dockyards§! to this Production Line. This will give a base production output of £navprod_cost $OUTPUT|Y$ per day. \nThe total output will be affected by §YResources§! and other §YProduction modifiers§!." - PRODUCTION_BASE_OUTPUT:0 "Base output: $VALUE|Y$ x $MUL|Y$" - PRODUCTION_EFF_GAIN_HINT:0 "§YEfficiency gain speed modified by:§!" - CARRIER_AIR_WING_COMPOSITION_TITLE:0 "Set the default composition of Air Wings for this Carrier" - CARRIER_AIR_WING_LIMIT_UNDER:0 "$COUNT|Y$/$LIMIT$" - CARRIER_AIR_WING_LIMIT_MATCH:0 "$COUNT|G$/$LIMIT$" - CARRIER_AIR_WING_LIMIT_OVER:0 "$COUNT|R$/$LIMIT$" - CARRIER_AIR_WING_LIMIT_DESC:0 "Airplanes/Carrier capacity" - CARRIER_AIR_WING_LIMIT_DESC_UNDER:0 "§YThe capacity of this carrier won't be fully used§!" - CARRIER_AIR_WING_LIMIT_DESC_OVER:0 "§RThe capacity of this Carrier will be exceeded and the Air Wings stationed there will suffer a penalty§!" - CARRIER_AIR_WING_INCREASE:0 "Increase amount\n§GCtrl+click to increase by§! §H5§!\n§GShift+click to increase by§! §H10§!" - CARRIER_AIR_WING_DECREASE:0 "Decrease amount\n§GCtrl+click to decrease by§! §H5§!\n§GShift+click to decrease by§! §H10§!" - PRODUCTION_ENTRY_NEW:0 "§GNEW§!" - PRODUCTION_ENTRY_OUTDATED:0 "§HOUTDATED§!" - PRODUCTION_LINE_CHANGE:0 "§GClick to §Hchange§! the produced equipment.\nYou will retain some of the Efficiency if you switch to a newer version of the same equipment.\n§!§RYou will lose all progress for this line.§!" - PRODUCTION_LINE_CHANGE_NAVAL:0 "§GClick to §Hchange§! the produced equipment.\n§!§RYou will lose all progress for this line.§!" - PRODUCTION_EQUIPMENT_FILTER:0 "Infantry & Artillery Equipment" - PRODUCTION_ARMOR_FILTER:0 "Armored Vehicles" - PRODUCTION_AIR_FILTER:0 "Aircraft" - PRODUCTION_CAPITAL_SHIPS_FILTER:0 "Capital Ships" - PRODUCTION_SCREEN_SHIPS_FILTER:0 "Screen Ships" - PRODUCTION_OTHER_SHIPS_FILTER:0 "Other Ships" - PRODUCTION_LACKING_RESOURCES_FILTER:0 "Fulfilled Resources" - PRODUCTION_STOCKPILING_FILTER:0 "Stockpiling" - PRODUCTION_REINFORCING_FILTER:0 "Reinforcing" - PRODUCTION_UPGRADING_FILTER:0 "Upgrading" - PRODUCTION_OUTDATED_FILTER:0 "Up to date models" - PRODUCTION_REFITTING_FILTER:0 "Refitting" - PRODUCTION_FILTER_CLICK_TO_HIDE:0 "§GClick§! to §Rhide§! all of this category." - PRODUCTION_FILTER_CLICK_TO_SHOW:0 "§GClick§! to §Gshow§! all of this category." - PRODUCTION_FILTER_SHIFTCLICK:1 "\n§GShift+Click§! to §Rhide§! everything else." - PRODUCTION_FILTER_SHIFTCLICK_AGAIN:0 "\n§GShift+Click§! to §Gshow§! everything again." - PRODUCTION_FILTER_RIGHTCLICK:0 "\n§GRight Click§! to toggle collapsing all of this category." - PRODUCTION_FILTER_ARMS_FACTORIES:0 "Military Factories used" - PRODUCTION_FILTER_DOCKYARDS:0 "Naval Dockyards used" - - - INTEL_CIVILIAN_FACTORIES_USED_ON_TRADE:0 "Estimated Civilian Factories used on trade" - INTEL_ARMS_FACTORIES_USED_ON_EQUIPMENT:0 "Estimated Military Factories used on military equipments" - INTEL_ARMS_FACTORIES_USED_ON_ARMOR:0 "Estimated Military Factories used on armored vehicles" - INTEL_ARMS_FACTORIES_USED_ON_AIR:0 "Estimated Military Factories used on aircrafts" - INTEL_DOCKYARDS_USED_ON_CAPITAL:0 "Estimated Naval Dockyards used capital ships" - INTEL_DOCKYARDS_USED_ON_SCREEN:0 "Estimated Naval Dockyards used screen ships" - INTEL_DOCKYARDS_USED_ON_OTHER:0 "Estimated Naval Dockyards used other ships" - - - PRODUCTION_DRAG_N_DROP:0 "§GDrag and drop§! to change the §Ypriority§!." - PRODUCTION_COLLAPSE:2 "§GClick§! to collapse.\n§GCtrl + Click§! to collapse all of this category.\n§GShift + Click§! to collapse all Production Lines." - PRODUCTION_EXPAND:2 "§GClick§! to expand.\n§GCtrl + Click§! to expand all of this category.\n§GShift + Click§! to expand all Production Lines." - PRODUCTION_FACTORY_SCALE_UP:0 "§GClick§! to scale up to §Y$SCALE$x§! view." - PRODUCTION_FACTORY_SCALE_DOWN:0 "§GClick§! again to scale down to §Y1x§! view." - PRODUCTION_ADD_FACTORIES_CLICK:0 "§GClick§! to add §Y+1§!\n§GCtrl + Click§! to add §Y+5§!\n§GShift + Click§! to add §Y+10§!" - PRODUCTION_SUB_FACTORIES_CLICK:0 "§GClick§! to subtract §Y1§!\n§GCtrl + Click§! to subtract §Y5§!\n§GShift + Click§! to subtract §Y10§!" - PRODUCTION_ADD_1:0 "§GClick§! to add §Y+1§!" - PRODUCTION_ADD_5:0 "§GCtrl + Click§! to add §Y+5§!" - PRODUCTION_ADD_10:0 "§GShift + Click§! to add §Y+10§!" - PRODUCTION_SUB_1:0 "§GClick§! to subtract §Y1§!" - PRODUCTION_SUB_5:0 "§GCtrl + Click§! to subtract §Y5§!" - PRODUCTION_SUB_10:0 "§GShift + Click§! to subtract §Y10§!" - PRODUCTION_ADD_NAVAL_FACTORIES_CLICK:0 "§GClick§! to add §Y+1§!" - PRODUCTION_SUB_NAVAL_FACTORIES_CLICK:0 "§GClick§! to subtract §Y1§!" - PRODUCTION_CLICK_TO_APPEND_OR_INSERT:0 "§GClick§! to append new production line at the end.\n§GShift + Click§! to put a new production line at the top." - PRODUCTION_NAVAL_DEPLOYMENT_STATE_NAME:0 "$STATE$ ($LVL|Y$)" - PRODUCTION_LINE_CONVERT_NO_EQUIPMENT_IN_STOCK:0 "§RCurrently there is no equipment in stock that we could use to convert into: $VARIANT|H$§!" - PRODUCTION_LINE_CONVERT_HEADER:0 "Convert from Stockpile" - PRODUCTION_LINE_CONVERT_ORDER_OF_CONVERSION:0 "Order of conversion:" - PRODUCTION_LINE_CONVERT_ORDER_OF_CONVERSION_ENTRY:0 "\n $NUM|Y2$ of $VARIANT|G$ (§H$TYPE$§!) with cost: " - PRODUCTION_LINE_CONVERT_ORDER_OF_CONVERSION_FREE_ENTRY:0 "\n $NUM|Y2$ of $VARIANT|G$ (§H$TYPE$§!)" - PRODUCTION_LINE_CONVERT_RESOURCE_COST_ENTRY:0 "§H$NUM$§!£resources_strip|$FRAME$ " - PRODUCTION_LINE_CONVERT_DESC:1 "Convert from stockpile will use §Houtdated equipment§! or §Hcaptured equipment§! within the stockpile and convert them into modified vehicles requested from the current production line at a reduced cost. This will continue until the stockpile is empty." - PRODUCTION_LINE_CONVERT_SPEED_TOTAL:1 "Conversion speed: §G+§!$SPD|G%0$" - PRODUCTION_LINE_CONVERT_SPEED_BASE:0 "Base: $VAL|Y0%$" - PRODUCTION_LINE_CONVERT_RES_NEED:0 "Resources needed to convert from $NAME|Y$:" - PRODUCTION_LINE_CONVERT_RES_NEED_ENTRY:0 "\n £resources_strip|$FRAME$: ($NEW|Y0$-$OLD|G0$)=$SUM|R0$" - PRODUCTION_LINE_SHIP_NAME_ALLOCATE:0 "This name is not assigned to any other ship yet. §GClick§! add button to assign this name to this production queue." - LICENSED_EQUIPMENT_PRODUCTION_SPEED_TOTAL_SIMPLE:0 "§HLicense production§!: $VALUE|+%$" - LICENSED_EQUIPMENT_PRODUCTION_SPEED_TOTAL:0 "§HLicense production factory output§!\nTotal: $VALUE|+%$\nBreakdown:" - LICENSED_EQUIPMENT_TECH_SPEED_REDUCTION:1 "§YLicense technology difference§!:\n Base: $BASE|+%$\n Modified total: $TOTAL|+%$" - LICENSED_EQUIPMENT_PRODUCTION_SPEED_MODIFIER:1 "§YLicense modifier§!:\n Base: $BASE|+%$\n Modified total: $TOTAL|+%$" - LICENSED_EQUIPMENT_PRODUCTION_SPEED_NOT_FACTION:0 "§YNot in faction with licensor§!: $VALUE|+%$" - LICENSED_EQUIPMENT_PRODUCTION_SPEED_NO_LICENSE:0 "§YNo active license§!: $VALUE|+%$" - LICENSED_EQUIPMENT_UPGRADE_XP_COST_MODIFIER:0 "Licensed Equipment: $VAL$" - LICENSED_PURCHASE_CIC_COST:1 "§YThis license costs§!: £civ_factory $AMOUNT|Y$" - PRODUCTION_NAVAL_REPAIRS_LABEL:0 "Repair Queue" - PRODUCTION_NAVAL_NAME_LIST:0 "Ship Names" - PRODUCTION_NAVAL_NAME_LIST_BUTTON_FALLBACK:0 "Ship Names" - PRODUCTION_NAVAL_NAME_LIST_EMPTY_NOT_ALLOWED:0 "§REmpty names are not allowed.§!" - PRODUCTION_NAVAL_NAME_LIST_TOO_FEW_PRODUCED:0 "§RNames will exceed the number of ships in the production queue.§!" - PRODUCTION_NAVAL_NAME_LIST_REMOVE:0 "§GClick§! to §Hremove name§!" - PRODUCTION_NAVAL_NAME_LIST_NAME_RESERVED:0 "$NAME|H$ is already in use." - PRODUCTION_NAVAL_NAME_LIST_ADD_NAME:0 "§GClick§! to name the next $EQUIPMENT|H$ from this line $NAME|H$." - PRODUCTION_NAVAL_NAME_LIST_BUTTON_NAME:0 "The next $EQUIPMENT|H$ from this line will be named $NAME|H$." - PRODUCTION_NAVAL_NAME_LIST_BUTTON_CLICK:0 "§GClick§! to change name." - PRODUCTION_SHIP_REFIT_TOTAL_COSTS:0 "§HTotal costs for $COUNT|T$ ships:§!\n" - PRODUCTION_SHIP_REFIT_BASE_ICCOST:0 "Base Equipment: $ICCOST|H2$" - PRODUCTION_SHIP_REFIT_MODULE_BUILD_ICCOST:0 "New Modules: $ICCOST|H2$" - PRODUCTION_SHIP_REFIT_MODULE_CONVERT_ICCOST:0 "Converted Modules: $ICCOST|H2$" - PRODUCTION_SHIP_REFIT_MODULE_DISMANTLE_ICCOST:0 "Dismantled Modules: $ICCOST|H2$" - PRODUCTION_SHIP_REFIT_QUICKEST_TIME:0 "With maximum §HDockyards§! assigned, this would take up to $DAYS|H$ days to complete." - PRODUCTION_SHIP_REFIT_TOOLTIP_DIFF_HEADER:0 "§HEffects of Refitting§!" - PRODUCTION_SHIP_REFIT_TOOLTIP_FROM_VARIANT_HEADER:0 "From $VARIANT$ ($SHIP_COUNT|H$ selected)" - PRODUCTION_SHIP_REFIT_TOOLTIP_NO_STAT_CHANGES:0 "no stat changes" - PRODUCTION_SHIP_REFIT_TOOLTIP_MORE_VARIANTS:0 "and other equipment variants ($SHIP_COUNT|H$ selected)" - PRODUCTION_SUB_UNIT_FILTER:0 "Show only $SUBUNIT|H$ ($COUNT|H$ match)" - PRODUCTION_EQUIPMENT_ROLE_NO_FILTER:0 "Show all roles" - PRODUCTION_EQUIPMENT_ROLE_FILTER:0 "Show only equipments with the role $ROLE|H$" - diff --git a/localisation/english/replace/traits_l_english.yml b/localisation/english/replace/traits_l_english.yml deleted file mode 100644 index 7d81be38e..000000000 --- a/localisation/english/replace/traits_l_english.yml +++ /dev/null @@ -1,1032 +0,0 @@ -l_english: - dislikes_mirkwood:0 "Dislikes Elves" - dislikes_erebor:0 "Dislikes Erebor" - ringbearer:0 "Ringbearer" - ringbearer_2:0 "Ringbearer" - ringbearer_2_desc:0 "One of the few individuals to posses a magical ring." - ringbearer_desc:0 "One of the few individuals to posses a magical ring." - legacyofmorgoth:0 "Legacy of Morgoth" - legacyofmorgoth_desc:0 "Most trusted advisor and heir to the first Dark Lord, Morgoth." - lackofauthority:0 "Lack of authority" - lackofauthority_desc:0 "The Free Orcs of Mordor follow only the strongest. A council of the most ferocious orcs may provide sly guidance but the orcs will retain their freedom." - all_seeing_eye:0 "All seeing eye" - all_seeing_eye_desc:0 "'Concealed within his fortress, the Lord of Mordor sees all — his gaze pierces cloud, shadow, earth and flesh. You know of what I speak, Gandalf — a great Eye… lidless… wreathed in flame.'" - puppet_queen:0 "Puppet Queen" - withering_king:0 "Withering King" - slow_speaker:0 "Slow Speaker" - ################################ - cc_leader:0 "General" - fm_leader:0 "Field Marshal" - navy_leader:0 "Admiral" - operative_skill_1:0 "Recruit" - operative_skill_2:0 "Agent" - communist_revolutionary:0 "Communist Revolutionary" - communist_revolutionary_desc:0 "§LA supporter of the international revolution hoping to aid the country's, and eventually the world's, transition to a communist society.§!" - cooperative_reformer:0 "Democratic Reformer" - cooperative_reformer_desc:0 "§LA firm believer in the people's right to rule themselves, this politician sees empowering them as the first priority and aims for the country to be ruled with their mandate.§!" - fascist_demagogue:0 "Fascist Demagogue" - fascist_demagogue_desc:0 "§LDriven by a will to unite the people under a strong state, this politician emphasizes nationalist and militarist rhetoric.§!" - staunch_monarchist:0 "Staunch Monarchist" - staunch_monarchist_desc:0 "§LThis politician believes that a hereditary ruler serves as a powerful icon to unite the country.§!" - ideological_crusader:0 "Ideological Crusader" - shadow_of_calles:0 "Shadow of Calles" - social_reformer:0 "Social Reformer" - red_army_organizer:0 "Red Army Organizer" - ambitious_union_boss:0 "Ambitious Union Boss" - syncretic_revanchist:0 "Syncretic Revanchist" - popular_figurehead:0 "Popular Figurehead" - silent_workhorse:0 "Silent Workhorse" - compassionate_gentleman:0 "Compassionate Gentleman" - economist:0 "Economist" - editor:0 "Editor" - reluctant_interventionist:0 "Reluctant Interventionist" - tenacious_negotiator:0 "Tenacious Negotiator" - retired_officer:0 "Retired Officer" - eager_collaborator:0 "Eager Collaborator" - duke_of_orleans:0 "Duke of Orléans" - reluctant_veteran:0 "Reluctant Veteran" - proletariat_internationalist:0 "Proletariat Internationalist" - hawk:0 "Hawk" - emergency_powers:0 "Emergency Powers" - technocrat:0 "Technocrat" - national_integralist:0 "National Integralist" - american_caesar:0 "American Caesar" - great_architect:0 "Great Architect" - constitutional_monarch:0 "Constitutional Monarch" - constitutional_monarch_minor:0 "Constitutional Monarch" - prince_of_terror:0 "Prince of Terror" - backroom_backstabber:0 "Backroom Backstabber" - smooth_talking_charmer:0 "Smooth-Talking Charmer" - fortification_engineer:0 "Fortification Engineer" - war_industrialist:0 "War Industrialist" - captain_of_industry:0 "Captain of Industry" - famous_aviator:0 "Famous Aviator" - financial_expert:0 "Financial Expert" - armaments_organizer:0 "Armaments Organizer" - quartermaster_general:0 "Quartermaster General" - rocket_scientist:0 "Rocket Scientist" - nuclear_scientist:0 "Nuclear Scientist" - propaganda_bungler:0 "Propaganda Bungler" - silent_mule:0 "Silent Mule" - baron_of_terror:0 "Baron of Terror" - compassionate_commoner:0 "Compassionate Commoner" - backroom_windbag:0 "Backroom Windbag" - smooth_talking_con_man:0 "Smooth-Talking Con-Man" - ideological_groupie:0 "Ideological Groupie" - fortification_armchair_general:0 "Fortification Armchair General" - war_profiteer:0 "War Profiteer" - lieutenant_of_industry:0 "Lieutenant of Industry" - finance_graduate:0 "Finance Graduate" - armaments_aficionado:0 "Armaments Aficionado" - quartermaster_trainee:0 "Quartermaster Trainee" - little_rocket_man:0 "Little Rocket Man" - nuclear_enthusiast:0 "Nuclear Enthusiast" - blitzkrieg_theorist:0 "Blitzkrieg Theorist" - council_of_theorists:0 "Council of Theorists" - military_theorist:0 "Military Theorist" - air_warfare_theorist:0 "Air Warfare Theorist" - dive_bomber:0 "Dive Bomber" - victory_through_airpower:0 "Victory Through Airpower" - close_air_support_proponent:0 "Close Air Support Proponent" - assault_avaition:0 "Assault Aviation" - naval_theorist:0 "Naval Theorist" - naval_aviation_pioneer:0 "Naval Aviation Pioneer" - grand_fleet_proponent:0 "Grand Fleet Proponent" - submarine_specialist:0 "Submarine Specialist" - tank_manufacturer:0 "Tank Designer" - artillery_manufacturer:0 "Artillery Designer" - infantry_equipment_manufacturer:0 "Infantry Equipment Designer" - support_equipment_manufacturer:0 "Support Equipment Designer" - motorized_equipment_manufacturer:0 "Motorized Equipment Designer" - naval_manufacturer:0 "Ship Designer" - industrial_concern:0 "Industrial Concern" - railway_company:0 "Railway Company" - construction_company:0 "Construction Company" - electronics_concern:0 "Electronics Concern" - electronics_developer:0 "Electronics Developer" - army_chief_defensive_1:1 "Army Defense\n(Specialist)" - army_chief_defensive_2:2 "Army Defense\n(Expert)" - army_chief_defensive_3:1 "Army Defense\n(Genius)" - army_chief_offensive_1:1 "Army Offense\n(Specialist)" - army_chief_offensive_2:1 "Army Offense\n(Expert)" - army_chief_offensive_3:1 "Army Offense\n(Genius)" - army_chief_planning_1:1 "Army Planning\n(Specialist)" - army_chief_planning_2:1 "Army Planning\n(Expert)" - army_chief_planning_3:1 "Army Planning\n(Genius)" - army_chief_drill_1:1 "Army Drill\n(Specialist)" - army_chief_drill_2:1 "Army Drill\n(Expert)" - army_chief_drill_3:1 "Army Drill\n(Genius)" - army_chief_reform_1:1 "Army Reformer\n(Specialist)" - army_chief_reform_2:1 "Army Reformer\n(Expert)" - army_chief_reform_3:1 "Army Reformer\n(Genius)" - army_chief_organizational_1:1 "Army Organization\n(Specialist)" - army_chief_organizational_2:1 "Army Organization\n(Expert)" - army_chief_organizational_3:1 "Army Organization\n(Genius)" - army_chief_morale_1:1 "Army Morale\n(Specialist)" - army_chief_morale_2:1 "Army Morale\n(Expert)" - army_chief_morale_3:1 "Army Morale\n(Genius)" - army_chief_maneuver_1:1 "Army Maneuver\n(Specialist)" - army_chief_maneuver_2:1 "Army Maneuver\n(Expert)" - army_chief_maneuver_3:1 "Army Maneuver\n(Genius)" - army_chief_old_guard:0 "Old Guard" - army_entrenchment_1:1 "Entrenchment\n(Specialist)" - army_entrenchment_2:1 "Entrenchment\n(Expert)" - army_entrenchment_3:1 "Entrenchment\n(Genius)" - army_armored_1:1 "Armor\n(Specialist)" - army_armored_2:1 "Armor\n(Expert)" - army_armored_3:1 "Armor\n(Genius)" - army_artillery_1:1 "Artillery\n(Specialist)" - army_artillery_2:1 "Artillery\n(Expert)" - army_artillery_3:1 "Artillery\n(Genius)" - army_infantry_1:1 "Infantry\n(Specialist)" - army_infantry_2:1 "Infantry\n(Expert)" - army_infantry_3:1 "Infantry\n(Genius)" - army_commando_1:1 "Commando\n(Specialist)" - army_commando_2:1 "Commando\n(Expert)" - army_commando_3:1 "Commando\n(Genius)" - army_cavalry_1:1 "Cavalry\n(Specialist)" - army_cavalry_2:1 "Cavalry\n(Expert)" - army_cavalry_3:1 "Cavalry\n(Genius)" - army_CombinedArms_1:1 "Combined Arms\n(Specialist)" - army_CombinedArms_2:1 "Combined Arms\n(Expert)" - army_CombinedArms_3:1 "Combined Arms\n(Genius)" - army_regrouping_1:1 "Army Regrouping\n(Specialist)" - army_regrouping_2:1 "Army Regrouping\n(Expert)" - army_regrouping_3:1 "Army Regrouping\n(Genius)" - army_concealment_1:1 "Concealment\n(Specialist)" - army_concealment_2:1 "Concealment\n(Expert)" - army_concealment_3:1 "Concealment\n(Genius)" - army_logistics_1:1 "Army Logistics\n(Specialist)" - army_logistics_2:1 "Army Logistics\n(Expert)" - army_logistics_3:1 "Army Logistics\n(Genius)" - air_chief_reform_1:1 "Air Reformer\n(Specialist)" - air_chief_reform_2:1 "Air Reformer\n(Expert)" - air_chief_reform_3:1 "Air Reformer\n(Genius)" - air_chief_safety_1:1 "Air Safety\n(Specialist)" - air_chief_safety_2:1 "Air Safety\n(Expert)" - air_chief_safety_3:1 "Air Safety\n(Genius)" - air_chief_night_operations_1:1 "Night Operations\n(Specialist)" - air_chief_night_operations_2:1 "Night Operations\n(Expert)" - air_chief_night_operations_3:1 "Night Operations\n(Genius)" - air_chief_ground_support_1:1 "Ground Support\n(Specialist)" - air_chief_ground_support_2:1 "Ground Support\n(Expert)" - air_chief_ground_support_3:1 "Ground Support\n(Genius)" - air_chief_all_weather_1:1 "All-Weather\n(Specialist)" - air_chief_all_weather_2:1 "All-Weather\n(Expert)" - air_chief_all_weather_3:1 "All-Weather\n(Genius)" - air_chief_old_guard:0 "Old Guard" - air_air_combat_training_1:1 "Air Combat Training\n(Specialist)" - air_air_combat_training_2:1 "Air Combat Training\n(Expert)" - air_air_combat_training_3:1 "Air Combat Training\n(Genius)" - air_naval_strike_1:1 "Naval Strike\n(Specialist)" - air_naval_strike_2:1 "Naval Strike\n(Expert)" - air_naval_strike_3:1 "Naval Strike\n(Genius)" - air_bomber_interception_1:1 "Bomber Interception\n(Specialist)" - air_bomber_interception_2:1 "Bomber Interception\n(Expert)" - air_bomber_interception_3:1 "Bomber Interception\n(Genius)" - air_air_superiority_1:1 "Air Superiority\n(Specialist)" - air_air_superiority_2:1 "Air Superiority\n(Expert)" - air_air_superiority_3:1 "Air Superiority\n(Genius)" - air_close_air_support_1:1 "Close Air Support\n(Specialist)" - air_close_air_support_2:1 "Close Air Support\n(Expert)" - air_close_air_support_3:1 "Close Air Support\n(Genius)" - air_strategic_bombing_1:1 "Strategic Bombing\n(Specialist)" - air_strategic_bombing_2:1 "Strategic Bombing\n(Expert)" - air_strategic_bombing_3:1 "Strategic Bombing\n(Genius)" - air_tactical_bombing_1:1 "Tactical Bombing\n(Specialist)" - air_tactical_bombing_2:1 "Tactical Bombing\n(Expert)" - air_tactical_bombing_3:1 "Tactical Bombing\n(Genius)" - air_airborne_1:1 "Airborne Assault\n(Specialist)" - air_airborne_2:1 "Airborne Assault\n(Expert)" - air_airborne_3:1 "Airborne Assault\n(Genius)" - navy_chief_naval_aviation_1:1 "Naval Aviation\n(Specialist)" - navy_chief_naval_aviation_2:1 "Naval Aviation\n(Expert)" - navy_chief_naval_aviation_3:1 "Naval Aviation\n(Genius)" - navy_chief_decisive_battle_1:1 "Decisive Battle\n(Specialist)" - navy_chief_decisive_battle_2:1 "Decisive Battle\n(Expert)" - navy_chief_decisive_battle_3:1 "Decisive Battle\n(Genius)" - navy_chief_commerce_raiding_1:1 "Commerce Raiding\n(Specialist)" - navy_chief_commerce_raiding_2:1 "Commerce Raiding\n(Expert)" - navy_chief_commerce_raiding_3:1 "Commerce Raiding\n(Genius)" - navy_chief_reform_1:1 "Naval Reformer\n(Specialist)" - navy_chief_reform_2:1 "Naval Reformer\n(Expert)" - navy_chief_reform_3:1 "Naval Reformer\n(Genius)" - navy_chief_maneuver_1:1 "Naval Maneuver\n(Specialist)" - navy_chief_maneuver_2:1 "Naval Maneuver\n(Expert)" - navy_chief_maneuver_3:1 "Naval Maneuver\n(Genius)" - navy_chief_old_guard:0 "Old Guard" - navy_anti_submarine_1:1 "Anti-Submarine\n(Specialist)" - navy_anti_submarine_2:1 "Anti-Submarine\n(Expert)" - navy_anti_submarine_3:1 "Anti-Submarine\n(Genius)" - navy_naval_air_defense_1:1 "Naval Air Defense\n(Specialist)" - navy_naval_air_defense_2:1 "Naval Air Defense\n(Expert)" - navy_naval_air_defense_3:1 "Naval Air Defense\n(Genius)" - navy_fleet_logistics_1:1 "Fleet Logistics\n(Specialist)" - navy_fleet_logistics_2:1 "Fleet Logistics\n(Expert)" - navy_fleet_logistics_3:1 "Fleet Logistics\n(Genius)" - navy_amphibious_assault_1:1 "Amphibious Assault\n(Specialist)" - navy_amphibious_assault_2:1 "Amphibious Assault\n(Expert)" - navy_amphibious_assault_3:1 "Amphibious Assault\n(Genius)" - navy_submarine_1:1 "Submarines\n(Specialist)" - navy_submarine_2:1 "Submarines\n(Expert)" - navy_submarine_3:1 "Submarines\n(Genius)" - navy_destroyer_1:1 "Destroyers\n(Specialist)" - navy_destroyer_2:1 "Destroyers\n(Expert)" - navy_destroyer_3:1 "Destroyers\n(Genius)" - navy_cruiser_1:1 "Cruisers\n(Specialist)" - navy_cruiser_2:1 "Cruisers\n(Expert)" - navy_cruiser_3:1 "Cruisers\n(Genius)" - navy_battleship_1:1 "Battleships\n(Specialist)" - navy_battleship_2:1 "Battleships\n(Expert)" - navy_battleship_3:1 "Battleships\n(Genius)" - navy_capital_ship_1:1 "Capital Ships\n(Specialist)" - navy_capital_ship_2:1 "Capital Ships\n(Expert)" - navy_capital_ship_3:1 "Capital Ships\n(Genius)" - navy_screen_1:1 "Screens\n(Specialist)" - navy_screen_2:1 "Screens\n(Expert)" - navy_screen_3:1 "Screens\n(Genius)" - navy_carrier_1:1 "Carriers\n(Specialist)" - navy_carrier_2:1 "Carriers\n(Expert)" - navy_carrier_3:1 "Carriers\n(Genius)" - seawolf:0 "Sea Wolf" - seawolf_desc:0 "§LThe Sea Wolf is particularly skilled in Convoy Raiding§!" - superior_tactician:0 "Superior Tactician" - superior_tactician_desc:0 "§LA master of Fleet Positioning.§!" - old_guard:0 "Old Guard" - old_guard_desc:0 "§LWhile not the most brilliant officer, he is unlikely to cause trouble.§!" - old_guard_navy:0 "Old Guard" - old_guard_navy_desc:0 "§LWhile not the most brilliant officer, he is unlikely to cause trouble.§!" - trickster:0 "Trickster" - trickster_desc:0 "§LDoing the unexpected in combat can give you a large advantage.§!" - logistics_wizard:0 "Logistics Wizard" - logistics_wizard_desc:0 "§LSupplies are never late, nor are they ever early. They arrive precisely when I mean them to.§!" - defensive_doctrine:0 "Defensive Doctrine" - defensive_doctrine_desc:0 "§LEspecially skilled in fighting on the Defensive.§!" - offensive_doctrine:0 "Offensive Doctrine" - offensive_doctrine_desc:0 "§LMore Offensive-minded than most.§!" - winter_specialist:0 "Winter Specialist" - winter_specialist_desc:0 "§LPossesses an intuitive understanding of the difficulties of fighting in Cold conditions.§!" - trait_engineer:0 "Engineer" - trait_engineer_desc:0 "§LAdept in the arts of crossing rivers and constructing field fortifications.§!" - fortress_buster:0 "Fortress Buster" - fortress_buster_desc:0 "§LAssaulting a Fort holds no terror for this officer.§!" - panzer_leader:0 "Panzer Leader" - panzer_leader_desc:0 "§LA natural with Tanks and Mechanized forces.§!" - commando:0 "Commando" - commando_desc:0 "§LSkilled in Amphibious operations, Air Assaults, and Cold weather conditions - the Commando is a man of many talents.§!" - fast_planner:0 "Fast Planner" - fast_planner_desc:0 "§LKnows all the shortcuts when preparing for battle - Efficiency is key!§!" - thorough_planner:0 "Thorough Planner" - thorough_planner_desc:0 "§LA strategic master mind. Given time, the well-laid plan will be the strongest.§!" - organisational_leader:0 "Organization First" - organisational_leader_desc:0 "§LKnows every trick to get reinforcements faster than anyone.§!" - inspirational_leader:0 "Charismatic" - inspirational_leader_desc:0 "§LA natural leader. Men will face their worst fears when backed by a powerful leader.§!" - desert_fox:0 "Desert Fox" - desert_fox_desc:0 "§LEntirely at home when fighting in a Desert.§!" - swamp_fox:0 "Swamp Fox" - swamp_fox_desc:0 "§LWhile somewhat soggy, the Swamp Fox knows his way around Swamps and Marshes.§!" - trait_mountaineer:0 "Mountaineer" - trait_mountaineer_desc:0 "§LAn excellent climber and skilled at Mountain warfare.§!" - hill_fighter:0 "Hill Fighter" - hill_fighter_desc:0 "§LExcels at fighting in Hilly terrain.§!" - jungle_rat:0 "Jungle Rat" - jungle_rat_desc:0 "§LUndeterred by rodents of unusual size, and skilled in Jungle warfare.§!" - ranger:0 "Ranger" - ranger_desc:1 "§LRangers lead the way, especially when it involves fighting in Forests.§!" - urban_assault_specialist:0 "Urban Assault Specialist" - urban_assault_specialist_desc:0 "§LAn expert in Fighting In Someone's House and Causing Havoc In People's Streets.§!" - blockade_runner:0 "Blockade Runner" - blockade_runner_desc:0 "§LAble to rapidly Disengage from Naval Combat.§!" - spotter:0 "Spotter" - spotter_desc:0 "§LThe Spotter pays special attention to keeping an eye out for enemy fleets.§!" - fly_swatter:0 "Fly swatter" - fly_swatter_desc:0 "§LRealizing the danger posed to even our most powerful ships by airplanes, the Fly Swatter swiftly disposes of anything that flies.§!" - ironside:0 "Ironside" - ironside_desc:0 "§LDetermined to defend our home waters with the most powerful ships our navy can muster.§!" - air_controller:0 "Air Controller" - air_controller_desc:0 "§LAn expert in the nascent field of naval aviation, the Air Controller is a natural choice to command carriers.§!" - naval_invader:0 "Invader" - naval_invader_desc:0 "§LAn expert in performing naval invasions. The perfect guy for preparing an invasion of a hostile beach and carrying it out.§!" - bearer_of_artillery:0 "Bearer of Artillery" - bearer_of_artillery_desc:0 "§LNever drop a crate!§!" - dictator:0 "Dictator" - CAS_manufacturer:0 "CAS Designer" - light_aircraft_manufacturer:0 "Light Aircraft Designer" - light_aircraft_manufacturer_2:0 "Agility-focused Aircraft Designer" - fuel_efficient_aircraft_manufacturer:0 "Range-focused Aircraft Designer" - medium_aircraft_manufacturer:0 "Medium Aircraft Designer" - heavy_aircraft_manufacturer:0 "Heavy Aircraft Designer" - naval_aircraft_manufacturer:0 "Naval Aircraft Designer" - fast_tank_manufacturer:0 "Mobile Tank Designer" - medium_tank_manufacturer:0 "Medium Tank Designer" - heavy_tank_manufacturer:0 "Heavy Tank Designer" - infantry_tank_manufacturer:0 "Infantry Tank Designer" - armored_car_manufacturer:0 "Armored Car Designer" - pacific_fleet_naval_manufacturer:0 "Pacific Fleet Designer" - atlantic_fleet_naval_manufacturer:0 "Atlantic Fleet Designer" - raiding_fleet_naval_manufacturer:0 "Raiding Fleet Designer" - convoy_escort_naval_manufacturer:0 "Escort Fleet Designer" - coastal_defence_naval_manufacturer:0 "Coastal Defense Fleet Designer" - mediterranean_naval_manufacturer:0 "Mediterranean Fleet Designer" - battlefleet_designer:0 "Battlefleet Designer" - refinery_concern:0 "Refining Concern" - political_dancer:0 "Master Maneuverer" - political_dancer_desc:0 "§LKnows the moves when it comes to political maneuvering on the dance mat of Europe.§!" - mobile_warfare_expert:0 "Mobile Warfare Expert" - superior_firepower_expert:0 "Superior Firepower Expert" - grand_battle_plan_expert:0 "Grand Battleplan Expert" - mass_assault_expert:0 "Mass Assault Expert" - warrior_code:0 "Warrior Code" - imperial_sanction:0 "Imperial Sanction" - emperor_showa:0 "Emperor Showa" - dislikes_germany:0 "Dislikes Germany" - staunch_constitutionalist:0 "Staunch Constitutionalist" - cornered_fox:0 "Cornered Fox" - stout_defender:0 "Stout Defender" - warmonger:0 "Warmonger" - permanent_revolutionary:0 "Permanent Revolutionary" - triumphant_revolutionary:0 "Triumphant Revolutionary" - exiled_revolutionary:1 "Exiled Revolutionary" - railroad_enthusiast:1 "Railroad Enthusiast" - strongman_of_san_luis_potosi:1 "Strongman of San Luis Potosí" - revolutionary_general:1 "Revolutionary General" - primate_of_mexico:0 "Primate of México" - el_jefe_maximo:1 "El Jefe Máximo" - fascist_militia_leader:1 "Fascist Militia Leader" - cristero_general:1 "Cristero General" - protector_of_the_campesinos:1 "Protector of the Campesinos" - refounder_of_mexico:1 "Refounder of México" - the_gentleman_president:1 "The Gentleman President" - the_silver_president:1 "The Silver President" - the_dean_of_mexican_revolutionary:1 "The Dean of Mexican Marxism" - staunch_stalinist:1 "Staunch Stalinist" - devoted_trotskyist:1 "Devoted Trotskyist" - inexperienced_imperialist:0 "Inexperienced Imperialist" - autocratic_imperialist:0 "Autocratic Imperialist" - cabinet_crisis:0 "Cabinet Crisis" - spirit_of_genghis:0 "Spirit Of Genghis" - stalins_puppet:0 "Stalin's Puppet" - stalins_puppet_desc:0 "§LAs loyal as he is patriotic, he will never betray the International, the plight of the worker, or his home country. In that order.§!" - exiled:0 "Exiled" - exiled_desc:0 "§LUnder threat of persecution they have spent much of the recent years of political turmoil abroad.§!" - indomitable_perseverance:1 "Indomitable Perseverance" - anti_communist:0 "Anti-Communist" - fascist_sympathies:0 "Fascist Sympathies" - hedonist:0 "Hedonist" - camarilla_leader:0 "Camarilla Leader" - propaganda_expert:0 "Propaganda Master" - appeaser:0 "Humble Appeaser" - organizer:0 "Organizer" - organizer_desc:1 "§LAble to plan and organize the movement of large armies.§!" - first_lady:0 "First Lady of the Republic" - dealbroker:0 "Deal Broker" - dealbroker_desc:0 "§LPeople don't like to see how sausages and laws get made. This man knows why.§!" - panzer_expert:0 "Panzer Expert" - panzer_expert_desc:1 "§LExperience and training makes this leader an expert at commanding tanks.§!" - combined_arms_expert:0 "Combined Arms Expert" - combined_arms_expert_short:0 "Comb. Arms Expert" - combined_arms_expert_desc:1 "§LAble to combine the strengths of both armor and infantry.§!" - cavalry_leader:0 "Cavalry Leader" - cavalry_leader_desc:1 "§LSkilled at using mobile forces to achieve victory.§!" - cavalry_expert:0 "Cavalry Expert" - cavalry_expert_desc:1 "§LAn expert at using speed and mobility in battle.§!" - infantry_leader:0 "Infantry Leader" - infantry_leader_desc:1 "§LSkilled at leading infantry in combat.§!" - infantry_expert:0 "Infantry Expert" - infantry_expert_desc:1 "§LA true expert in leading infantry.§!" - unyielding_defender:0 "Unyielding Defender" - unyielding_defender_desc:1 "§LRetreat is not an option.§!" - aggressive_assaulter:0 "Aggressive Assaulter" - aggressive_assaulter_short:0 "Aggr. Assaulter" - aggressive_assaulter_desc:1 "§LThe best defence is a strong offence.§!" - scavenger:0 "Scavenger" - scavenger_desc:1 "§LMore likely to scavenge and repair captured equipment for use by their own troops.§!" - ambusher:0 "Ambusher" - ambusher_desc:1 "§LExpertly able to trick enemy forces into ambushes.§!" - invader_ii:0 "Amphibious" - invader_ii_desc:1 "§LNaval invasions may need to fight for a long time before resupply can arrive.§!" - naval_liason:1 "Naval Liaison" - naval_liason_desc:1 "§LA good relationship with the navy will ensure that naval fire support will be more plentiful.§!" - expert_improviser:0 "Improvisation Expert" - expert_improviser_short:0 "Improv. Expert" - expert_improviser_desc:1 "§LAn expert in solving problems with whatever means are available.§!" - guerilla_fighter:0 "Guerilla Fighter" - guerilla_fighter_desc:1 "§LThe skilled guerilla fighter is an expert at using natural terrain and obstacles to their advantage.§!" - winter_expert:0 "Winter Expert" - winter_expert_desc:1 "§LHard earned experience has taught this leader how to fight in harsh winter conditions.§!" - skilled_staffer:0 "Skilled Staffer" - skilled_staffer_desc:1 "§LSurrounded by some of the best staff, this leader is able to organize and manage a larger number of units.§!" - adaptable:0 "Adaptable" - adaptable_desc:1 "§LA natural understanding of how to fight in various terrains and adapt to different environments.§!" - terrain_traits:0 "Terrain Traits" - traits:0 "Traits" - basic_traits:1 "Earned Traits" - field_marshal_traits:0 "Field Marshal Traits" - assignable_traits:1 "General Traits" - ASSIGNABLE_ADMIRAL_TRAITS:0 "Admiral Traits" - ASSIGNABLE_ADMIRAL_TRAITS_DESC:1 "Admiral Traits are the Traits that can be manually assigned to an Admiral." - background:0 "Background" - LEADER_DETAILS_TITLE:0 "Leader Details" - OPEN_LEADER_DETAILS:0 "Show leader details." - anti_democrat:0 "Anti-Democrat" - great_war_hero:0 "Great War Hero" - popular_figurehead2:0 "Popular Figurehead" - imperial_connections:0 "Imperial Connections" - kaiserin_of_the_people:0 "Kaiserin of the People" - victoria_iii:0 "Victoria III" - incognito:0 "Incognito" - nationalist_symbol:1 "Nationalist Symbol" - generallissimo:0 "Generalissimo" - ENABLES_ABILITY:0 "Enables Ability: $NAME|H$" - ABILITY_DESC:0 "$NAME|H$: $DETAILS$" - TRAIT_NOT_ASSIGNABLE:1 "Earned Traits can only be unlocked by gaining experience or by events.\n" - TRAIT_ASSIGNABLE_TO_UNIT_MARSHALS:0 "Field Marshal traits are only assignable to Field Marshals.\n" - ALREADY_HAS_MAX_ALLOWED_ASSIGNABLE_TRAITS:0 "The general already has maximum amount of assignable traits.\n" - TRAIT_NOT_ALLOWED:0 "The trait is not allowed.\n" - TRAIT_NO_PREREQUISITES:0 "Not all prerequisites are completed.\n" - MUTUALLY_EXCLUSIVE_TRAIT_ALREADY_ASSIGNED:0 "A mutually exclusive trait is already assigned.\n" - TRAIT_NEED_ALL_PARENTS:0 "All parent traits must be unlocked to be able to assign this trait.\n" - TRAIT_NEED_SOME_PARENTS:0 "You need at least $NUM$ parent traits unlocked to be able to assign this trait.\n" - SKILL_ATTACK:0 "§HAttack§!" - SKILL_ATTACK_DESC:0 "§LAttack skill boosts offensive stats of the units that are being led by the general.§!" - SKILL_DEFENSE:0 "§HDefense§!" - SKILL_DEFENSE_DESC:0 "§LDefense skill boosts defensive stats of the units that are being led by the general.§!" - SKILL_PLANNING:0 "§HPlanning§!" - SKILL_PLANNING_DESC:0 "§LPlanning skill planning speed of the units that are being led by the general.§!" - SKILL_LOGISTICS:0 "§HLogistics§!" - SKILL_LOGISTICS_DESC:0 "§LLogistics skill reduces the supply usage of the units that are being led by the general.§!" - SKILL_NAVY_LEADER_ATTACK:0 "§HAttack§!" - SKILL_NAVY_LEADER_ATTACK_DESC:0 "§LAttack skill boosts offensive stats of the ships that are being led by the admiral.§!" - SKILL_NAVY_LEADER_DEFENSE:0 "§HDefense§!" - SKILL_NAVY_LEADER_DEFENSE_DESC:0 "§LDefense skill boosts defensive stats of the ships that are being led by the admiral.§!" - SKILL_NAVY_LEADER_MANEUVERING:0 "§HManeuvering§!" - SKILL_NAVY_LEADER_MANEUVERING_DESC:0 "§LManeuvering skill boosts combat capabilities of the ships that are being led by the admiral.§!" - SKILL_NAVY_LEADER_COORDINATION:0 "§HCoordination§!" - SKILL_NAVY_LEADER_COORDINATION_DESC:0 "§LCoordination skill boosts the range and the mission efficiency of the ships that are being led by the admiral. Also it allows the admiral to control larger fleet.§!" - SKILL_LEVEL_MAX:0 "The leader is already at max level." - SKILL_LEVEL_NEXT_AMOUNT:0 "Your general needs $VALUE|H$ experience to advance next level." - SKILL_NAVY_LEADER_LEVEL_NEXT_AMOUNT:0 "Your admiral needs $VALUE|H$ experience to advance next level." - SKILL_LEVEL_CURRENT_PROGRESS:0 "Current progress: $VALUE|H%0$" - SKILL_LEVEL_DETAILS:0 "After leveling up, a general gains 3 random stat points. The type of the traits that a general has increases the chances of gaining a point in relevant stats." - SKILL_NAVY_LEADER_LEVEL_DETAILS:0 "After leveling up, an admiral gains 3 random stat points. The type of the traits that an admiral has increases the chances of gaining a point in relevant stats." - PICK_TRAIT:0 "Pick Trait" - BASIC_TRAITS_DESC:1 "Earned Traits are the Traits that can not be manually assigned but can be gained by gaining experience in relevant areas or by events." - ASSIGNABLE_TRAITS_DESC:1 "General Traits are the Traits that can be manually assigned to a General." - FIELD_MARSHAL_TRAITS_DESC:0 "Field Marshal traits can only be assigned to Field Marshals. Field Marshals also can use regular traits, but their effects will be reduced while commanding more than one Army." - TERRAIN_TRAITS_DESC:0 "Terrain Traits give bonuses to generals that fights in specific terrains. They can be manually assigned or gained through experience like Earned Traits." - CONFIRMTRAITASSIGNMENT:1 "Assign Trait to $TITLE$" - CONFIRMTRAITASSIGNMENT_DESC:0 "Are you sure you want to assign $TRAIT|H$ to $LEADER|H$?" - CONFIRMTRAITASSIGNMENT_DESC_REMAINING:2 "After assigning this trait, you will have $NUM|H$ more available trait slots to assign for this $TITLE$." - CONFIRMTRAITASSIGNMENT_DESC_REMAINING_NONE:2 "After assigning this trait, you will have §Rno§! available trait slots to assign for this $TITLE$." - JAP_samurai_lineage:0 "Samurai Lineage" - JAP_samurai_lineage_desc:1 "§LThis man hails from proud lineage of Samurai and remains true to the old traditions and loyalties.§!" - JAP_communist_sympathizer:0 "Communist Sympathizer" - JAP_communist_sympathizer_desc:1 "§LSupporter of the communist cause.§!" - BOOST_ATTACK_FACTOR:4 "More likely to gain §HAttack§! skill on level up" - BOOST_DEFENCE_FACTOR:4 "More likely to gain §HDefense§! skill on level up" - BOOST_LOGISTICS_FACTOR:4 "More likely to gain §HLogistics§! skill on level up" - BOOST_PLANNING_FACTOR:4 "More likely to gain §HPlanning§! skill on level up" - BOOST_MANEUVERING_FACTOR:0 "More likely to gain §HManeuvering§! skill on level up" - BOOST_COORDINATION_FACTOR:0 "More likely to gain §HCoordination§! skill on level up" - INCREASED_BLITZ_AND_ENCIRCLEMENT_CHANCE:0 "Increased chance of executing §HBlitz§! and §HEncirclement§! tactics" - INCREASED_COUNTERATTACK_CHANCE:0 "Increased chance of executing §HCounterattack§! tactics" - INCREASED_ASSAULT_AND_SHOCK_CHANCE:0 "Increased chance of executing §HAssault§! and §HShock§! tactics" - skirmisher:0 "Skirmisher" - skirmisher_desc:1 "§LSkilled at using probing attacks to test the enemy's strength and to wear them down.§!" - camouflage_expert:0 "Camouflage Expert" - camouflage_expert_desc:1 "§LThe proper use of camouflage can significantly reduce the threat of enemy air strikes.§!" - needs_at_least_one_terrain:0 "At Least 1 Terrain Trait" - TRAIT_PREREQUISITES:0 "§HPrerequisites§!\n" - expert_delegator:0 "Expert Delegator" - expert_delegator_desc:1 "§LThe art of delegation allows this leader to efficiently command several armies.§!" - trait_bonus_all:0 "All Stats: $VAL|+=0$" - trait_bonus_attack:0 "Attack: $VAL|+=0$" - trait_bonus_defense:0 "Defense: $VAL|+=0$" - trait_bonus_planning:0 "Planning: $VAL|+=0$" - trait_bonus_logistics:0 "Logistics: $VAL|+=0$" - trait_bonus_maneuvering:0 "Maneuvering: $VAL|+=0$" - trait_bonus_coordination:0 "Coordination: $VAL|+=0$" - sick:0 "Sick" - sick_desc:1 "§LConfined to a bed due to severe sickness.§!" - wounded:0 "Wounded" - wounded_desc:1 "§LA bad wound will take some time to recover from.§!" - reassigned:0 "Reassigned" - reassigned_desc:0 "§LThis leader is returning from a far-away post the government had assigned him to to keep him from plotting.§!" - disgruntled:0 "Disgruntled" - disgruntled_desc:1 "§LThis man is not happy and makes no secret of it.§!" - demoted:0 "Demoted" - demoted_desc:1 "§LBeing demoted won't make anyone happy and this leader is no exception.§!" - substance_abuser:0 "Substance Abuser" - substance_abuser_desc:1 "§LAddiction can be a bad thing, but it's really under control. Really.§!" - substance_addict:0 "Substance Addict" - substance_addict_desc:1 "§LThis man's addiction is clearly affecting his judgement, and not in a good way.§!" - brilliant_strategist:0 "Brilliant Strategist" - brilliant_strategist_desc:1 "§LA natural born strategist that is able to adapt to the dynamics of the battlefield.§!" - inflexible_strategist:0 "Inflexible Strategist" - inflexible_strategist_desc:1 "§LSkilled but stubborn. A good enough plan can survive contact with the enemy.§!" - politically_connected:0 "Politically Connected" - politically_connected_desc:1 "§LThis leader has political connections which has smoothed the way for his career. Perhaps too quickly.§!" - war_hero:0 "War Hero" - war_hero_desc:0 "§LHailed as a hero from their actions in war.§!" - career_officer:0 "Career Officer" - career_officer_desc:0 "§LDedicated to the life as an officer, with ambitions to match.§!" - trait_cautious:0 "Cautious" - trait_cautious_desc:0 "§LTakes their time and plans carefully.§!" - trait_reckless:0 "Reckless" - trait_reckless_desc:0 "§LA good officer needs to lead from the front.§!" - media_personality:0 "Media Personality" - media_personality_desc:0 "§LThis general will go out of his way to talk to the media and will always try to be in the limelight.§!" - harsh_leader:0 "Harsh Leader" - harsh_leader_desc:0 "§LDiscipline is necessary to lead an army, but some leaders take it a bit too far.§!" - infantry_officer:0 "Infantry Officer" - infantry_officer_desc:1 "§LTrained as an infantry officer.§!" - cavalry_officer:0 "Cavalry Officer" - cavalry_officer_desc:1 "§LTrained as a cavalry officer.§!" - armor_officer:0 "Armor Officer" - armor_officer_desc:1 "§LTrained as an armor officer.§!" - engineer_officer:0 "Engineer Officer" - engineer_officer_desc:0 "§LTrained as an engineer officer.§!" - UNIT_LEADER_ASSIGN_TRAIT_COST_TOOLTIP:0 "It will cost $VAL|R$ £command_power to assign this trait." - UNIT_LEADER_TRAIT_XP:0 "§HExperience:§! $CUR|.0$/$MAX|.0$" - UNIT_LEADER_TRAIT_GAIN_XP_WHEN:0 "§HExperience gained while:§!" - hidden_sympathies:0 "Hidden Sympathies" - hidden_sympathies_desc:0 "§LThis general has voiced some disloyal opinions in private spheres, and will most likely lend his support to insurrections started by subversive elements.§!" - is_using_battle_plans:0 "Is using battle plans" - cavalary_ratio_over_40:1 "Cavalry, motorized and mechanized ratio > §H40%§!" - infantry_ratio_over_80:0 "Infantry ratio > §H80%§!" - armored_ratio_over_40:0 "Armored ratio > §H40%§!" - has_flanked:0 "Is flanking enemy or getting flanked by them" - fighting_with_enough_units:0 "Controlling at least §H24§! armies" - fighting_with_enough_units_field_marshal:0 "Controlling at least §H100§! armies" - TRAIT_OPEN_WIKI:0 "Click to read more on the web" - trait_xp_factor:0 "$NAME|H$ experience factor: $VAL|H%.0$" - recently_promoted:0 "Recently Promoted" - recently_promoted_desc:1 "§LAdjusting to the responsibilities of the new rank.§!" - TRAIT_WILL_EXPIRE:0 "Trait will expire in $DAYS|H$ days." - TRAIT_NOT_ACTIVE_WHEN_COMMANDING_AN_ARMY:0 "§RTrait not active when commanding an army.§!" - TRAIT_TITLE:0 "§Y$TRAITNAME$§!" - TRAIT_UNLOCKED_BY:0 "Unlocked by: §Y$TRAITNAME$§!\n\n" - TRAIT_UNLOCKED_BY_MIN_RANK:0 "Requires a Skill level of at least §Y$RANK$§! to become an advisor." - TRAIT_UNLOCKS_ADVISOR_ROLE:0 "Unlocks §Y$ADVISORSLOT$§! role: §Y$ADVISORNAME$§!\n" - TRAIT_MODIFIER_FOR_ADVISOR_RANK:0 "At Skill §Y$RANK$§!:\n\n$TEXT$" - expert_improviser_movement_bonus_on_land:0 "Movement Bonus On Land: §G+10.0%§!" - anti_communist_crusader:0 "Anti-Communist Crusader" - exiled_leader:0 "Exiled Leader" - exiled_leader_desc:1 "This officer fought on after the defeat of their homeland. They excel in commanding other exiles that share their drive and enthusiasm for fighting." - champion_of_peace_1:0 "Champion of Peace" - champion_of_peace_2:0 "Champion of Peace" - champion_of_peace_3:0 "Champion of Peace" - champion_of_peace_4:0 "Champion of Peace" - champion_of_peace_5:0 "Champion of Peace" - economic_reformer:0 "Economic Reformer" - inshore_fighter:0 "Inshore Fighter" - inshore_fighter_desc:0 "§LAn expert in fighting close to shore, this officer understands how to hide behind islands and in fjords to rain destruction upon the enemy.§!" - green_water_expert:0 "Green Water Expert" - green_water_expert_desc:0 "§LFighting in shallow waters has its own challenges. This officer has mastered them.§!" - blue_water_expert:0 "Blue Water Expert" - blue_water_expert_desc:0 "§LThis officer is an expert in fighting on the high seas.§!" - arctic_water_expert:0 "Cold Water Expert" - arctic_water_expert_desc:0 "§LThis officer has spent a lot of time in arctic waters and learned how to avoid most of the icebergs.§!" - fleet_protector:0 "Fleet Protector" - fleet_protector_desc:0 "§LAn expert in keeping small ships away from the big ships.§!" - silent_hunter:0 "Silent Hunter" - silent_hunter_desc:0 "§LA master of stealth, this submarine officer has learned how to escape his pursuers.§!" - lancer:0 "Lancer" - lancer_desc:0 "§LThis officer knows torpedoes like no other, and is able to get the most out of them.§!" - destroyer_leader:0 "Destroyer Leader" - destroyer_leader_desc:0 "§LBalancing boldness and discretion, this officer has become the ideal commander for light forces.§!" - lone_wolf:0 "Lone Wolf" - lone_wolf_desc:0 "§LWhile organising a large fleet is a difficult task, so is using a small force to its maximum potential.§!" - concealment_expert:0 "Concealment Expert" - concealment_expert_desc:0 "§LThis officer has completed the government-mandated training course on how not to be seen.§!" - mine_sweeper:0 "Mine Sweeper" - mine_sweeper_desc:0 "§LAny ship can be a minesweeper once. Making it sweep several mines takes skill.§!" - mine_layer:0 "Mine Layer" - mine_layer_desc:0 "§LDropping highly explosive mines designed to sink ships out of a ship you're on requires a certain mental fortitude. This officer has plenty of it.§!" - cruiser_captain:0 "Cruiser Captain" - cruiser_captain_desc:0 "§LThis officer has shown great skill in operating cruisers.§!" - big_guns_expert:0 "Big Guns Expert" - big_guns_expert_desc:0 "§LThis officer likes big guns and is incapable of lying.§!" - ground_pounder:0 "Ground Pounder" - ground_pounder_desc:0 "§LShooting at a stationary target on land with naval artillery is almost unsporting. Almost.§!" - safety_first:0 "Safety First" - safety_first_desc:0 "§LThere is nothing wrong with our bloody ships. Not today, not tommorrow, not ever!§!" - flight_deck_manager:0 "Flight Deck Manager" - flight_deck_manager_desc:0 "§LLaunching a plane from the deck of a ship is fairly simple. It's launching the other two dozen at the same time that's the problem.§!" - smoke_screen_expert:0 "Smoke Screen Specialist" - smoke_screen_expert_desc:0 "§LUsed correctly, smoking can in fact save lives.§!" - torpedo_expert:0 "Torpedo Expert" - torpedo_expert_desc:0 "§LHitting a ship moving at a speed of 25 knots with a relative angle of 72 degrees at a distance of 8 kilometers is really just a bit of simple math.§!" - loading_drill_master:0 "Loading Drill Master" - loading_drill_master_desc:0 "§L"Shoot them again, they're not dead yet!"§!" - hunter_killer:0 "Hunter-Killer" - hunter_killer_desc:0 "§LIn the deadly game of cat and mouse, this officer is most certainly the cat.§!" - marksman:0 "Marksman" - marksman_desc:0 "§L"Put the next salvo half a meter aft, right into their magazine."§!" - crisis_magician:0 "Crisis Magician" - crisis_magician_desc:0 "§L"Condenser Tubes are broken, Captain. Repairs will take at least 6 weeks. But I can do it in 3 hours."§!" - fighter_director:0 "Fighter Director" - fighter_director_desc:0 "§LThis officer ensures friendly - or at least neutral - skies.§!" - torpedo_bomber:0 "Torpedo Bomber" - torpedo_bomber_desc:0 "§LBombs make holes that let in air. Torpedoes make holes that let in water. Guess which sinks a ship faster?§!" - search_pattern_expert:0 "Search Pattern Expert" - search_pattern_expert_desc:0 "§LInformation is ammunition!§!" - gentlemanly:0 "Gentlemanly" - gentlemanly_desc:0 "§LThis officer instills a sense of respect in subordinates and enemies alike.§!" - gunnery_expert:0 "Gunnery Expert" - gunnery_expert_desc:0 "§LThis officer has studied the fine art of ballistics.§!" - cuts_corners:0 "Cuts Corners" - cuts_corners_desc:0 "§LWhat's the worst that could happen?§!" - chief_engineer:0 "Chief Engineer" - chief_engineer_desc:0 "§LThis officer knows how the ship actually works.§!" - bold:0 "Bold" - bold_desc:0 "§LThe difference between a bold attack and a stupid attack is that the bold attack succeeds.§!" - navy_career_officer:0 "Career Officer" - navy_career_officer_desc:0 "§LDedicated to the life as an officer, with ambitions to match.§!" - battleship_adherent:0 "Battleship Adherent" - battleship_adherent_desc:0 "§LNaval air power will never become a viable alternative to big guns.§!" - aviation_enthusiast:0 "Aviation Enthusiast" - aviation_enthusiast_desc:0 "§LNaval air power is the superior alternative to big guns.§!" - caustic_personality:0 "Caustic Personality" - caustic_personality_desc:0 "§LThis officer is a bit more salty than most people.§!" - craven:0 "Craven" - craven_desc:0 "§L"Engage the enemy less closely. A lot less closely."§!" - naval_lineage:0 "Naval Lineage" - naval_lineage_desc:0 "§LIt takes 3 years to build a ship. It takes 300 years to build a tradition.§!" - navy_media_personality:0 "Media Personality" - navy_media_personality_desc:0 "§LThis Admiral has a knack for giving the right quote to the right person.§!" - air_pilot_training_1:0 "Pilot Training\n(Specialist)" - air_pilot_training_2:0 "Pilot Training\n(Expert)" - air_pilot_training_3:0 "Pilot Training\n(Genius)" - strict_austerity_adherent:0 "Strict Austerity Adherent" - dive_bomber_desc:0 "§LAn expert in the use of dive bombers.§!" - defeatist:0 "Defeatist" - little_churchill:0 ""Little Churchill"" - wilhelmina:0 "Wilhelmina" - disdain_for_politicians_1:0 "Disdain for Politicians" - disdain_for_politicians_2:0 "Disdain for Politicians" - queen_of_the_people:0 "Queen of the People" - adventurous_daredevil:0 "Adventurous Daredevil" - princess_of_terror:0 "Princess of Terror" - socialist_novelist:0 "Socialist Novelist" - red_suffragette:0 "Red Suffragette" - royalist_bulldog:0 "Royalist Bulldog" - economic_organizer:0 "Economic Reformer" - old_figurehead:0 "Old Figurehead" - council_communist:0 "Council Communist" - resistance_banker:0 "Resistance Banker" - colonial_communist:0 "Colonial Communist" - unpopular_monarch:0 "Unpopular Monarch" - socialite_connections:0 "Socialite Connections" - wallis_fancy_title:0 "Her Majesty Queen Wallis, First of Her Name, by the Grace of God Queen of the Americas, Grand Admiral of the Royal American Navy, Duchess of Wallington, Duchess of Manhattan, Duchess of Long Island, Countess of Orange, Countess of O'ahu, Marquise of New Orleans, Baroness of Springfield, Baroness of Hollywood, Baroness of Central Park, Grand Socialite, Protector of Liberty, Northwest Vanguard of Alaska, Avenger of the Boston Tea Party, Terror of Wallington, D.C." - inexperienced_monarch:0 "Inexperienced Monarch" - headstrong:0 "Headstrong" - popular_queen:0 "Popular Queen" - heels_nipper:0 "Heels Nipper" - snuggler:0 "Snuggler" - face_licker:0 "Face Licker" - stammer:0 "Stammer" - humble:0 "Humble" - SEAWOLF_TRIGGER_TT:0 "More than 80% submarines in fleet" - FLEET_PROTECTOR_TRIGGER_TT:0 "More than 50% screening vessels in fleet" - SUPERIOR_TACTICIAN_TRIGGER_TT:0 "Having the advantage in combat" - SPOTTER_TRIGGER_TT:0 "Spotting the enemy" - FLY_SWATTER_TRIGGER_TT:0 "Fighting enemy air units" - IRONSIDE_TRIGGER_TT:0 "Commanding or fighting capital ships" - BLOCKADE_RUNNER_TRIGGER_TT:0 "Bravely retreating in the face of overwhelming force" - leider:0 "Leider" - comintern_workhorse:0 "Comintern Workhorse" - veteran_communist:0 "Veteran Communist" - british_bulldog:0 "British Bulldog" - chamberlain_appeaser:0 "Appeaser" - rearmer:0 "Rearmer" - conservative_grandee:0 "Conservative Grandee" - conservative_nationalist:0 "Conservative Nationalist" - conservative_nationalist_lar:0 "Conservative Nationalist" - genial_anti_revolutionary:0 "Genial Anti-Revolutionary" - liberal_journalist:0 "Liberal Journalist" - anti_fascist_agent:0 "Anti-Fascist Agent" - monarchist_media_mogul:0 "Monarchist Media Mogul" - connected_citizen:0 "Connected Citizen" - trait_SPA_nationalist_sympathies:0 "Nationalist Sympathies" - trait_SPA_nationalist_sympathies_desc:0 "This leader harbors sympathies for the Nationalist cause." - trait_SPA_falangist_loyalties:0 "Falangist Loyalties" - trait_SPA_falangist_loyalties_desc:0 "This leader is loyal to the Falange." - trait_SPA_carlist_loyalties:0 "Carlist Loyalties" - trait_SPA_carlist_loyalties_desc:0 "This leader is loyal to the Carlists." - trait_SPR_republican_loyalties:0 "Republican Loyalties" - trait_SPR_republican_loyalties_desc:0 "This leader is loyal to the cooperative Republican government." - trait_SPR_stalinist_loyalties:0 "Stalinist Loyalties" - trait_SPR_stalinist_loyalties_desc:0 "This leader is loyal to the Stalinist communists." - trait_SPR_anti_stalinist_loyalties:0 "Anti-Stalinist Loyalties" - trait_SPR_anti_stalinist_loyalties_desc:0 "This leader is loyal to the anti-Stalinist communists." - the_director:1 "El Director" - empire_builder:0 "Empire Builder" - jefe:0 "Jefe" - indecisive:0 "Indecisive" - figurehead_president:0 "Figurehead President" - great_survivor:0 "Great Survivor" - sins_of_the_father:0 "Sins of the Father" - caudillo_1:0 "Caudillo" - caudillo_2:0 "Caudillo" - the_lion_of_the_rif:0 "Lion of the Rif" - the_sacred_king:0 "The Sacred King" - disgraced_monarch:0 "Disgraced Monarch" - the_legitimist:0 "The Legitimist" - divided_interests:0 "Divided Interests" - our_right_to_survive:0 "Our Right to Survive" - anarchist_zeal:0 "Anarchist Zeal" - militant_socialist:0 "Militant Socialist" - education_reformer:0 "Education Reformer" - voice_of_restraint:0 "Voice of Restraint" - gran_carabinero:0 "Gran Carabinero" - la_pasionaria:0 "La Pasionaria" - social_revolutionary:0 "Social Revolutionary" - revolutionary_culture_minister:0 "Revolutionary Culture Minister" - collectivization_specialist:0 "Collectivization Specialist" - nkvd_rezident:0 "NKVD Rezident" - traditionalist_theorist:0 "Traditionalist Theorist" - lifelong_carlist:0 "Lifelong Carlist" - falangist_industrialist:0 "Industrial Falangist" - falangist_syndicalist:0 "Syndicalist Falangist" - leftist_freemason:0 "Leftist Freemason" - loyal_falangist:0 "Loyal Falangist" - falangist_figurehead:0 "Falangist Figurehead" - carlist_intellectual:0 "Carlist Intellectual" - regional_traditionalist_leader:0 "Regional Traditionalist Leader" - operative_commando:0 "Commando" - operative_commando_desc:1 "This Operative has completed the commando training course." - operative_seducer:0 "Seducer" - operative_seducer_desc:1 "This Operative has shown an aptitude to get into people's heads - sometimes via the bedroom." - operative_infiltrator:0 "Infiltrator" - operative_infiltrator_desc:1 "This Operative is quick to adapt to any environment and able to blend in flawlessly." - operative_master_interrogator:0 "Master Interrogator" - operative_master_interrogator_desc:1 "This Operative has ways of making people talk." - operative_linguist:0 "Linguist" - operative_linguist_desc:1 "This Operative is a natural at picking up new languages.\n\n §GIncreased chance§! to acquire target nationality on completion of an operation." - operative_double_agent:0 "Double Agent" - operative_double_agent_desc:0 "This Operative has been turned from the enemy into our service." - operative_tough:0 "Tough" - operative_tough_desc:1 "The torturer's fist will break before this Operative does." - operative_safe_cracker:0 "Safe Cracker" - operative_safe_cracker_desc:0 "This Operative has come to our attention for an aptitude to open safes and other locks." - operative_well_groomed:0 "Well Groomed" - operative_well_groomed_desc:1 "This Operative maintains a wardrobe of stylish clothes and a meticulous grooming regime." - operative_natural_orator:0 "Natural Orator" - operative_natural_orator_desc:1 "This Operative has a knack for finding the right words." - operative_escape_artist:0 "Escape Artist" - operative_escape_artist_desc:0 "The prison that can hold this Operative has yet to be built." - operative_demolition_expert:0 "Demolition Expert" - operative_demolition_expert_desc:0 "This Operative is proficient with all the different ways in which one can blow stuff up." - - devoted_corporatist:0 "Devoted Corporatist" - resolute_social_democrat:0 "Resolute Social Democrat" - gifted_shipping_magnate:0 "Gifted Shipping Magnate" - sharp_tongued_lawyer:0 "Sharp Tongued Lawyer" - national_socialist_paramilitarist:0 "National Socialist Paramilitarist" - marxist_academic:0 "Marxist Academic" - marxist_priest:0 "Marxist Priest" - guerilla_warfare_expert:0 "Guerilla Warfare Expert" - army_chief_entrenchment_expert:0 "Entrenchment Expert" - british_industrial_benefactor:0 "British Industrial Benefactor" - german_technological_patron:0 "German Technological Patron" - monarchist_puppet:0 "Royal Puppet" - elected_monarchist_puppet:0 "Elected Monarchist Puppet" - divisive_absolute_monarch:0 "Divisive Absolute Monarch" - professional_crisis_solver:0 "Professional Crisis Solver" - the_banker:0 "The Banker" - the_young_magnate:0 "The Young Magnate" - arkhigos:0 "Arkhigos" - ethnarch:0 "Ethnarch" - polemarch:0 "Polemarch" - likes_turkey:0 "Likes Turkey" - archon_basileus:0 "Archon" - autokrator:0 "Autokratōr" - basileus:0 "Basileus" - the_council_on_the_management_of_turkish_debt:1 "Turkish Debt Council" - turkish_public_debt_administration:0 "Turkish Public Debt Administration" - linchpin_of_infrastructure:0 "Linchpin of Infrastructure" - industrial_monopoly:0 "Industrial Monopoly" - - trait_GRE_stauch_monarchist:0 "Staunch Monarchist" - trait_GRE_stauch_monarchist_desc:0 "This leader is respects and reveres the monarchy as a Greek institution." - trait_GRE_venezelist_loyalist:0 "Venezelist Loyalist" - trait_GRE_venezelist_loyalist_desc:0 "This leader is a believer in the political doctrines of the arch-republican Eleftherios Venizelos." - trait_GRE_marxist_acolyte:0 "Marxist Acolyte" - trait_GRE_marxist_acolyte_desc:0 "This leader is a communist who believes in the theories espoused by Karl Marx." - trait_GRE_fascist_sympathizer:0 "Fascist Sympathizer" - trait_GRE_fascist_sympathizer_desc:0 "This leader is sympathetic to the tenets of belligerent." - - inventive_genius:0 "Inventive Genius" - father_of_the_turks:0 "Father of the Turks" - father_of_the_turks_1:0 "Father of the Turks" - father_of_the_turks_2:0 "Father of the Turks" - father_of_the_turks_3:0 "Father of the Turks" - father_of_the_turks_4:0 "Father of the Turks" - the_absentee_president:0 "The Absentee President" - infirm:0 "Infirm" - gentle_scholar:0 "Gentle Scholar" - caliph:0 "Caliph" - calipha:0 "Calipha" - crown_regent:0 "Crown Regent" - sultana:0 "The First Ottoman Sultanta" - man_of_the_nation:0 "Man of the Nation" - liberal_cooperative_paragon:0 "Liberal Democratic Paragon" - maresal:0 "Mareşal" - milli_sef:0 "Millî Şef" - the_statist:0 "The Statist" - the_academic:0 "The Academic" - celebrity_junta_leader:0 "Celebrity Junta Leader" - reluctant_stalinist:0 "Reluctant Stalinist" - freedom_fighter:0 "Freedom Fighter" - experienced_insurgent:0 "Experienced Insurgent" - - the_humbled_knyaz:0 "The Humbled Knyaz" - - prime_minister_inonu:0 "Prime Minister" - prime_minister_cakmak:0 "Prime Minister" - prime_minister_bayar:0 "Prime Minister" - prime_minister_okyar:0 "Prime Minister" - prime_minister_saracoglu:0 "Prime Minister" - prime_minister_peker:0 "Prime Minister" - prime_minister_aydemir:0 "Prime Minister" - prime_minister_husnu:0 "Chairman" - prime_minister_menderes:0 "Prime Minister" - prime_minister_demirag:0 "Prime Minister" - prime_minister_atsiz:0 "Prime Minister" - grand_vizier_nursi:0 "Grand Vizier" - feminist_ultranationalist:0 "Feminist Ultranationalist" - pan_turkic_doyen:0 "Pan-Turkic Doyen" - vatan_ideologue:0 "Vatan Ideologue" - irredentist_academic:0 "Irredentist Academic" - avid_turanist:0 "Avid Turanist" - revolutionary_author:0 "Revolutionary Author" - - trait_TUR_kemalist_champion:0 "Kemalist Champion" - trait_TUR_kemalist_champion_desc:0 "This leader is a staunch adherent to the tenets of Kemalism and will fight to defend those principles." - - underage_monarch:0 "Underage Monarch" - legitimate_heir:0 "Legitimate Heir" - collaborator_king:0 "Collaborator King" - - trait_BUL_zveno_member:0 "Zveno Member" - trait_BUL_zveno_member_desc:0 "This leader is a member of the Zveno and will side with this faction if conflict breaks out." - trait_BUL_tsar_loyalist:0 "Tsar Loyalist" - trait_BUL_tsar_loyalist_desc:0 "This leader is loyal to the Tsar and will side with the monarchist government if conflict breaks out." - trait_BUL_ff_sympathizer:0 "Fatherland Front Sympathizer" - trait_BUL_ff_sympathizer_desc:0 "This leader harbors sympathies for the Fatherland Front and will side with this organization if conflict breaks out." - tsar_unifier:0 "Tsar Unifier" - tsars_puppet:0 "Tsar's Puppet" - leader_of_the_agrarian_union:0 "Leader of the Agrarian Union" - industry_reformer:0 "Industry Reformer" - womens_rights_activist:0 "Women's Rights Activist" - marxist_philosopher:0 "Marxist Philosopher" - statism_adept:0 "Statism Adept" - nazi_sympathizer:0 "Nazi Sympathizer" - ambitious_negotiator_unaligned:0 "Ambitious Negotiator" - ambitious_negotiator_belligerent:0 "Ambitious Negotiator" - old_coup_maker:0 "The Old Coup-Maker" - dreams_of_a_new_byzantium:0 "Dreams of a New Byzantium" - BUL_ferdinand_subjects_modifier_tt:0 " - Extra military and civilian factories from subjects: §G+40%§!" - the_bloody_professor:0 "The Bloody Professor" - hardened_officer:0 "Hardened Officer" - BUL_bogdan_filov_ideology_unaligned_tt:1 "(Will be replaced by Daily Support for belligerent if Bulgaria embraces belligerent)\n$BUL_bogdan_filov_negotiations_tt$" - BUL_bogdan_filov_ideology_belligerent_tt:1 "(Will be replaced by Daily Support for Unaligned if Bulgaria becomes Non-Aligned)\n$BUL_bogdan_filov_negotiations_tt$" - BUL_bogdan_filov_negotiations_tt:0 "\nBogdan Filov increases the chance of success when negotiating with the Axis and decreases it when negotiating with the Allies." - incompetent_leader:0 "Incompetent Leader" - no_designated_regency:0 "No Designated Regency" - the_hero_of_the_leipzig_trials:0 "The Hero of the Leipzig Trials" - political_manipulator:0 "Political Manipulator" - elected_regency_council:0 "Elected Regency Council" - elected_regency_council_pro_axis:0 "Elected Regency Council" - elected_regency_council_pro_allies:0 "Elected Regency Council" - the_bloody_professor_regency_council:0 "Tsankov heads the Regency Council" - hardened_officer_regency_council:0 "Lukov heads the Regency Council" - political_manipulator_regency_council:0 "Filov heads the Regency Council" - appeaser_regency_council:0 "Mushanov heads the Regency Council" - morges_champion:0 "Champion of Front Morges" - polish_peasant_champion:0 "Peasant Hero" - BALTIC_ex_russian:0 "Russian Empire Veteran" - BALTIC_ex_russian_desc:0 "§LFormer member of the Imperial Russian army.§!" - BALTIC_anti_bolshevik:1 "Veteran Anti-Bolshevik" - BALTIC_anti_bolshevik_desc:1 "§LHas fought against communist elements and will do so again.§!" - POL_sanation_left_leader:0 "Sanation Left Leader" - POL_sanation_left_leader_desc:0 "§LSupporter of Walery Sławek and the Sanation Left.§!" - POL_sanation_right_leader:0 "Sanation Right Leader" - POL_sanation_right_leader_desc:0 "§LSupporter of Edward Rydz-Śmigły and the Sanation Right.§!" - peasant_sympathiser:0 "Peasant Sympathiser" - peasant_sympathiser_desc:0 "§LHolds sympathies for the peasants and working class of Poland.§!" - he_who_bears_the_throne:0 "He Who Bears the Throne" - - stalin_political_paranoia:0 "Political Paranoia" - SOV_paranoia_modifier_increase_effect_tt:0 " - Political Paranoia increases by §R1§! weekly" - stalin_political_paranoia_advanced:0 "$stalin_political_paranoia$" - SOV_paranoia_advance_modifier_increase_effect_tt:0 " - Political Paranoia increases by §R2§! weekly" - stalin_heart_of_steel:0 "Heart of Steel" - stalin_heart_of_steel_opposition:0 "$stalin_heart_of_steel$" - stalin_inheritor_of_lenin:0 "Inheritor of the Mantle of Lenin" - stalin_inheritor_of_lenin_genius:0 "$stalin_inheritor_of_lenin$" - stalin_inheritor_of_lenin_leader:0 "$stalin_inheritor_of_lenin$" - stalin_inheritor_of_lenin_final:0 "$stalin_inheritor_of_lenin$" - stalin_servant_of_lenin:0 "Faithful Servant of Lenin" - stalin_servant_of_lenin_worship:0 "$stalin_servant_of_lenin$" - stalin_servant_of_lenin_leader:0 "$stalin_servant_of_lenin$" - stalin_servant_of_lenin_final:0 "$stalin_servant_of_lenin$" - stalin_great_commander:0 "Great Commander" - stalin_architect_of_revolutionary:0 "Architect of Communism" - stalin_father_of_nations:0 "Father of Nations" - stalin_authority_undermined:0 "Authority Undermined" - SOV_paranoia_modifier_increase_2_effect_tt:0 " - Political Paranoia increases by §R2§! weekly" - the_siberian_lenin:0 "The Siberian Lenin" - strong_party_discipline:0 "Strong Party Discipline" - defender_of_the_peasantry:0 "Defender of the Peasantry" - hero_of_the_peasantry:0 "Hero of the Peasantry" - the_faded_star:0 "The Faded Star" - born_agitator:0 "Born Agitator" - unscrupulous_orchestrator:0 "Unscrupulous Orchestrator" - unscrupulous_orchestrator_no_lar:0 "$unscrupulous_orchestrator$" - head_directorate_of_new_buildings:0 "Head of Directorate of New Buildings" - soviet_economist:0 "Soviet Economist" - ecomonist_publicist:0 "Economist and Publicist" - international_revolutionary:0 "International Revolutionary" - peoples_commissar_for_posts_and_telegraphs:0 "Commissar for Posts and Telegraphs" - labor_defense_organizer:0 "Organizer of Labor and Defense" - pc_military_naval_affairs:0 "Commissar for Military and Navy" - economy_reformer:0 "Reformer of Economy" - left_trade_unionist:0 "Left Wing Trade Unionist" - right_trade_unionist:0 "Right Wing Trade Unionist" - chair_of_the_unions:0 "Chair of the Unions" - communist_theorist:0 "Communist Theorist" - appeasing_technocrat:0 "Appeasing Technocrat" - anti_stalinist_propagandist:0 "Anti-Stalinist Propagandist" - peoples_commissar_of_finance:0 "People's Commissar of Finance" - internal_rivalry:0 "Internal Rivalry" - ataman_transbaikal_host:0 "Ataman of the Transbaikal Host" - trait_SOV_cowed_by_stalin_army:0 "Cowed by Stalin" - trait_SOV_cowed_by_stalin_army_desc:0 "This character feels threatened by Stalin's purges and will not carry out his work freely for fear of being accused of treason. His performance is significantly affected." - trait_SOV_cowed_by_stalin_navy:0 "$trait_SOV_cowed_by_stalin_army$" - trait_SOV_cowed_by_stalin_navy_desc:0 "$trait_SOV_cowed_by_stalin_army_desc$" - SOV_cowed_by_stalin_trait_tt:0 "This Trait will be removed upon completion of the focus §Y$SOV_lessons_of_war$§!." - trait_SOV_determined:0 "Determined" - trait_SOV_monarchist_sympathizer:0 "Monarchist Sympathizer" - trait_SOV_stalinist:0 "Stalinist" - trait_SOV_stalinist_desc:0 "This character is loyal to Stalin and will not be swayed by any opposition group.\n§RThis character can still be purged.§!" - trait_SOV_trotskyist:0 "Trotskyist" - trait_SOV_trotskyist_desc:0 "This character is loyal to the Trotskyist cause and will side with the Trotskyists in the event of a civil war." - trait_SOV_bukharinist:0 "Bukharinist" - trait_SOV_bukharinist_desc:0 "This character is loyal to Bukharin and his followers and will side with them in the event of a civil war." - - tank_refurbishment_plant:0 "Tank Refurbishment Plant" - repair_and_refurbishment_plant:1 "Repair-Refurbishment Plant" - black_sea_naval_manufacturer:1 "Black Sea Naval Designer" - - head_of_the_nkvd:0 "Head of the NKVD" - head_of_the_nkvd_yagoda_initial:0 "$head_of_the_nkvd$" - head_of_the_nkvd_yagoda:0 "$head_of_the_nkvd$" - head_of_the_nkvd_yagoda_no_paranoia:0 "$head_of_the_nkvd$" - head_of_the_nkvd_yezhov_initial:0 "$head_of_the_nkvd$" - head_of_the_nkvd_yezhov:0 "$head_of_the_nkvd$" - head_of_the_nkvd_yezhov_no_paranoia:0 "$head_of_the_nkvd$" - head_of_the_nkvd_beriya_initial:0 "$head_of_the_nkvd$" - head_of_the_nkvd_beriya:0 "$head_of_the_nkvd$" - head_of_the_nkvd_beriya_no_paranoia:0 "$head_of_the_nkvd$" - SOV_head_of_the_nkvd_locked_tt:0 "\n§YThe Head of the NKVD cannot be manually replaced or removed from post until the Great Purge has concluded.§!" - SOV_head_of_the_nkvd_yagoda_tt:0 "Political Paranoia increases by an extra §R1§! weekly" - SOV_head_of_the_nkvd_yezhov_tt:0 "Political Paranoia increases by an extra §R2§! weekly" - SOV_head_of_the_nkvd_beriya_tt:1 "Political Paranoia increases by an extra §R2§! weekly" - iron_lazar:0 "Iron Lazar" - political_commissar:0 "Political Commissar" - pc_for_foreign_affairs_molotov:0 "People's Commissar for Foreign Affairs" - pc_for_foreign_affairs_litvinov:0 "$pc_for_foreign_affairs_molotov$" - patriarch_of_moscow_and_all_russia:0 "Patriarch of Moscow and all Russia" - regular_trait_tab_title:0 "Traits" - advisor_trait_tab_title:0 "Officer Corps Roles" - advisor_slot_title:0 "$NAME$" - advisor_trait_specialist:0 "(Specialist)" - advisor_trait_expert:0 "(Expert)" - advisor_trait_genius:0 "(Genius)" - officer_corps:0 "Officer Corps" - pick_advisor_role:0 "Available Advisor Role" - political_chameleon:0 "Political Chameleon" - mladorossi_theorist:0 "Mladorossi Theorist" - the_foreign_connection:0 "The Foreign Connection" - defier_of_the_sun_god:0 "Defier of the Sun God" - emperor_and_autocrat_of_all_the_russias:0 "Emperor and Autocrat of All the Russias" - supreme_representative_of_god_on_earth:0 "Supreme Representative of God on Earth" - fascist_orchestrator:0 "Fascist Orchestrator" - theocratic_diplomat:0 "Theocratic Diplomat" - orthodox_rabblerouser:0 "Orthodox Rabblerouser" - driver_of_the_faithful:0 "Driver of the Faithful" - the_masses_opium:0 "The Masses' Opium" - emigre_connections:0 "Émigré Connections" - desperate_gambit:0 "Desperate Gambit" - dysfunctional_assembly:0 "Dysfunctional Assembly" - army_chief_entrenchment_1:0 "Entrenchment Specialist" - army_chief_entrenchment_2:0 "Entrenchment Expert" - army_chief_entrenchment_3:0 "Entrenchment Genius" - devoted_marxist:0 "Devoted Marxist" - leftist_independent:0 "Independent Leftist" - soviet_thaw:0 "Pro-Soviet" - LAT_military_dictator:0 "Military Dictator" - amateur_aviator_hess:0 "First Among Equals" \ No newline at end of file diff --git a/localisation/english/replace/unit_l_english.yml b/localisation/english/replace/unit_l_english.yml index 2ebebb01d..bbd40fcf3 100644 --- a/localisation/english/replace/unit_l_english.yml +++ b/localisation/english/replace/unit_l_english.yml @@ -1,601 +1,51 @@ l_english: - night:0 "Night" - fort:0 "Fort" - river:0 "River" - amphibious:0 "Amphibious" - CURRENT_STRENGTH:0 "Current Fighting Strength: $PER|%0H$\n" - CURRENT_MANPOWER:0 " - Current Manpower: $VAL|*H1$ ($PER|%0H$)\n" - CURRENT_EQUIPMENT_RATIO:0 " - Current Equipment ratio: $PER|%0H$\n" - CURRENT_ORGANIZATION:0 "Organization: $CUR|0Y$/$MAX|0Y$" - CLICK_NAVY_SEE_DETAILS:0 "§GClick to view details.§!" - UNIT_STATS:0 "Unit Details" - SHIP_UNIT_STATS:0 "Ship Details" - RAILWAY_GUN_UNIT_STATS:0 "Railway Gun Details" - UNIT_LEADER_SKILL_LAND_DESC:0 "Having higher skill than the enemy general gives the leader an extra chance to pick a counter tactic to beat the enemy. The skill of a general goes up as they earn experience.\n\n" - UNIT_LEADER_SKILL_NAVY_DESC:1 "The skill of an admiral goes up as they earn experience.\n\n" - UNIT_LEADER_SKILL_OPERATIVE_DESC:0 "The skill of an operative goes up as they earn experience.\n\n" - UNIT_LEADER_NO_LEADER:1 "§RNo Commander§!" - UNIT_LEADER_NEW_LEADER:1 "New Commander £command_power $VALUE|Y0$" - UNIT_LEADER_NEW_LEADER_TOOLTIP:2 "Recruiting new Commanders costs £command_power $VALUE|Y0$\n Up to a cap, the more Commanders you have, the more expensive it gets to recruit new ones, so try to find jobs for the ones you have first." - UNIT_LEADER_NO_GROUP:1 "Army not created" - UNIT_LEADER_SKILL:0 "$SKILL|Y$" - UNIT_LEADER_PROMOTE_POPUP_TITLE:0 "Promote Leader" - UNIT_LEADER_PROMOTE_POPUP_DESC:3 "Are you sure you want to promote $LEADER$? After the promotion, $LEADER$ will temporarily §Rlose§! a skill level while adjusting to the responsibilities of the new rank." - UNIT_LEADER_PROMOTE_POPUP_DESC_COST:1 "It will cost $CP|2R$ £command_power to promote this leader." - UNIT_LEADER_ASSIGNMENT_COST_HEADER:0 "Assignment Cost (£command_power ):" - UNIT_LEADER_ALREADY_AN_ADVISOR:0 "$NAME|Y$ §Ris already an advisor.§!" - UNIT_LEADER_TRAIT_REQUIRES:0 "§RRequires $TRAITNAME|Y$.§!" - UNIT_LEADER_TRAIT_ROLE:0 "§RChief roles are only assignable to Field Marshals.§!" - UNIT_LEADER_IS_COUNTRY_LEADER_ADVISOR:0 "$NAME|Y$ is a country leader and cannot become an advisor.\n" - UNIT_LEADER_ADVISOR_ROLE_TITLE:0 "$ADVISORROLE|Y$ role: $ADVISORNAME|Y$" - UNIT_LEADER_ADVISOR_ROLE_TITLE_ACTIVE:0 "(active)" - UNIT_LEADER_ADVISOR_ROLE_THEORIST_DESC:0 "$ADVISORROLE|Y$ roles can't be improved depending on Skill." - UNIT_LEADER_ADVISOR_ROLE_TRAIT_NAME:0 "$TRAIT|Y$ \n" - UNIT_LEADER_ADVISOR_ROLE_BTN_TT_HEADER:0 " §YOfficer Corps Roles§! " - UNIT_LEADER_ADD_ADVISOR_APPLICABLE_ROLES:2 "Make $NAME|Y$ available as an advisor that you can assign as a $ROLENAME|Y$ or a $PROMOTEDROLENAME|Y$" - UNIT_LEADER_ADD_ADVISOR_NO_ROLES:0 "$NAME|Y$ has no available roles." - UNIT_LEADER_ADD_ADVISOR_HAS_ROLES:0 "$NAME|Y$ has $NUMBER$ available roles." - UNIT_LEADER_ADD_ADVISOR_ROLE:0 "Make $NAME|Y$ available as an advisor ($TYPE|Y$) with these traits: " - UNIT_LEADER_CANNOT_ADD_ADVISOR_ROLE:0 "$NAME|Y$ does not have the right skill set to become an advisor." - UNIT_LEADER_CANNOT_ADD_ADVISOR_ROLE_MIN_SKILL_LEVEL:0 "§RRequires a Skill level of at least §Y$LEVEL$§! to become an advisor.§!\n" - UNIT_LEADER_CHOOSE_ADVISOR_ROLE:0 "Select an Advisor Role" - UNIT_LEADER_APPLICABLE_ADVISOR_ROLES:0 "Applicable for the Following Roles" - UNIT_LEADER_ADD_ADVISOR_TITLE:0 "Add Commander as an Advisor" - UNIT_LEADER_ADD_ADVISOR_DESC:0 "Are you sure you want to add $NAME|Y$ as an $ROLE|Y$? After this $NAME|Y$ cannot be assigned to another advisor role.\n\nIt costs $COST|Y0$ £command_power to add this commander as an advisor." - UNIT_LEADER_SORT_SKILL:0 "Sort by total skill" - UNIT_LEADER_SORT_ADVISOR:0 "Sort by advisor status" - HOURLY_MORALE_REGAIN_BASE:0 "Base: $VAL|=+$\n" - ATTRITION:0 "Attrition:" - ATTRITION_DESC:0 "Chance of equipment loss every day" - ATTRITION_TOTAL:0 "Total Attrition: $TOT|=-1%2$" - ATTRITION_UPKEEP:0 "\n - Unit Upkeep: $VALUE|=-1%0$" - ATTRITION_UPKEEP_MODIFIERS:0 "\n - Unit Upkeep modifiers:" - ATTRITION_TERRAIN:0 "\n - $TERR|H$: $ATT|=-1%0$" - ATTRITION_STATE:0 "\n - State: $ATT|=-1%0$" - ATTRITION_EQUIPMENT:0 "\n - Equipment: $ATT|=-1$" - ATTRITION_STATE_MODIFIERS:0 "\n - State modifiers:" - ATTRITION_WEATHER_MODIFIERS:0 "\n - Weather modifiers:" - ATTRITION_LOOSE_EQ_CHANCE:0 "Chance of equipment loss:" - ATTRITION_LOOSE_EQ_ENTRY:0 " - $EQ|G$ chance = $CH|Y%1$ (reliability = $RE|Y1%$)" - ATTRITION_TECH_FACTOR:0 "From technology: $VALUE|-0%$" - ATTRITION_TRAINING:1 "From §HArmy Exercises§!: $VALUE|-0%$" - ATTRITION_SUPPLY:0 " - Bad supply: $ATT|-0%$" - ATTRITION_SINGLE_UNIT:0 "§RThis unit is affected by attrition!\nAttrition present: $VALUE|Y0%$§!" - ATTRITION_SOME_UNITS:0 "§R$COUNT|Y$ unit(s) are affected by attrition!\nMaximum attrition present: $MAX|Y0%$§!" - ATTRITION_MULMOD_BY:0 " multiplied by $MOD|Y$ due to:\n$WHY$" - DIG_IN_UNIT:0 "This unit is §HEntrenched§!. It receives a $DIG|0+%$ defensive combat bonus out of a maximum of $MAX|0%Y$." - DIG_IN_AVG:0 "These units are §HEntrenched§!. The average defensive combat is $DIG|0+%$" - ACTIONS_MIXED_HEADER:0 "This counter has mixed unit actions:" - ACTION_UNIT_STANDING_STILL:0 "$COUNT|H$ - Standing still" - ACTION_UNIT_DEFENDING:0 "$COUNT|H$ - Defending" - ACTION_UNIT_SUPPORT:0 "$COUNT|H$ - Supporting Attack" - ACTION_UNIT_MOVE:0 "$COUNT|H$ - Moving" - ACTION_UNIT_ATTACK:0 "$COUNT|H$ - Attacking" - ACTION_UNIT_STRATEGIC:0 "$COUNT|H$ - Strategically redeploying" - ACTION_UNIT_NAVAL_TRANSFER:0 "$COUNT|H$ - Naval transferring" - ACTION_UNIT_RETREAT:0 "$COUNT|H$ - Retreating" - ACTION_UNIT_INVASION:0 "$COUNT|H$ - Invading by sea" - ACTION_UNIT_STRATEGIC_DISABLED:0 "$COUNT|H$ - Strategic redeployment disabled" - ACTION_UNIT_SUPPORT_BOMBARDMENT:0 "Providing bombardment support to nearby combat" - ACTION_UNIT_NAVAL_TRANSFER_INTERCEPTED:0 "$COUNT|H$ - Convoy intercepted" - ENTRENCHMENT_TT2:3 "This unit is §HEntrenched§!. It receives a $DIG|0+%$(Max: $MAX|0%Y$) defensive combat bonus." - ENTRENCHMENT_INCREASE_BY_X_REACH_MAX_IN:0 " It will increase by $DELTA|0%Y$ each day. Max entrenchment will be reached in $DAYS|Y$ days." - ENTRENCHMENT_DESC:0 "Base maximum: $BASE_MAX|Y$\n$MAX_MODIFIERS$\n\nBase gain: $BASE_GAIN|Y$\n$GAIN_MODIFIERS$" - DIG_IN_DIVISION_MOD_DESC:0 "Division Template: $VALUE|=+$" - DIG_IN_MOD_MULTI_DESC:0 "Multiplicative Modifiers:" - MERGE_NAVIES_TOO_FEW:0 "§RYou can only merge navies when you have more than one selected.§!" - MERGE_NAVIES_OTHER_NATION:0 "§RYou can only merge navies that are yours.§!" - MERGE_NAVIES_IN_COMBAT:0 "§RYou cannot merge navies when one of them is in combat.§!" - MERGE_NAVIES_ON_A_MISSION:1 "§RYou cannot merge navies when more than one of them is on a mission.§!" - MERGE_NAVIES_NOT_SAME_LOCATION:0 "§RAll navies selected must be at the same location to merge them.§!" - MERGE_NAVIES_REFITTING:0 "§RYou may not merge navies that are refitting.§!" - RANDOM_AIR_ACCIDENT_CHANCE_HEADER:0 "Chance for random accidents during takeoff/landing:" - RANDOM_AIR_ACCIDENT_CHANCE_BASE:0 "\n - Base: $CH|R1%$" - RANDOM_AIR_ACCIDENT_CHANCE_RELIABILITY:0 "\n - Equipment reliability ($RE|Y%1$): $CH|R%1$" - RANDOM_AIR_ACCIDENT_CHANCE_CARRIER:0 "\n - On carrier ship multiplier: §R$CAR|1$§!" - RANDOM_AIR_ACCIDENT_CHANCE_TRAINING:0 "\n - Running §YPilot Exercises§! multiplier: §R$VALUE|1$§!" - RANDOM_AIR_ACCIDENT_CHANCE_WEATHER:0 "\n - Weather:" - RANDOM_AIR_ACCIDENT_CHANCE_TOTAL:0 "\nTotal: $TOT|R%$" - RANDOM_AIR_ACCIDENTS_HAPPENED:0 "Total accidents happened: $TOT|R$" - DESELECT_UNIT:0 "Deselect" - DISBAND_UNIT:0 "Disband" - DISBAND_ALL_UNIT:0 "Disband all selected units" - HALT_UNIT:0 "Halt all selected units" - PLAN_EXECUTE_CAREFUL_TITLE:0 "§YCarefully§! execute battle plans" - PLAN_EXECUTE_BALANCED_TITLE:0 "Execute battle plans in a §Ybalanced manner§!" - PLAN_EXECUTE_RUSH_TITLE:0 "§YAggressively§! execute battle plans" - PLAN_EXECUTE_CAREFUL_DESC:0 "When the plan is carried out, units will not attack heavily fortified locations unless they are unmanned, and they avoid attacking provinces which will weaken the front line by making it longer." - PLAN_EXECUTE_BALANCED_DESC:0 "The standard rules for carrying out battle plans are in effect. Units will attempt to advance in a manner that keeps the front line as short as possible and may attack fortified locations." - PLAN_EXECUTE_RUSH_DESC:0 "Units will attack provinces if they are a part of the plan, even if it may mean that the front line becomes longer or may put units in exposed locations." - PLAN_EXECUTE_BLITZ_DESC:0 "§YBlitz§! battle plans" - PLAN_EXECUTE_MODE:0 "Battleplan execution mode" - CHANGE_TEMPLATE_UNIT:0 "Change Division Template" - SELECT_UNIT:0 "Select" - UNIT_LEADER_BUTTON:0 "§GClick to change Commander§!" - MOVE_SHIPS_TITLE:0 "Select Ships to Transfer" - OPEN_TASK_FORCE_COMPOSITION_EDITOR:0 "Open the task force composition editor" - CANNOT_OPEN_TASK_FORCE_COMPOSITION_EDITOR_FOR_DETACHED_TASK_FORCES:0 "§RCannot edit the composition of a detached task force§!" - TASK_FORCE_COMPOSITION_EDITOR_DESC:0 "Allows you to set targets for the number of ships of each class you want to maintain in the task force.\nRequires §YAutomatic reinforcement§! to be enabled." - TASK_FORCE_COMPOSITION_EDITOR_TITLE:0 "Task force composition editor" - NAVAL_SUB_UNIT_DEF_SELECTION_WINDOW_TITLE:0 "Select a ship class" - TASK_FORCE_COMPOSITION_NEW_TEMPLATE_NAME:0 "New template" - TASK_FORCE_COMPOSITION_FROM_SELECTED:0 "Set the template from the current composition of the task force" - SAVE_TASK_FORCE_COMPOSITION_TEMPLATE:0 "Save the composition as $NAME$" - SAVE_TASK_FORCE_COMPOSITION_TEMPLATE_INVALID_NAME:0 "Cannot use this name to save the composition" - CLEAR_TASK_FORCE_COMPOSITION_TEMPLATE:0 "Reset all requirements to zero" - DISCARD_TASK_FORCE_COMPOSITION_TEMPLATE:0 "Discard the selected template" - APPLY_TASK_FORCE_COMPOSITION:0 "Apply the new requirements and close" - APPLY_TASK_FORCE_COMPOSITION_AUTO_REINFORCE_ON:0 "Automatic reinforcement will be enabled for the task force." - APPLY_TASK_FORCE_COMPOSITION_EXCESS_TO_RESERVE:0 "Excess ships above the reinforcement requests will return to the reserve fleet." - TASK_FORCE_COMPOSITION_ANY_ROLE:0 "This requirement will be satisfied by ships of this type assigned to any role." - TASK_FORCE_COMPOSITION_ANY_ROLE_CLICK_TO_SELECT:0 "§GClick§! to select a specific role for this requirement." - TASK_FORCE_COMPOSITION_ADD_1:0 "§GClick§! to add §Y+1§!" - TASK_FORCE_COMPOSITION_ADD_5:0 "§GCtrl + Click§! to add §Y+5§!" - TASK_FORCE_COMPOSITION_ADD_10:0 "§GShift + Click§! to add §Y+10§!" - TASK_FORCE_COMPOSITION_SUB_1:0 "§GClick§! to subtract §Y1§!" - TASK_FORCE_COMPOSITION_SUB_5:0 "§GCtrl + Click§! to subtract §Y5§!" - TASK_FORCE_COMPOSITION_SUB_10:0 "§GShift + Click§! to subtract §Y10§!" - SHIP_IS_PRIDE_OF_FLEET:0 "$NAME|H$ is assigned as §HPride of the Fleet§!" - SHIP_IS_PRIDE_OF_FLEET_DESC:0 "§HPride of the Fleet§! receives various bonuses but its country will suffer §HWar Support§! if it is sunk." - NAVY_CONTAINS_PRIDE_OF_FLEET:0 "This navy contains §HPride of the Fleet§! §H($NAME$)§!" - NAVY_CONTAINS_PRIDE_OF_FLEET_WITHOUT_NAME:0 "This navy contains §HPride of the Fleet§!" - FLEET_HAS_FUEL_INEFFICIENT_SHIP_FOR_MISSION:0 "£mapicon_unit_invalid_orders This fleet contains task forces operating at sub-optimal fuel efficiency" - TASK_FORCE_HAS_FUEL_INEFFICIENT_SHIP_FOR_MISSION:0 "£mapicon_unit_invalid_orders The following ship classes are not fuel efficient for the mission $MISSION|H$" - SPECIFIC_NAVY_CONTAINS_PRIDE_OF_FLEET:0 "$NAVY_NAME|H$ contains §HPride of the Fleet§! §H($NAME$)§!" - DISBAND_PRIDE_OF_THE_FLEET_COST:1 "Disbanding your §HPride of the Fleet§! §H($NAME$)§! will cost $COST|R$ £pol_power " - - SET_SHIP_PRIDE_OF_FLEET:0 "§HAssign§! $NAME|H$ as §HPride of the Fleet§!" - REPLACE_SHIP_PRIDE_OF_FLEET:0 "§RReassign§! $NAME|H$ as current §HPride of the Fleet§!" - SET_SHIP_PRIDE_OF_FLEET_DESC:0 "You will receive following bonuses:\n$BONUS$\n\n" - SET_SHIP_PRIDE_OF_FLEET_DESC_2_WITHOUT_EXISTING:0 "You can only have one §HPride of the Fleet§! at a time and once a ship is assigned, it will cost $COST|R$ £pol_power to unassign or replace it." - SET_SHIP_PRIDE_OF_FLEET_DESC_2_WITH_EXISTING:0 "It will cost $COST|R$ £pol_power replace current §HPride of the Fleet§! §H($OLD_NAME$)§!." - UNSET_SHIP_PRIDE_OF_FLEET:0 "§RUnassign§! $NAME|H$ as §HPride of the Fleet§!" - UNSET_SHIP_PRIDE_OF_FLEET_DESC:0 "You will §RLose§! following bonuses:\n$BONUS$\n\nIt will cost $COST|R$ £pol_power to unassign." - - PRIDE_OF_THE_FLEET_COUNTRY_BONUS:0 "\n§HCountry Bonus:§!\n$BONUS$" - PRIDE_OF_THE_FLEET_SHIP_BONUS:0 "\n§HShip Bonus:§!\n$BONUS$" - PRIDE_OF_THE_FLEET_TEMP_BONUS:0 "\n§RPenalty when sunk (for $NUM$ days):§!\n$BONUS$" - - SET_SHIP_PRIDE_OF_FLEET_POPUP:0 "§HAssign Pride of the Fleet§!" - SET_SHIP_PRIDE_OF_FLEET_POPUP_DESC:0 "Are you sure you want to §HAssign§! $NAME|H$ as §HPride of the Fleet§!?\n\nOnce assigned, it will cost $COST|R$ £pol_power to unassign or replace §HPride of the Fleet§!. You will receive following bonuses:\n$BONUS$\n\n" - - REPLACE_SHIP_PRIDE_OF_FLEET_POPUP:0 "§HReplace as Pride of the Fleet§!" - REPLACE_SHIP_PRIDE_OF_FLEET_POPUP_DESC:0 "Are you sure you want to §HAssign§! $NAME|H$ as §HPride of the Fleet§! and §RReplace§! $OLD_NAME|H$?\n\nIt will cost $COST|R$ £pol_power to replace §HPride of the Fleet§!. You will receive following bonuses:\n$BONUS$\n\n" - - UNSET_SHIP_PRIDE_OF_FLEET_POPUP:0 "§HUnassign Pride of the Fleet§!" - UNSET_SHIP_PRIDE_OF_FLEET_POPUP_DESC:0 "Are you sure you want to §RUnassign§! $NAME|H$ from §HPride of the Fleet§!?\n\nIt will cost $COST|R$ £pol_power to unassign and you will §RLose§! following bonuses:\n$BONUS$" - - NOT_ENOUGH_PP_TO_UNASSIGN:0 "\n\n§RNot enough Political Power§!" - NOT_ENOUGH_PP_TO_DISBAND_POTF:0 "\n\n§RNot enough Political Power to unassign §!§HPride of the Fleet§!" - SELECT_HOME_BASE:0 "Select home base for selected fleets" - SET_TASK_FORCES_AS_RESERVE_FLEET:0 "Set the selected task forces as reserve fleets" - SET_SHIPS_AS_RESERVE_FLEET:0 "Split the selected ships into a reserve fleet" - SELECTED_TASK_FORCES_ARE_ALREADY_RESERVE_FLEET:0 "§RThe selected task forces are already reserve fleets§!" - AUTO_BALANCE_SHIPS_IN_TASK_FORCES:0 "Distribute selected ships in balanced task forces" - AUTO_BALANCE_SHIPS_IN_TASK_FORCES_DETACHED:0 "§RCannot distribute ships in detached task forces§!" - AUTO_BALANCE_SHIPS_IN_TASK_FORCES_TOO_FEW:0 "§RYou must have more than one valid ship selected§!" - CREATE_NEW_TASK_FORCE_FROM_SELECTION:0 "Create a new task force" - ENABLE_TASK_FORCE_AUTO_REINFORCEMENT:0 "§GClick§! to §HEnable§! the §HAutomatic reinforcement§! of the selected task forces" - DISABLE_TASK_FORCE_AUTO_REINFORCEMENT:0 "§GClick§! to §HDisable§! the §Hautomatic reinforcement§! of the selected task forces" - TASK_FORCE_AUTO_REINFORCEMENT_DISABLED_FOR_DETACHED:0 "§RDetached task forces cannot have§! §HAutomatic reinforcement§!" - TASK_FORCE_AUTO_REINFORCEMENT_DESC:0 "When the §HAutomatic reinforcement§! of a task force is enabled, it will pull ships from the reserve fleets of its theater in order to match the requirements set.\nWhen enabled, the requirements are shown below the actual number of ships in the task force.\n\nThe task force will never return ships automatically if it has more than the requirements." - CLICK_TO_SELECT_FLEET:0 "§GClick§! to select fleet $NAME|H$" - FLEET_NAMED:0 "$NAME|H$" - TASK_FORCE_NAMED:0 "$NAME|H$" - TASK_FORCE_MEMBER_OF_FLEET:0 "Member of the fleet $FLEET|H$" - TASK_FORCE_IS_RESERVE_FLEET:0 "Reserve fleet" - RESERVE_FLEETS_FOR_THIS_THEATER:0 "Reserve fleets for this theater" - RESERVE_FLEETS_FOR_THIS_THEATER_DESC:0 "Ships that go out of production and do not have a specific §YDeploy target§! will automatically be assigned to reserve.\nShips in the reserve fleet will automatically move to reinforce task forces which have §YAutomatic reinforcement§! enabled and are not meeting their set requirements.\nLikewise, if a task force has more ships than its set requirements, some will detach and move to the closest port and to reserve." - RESERVE_FLEET_NOT_REINFORCING:0 "§RNot ready to issue reinforcements§!" - RESERVE_FLEET_COMPLETING_MOVE_ORDER:0 "- §RIs moving§!" - RESERVE_FLEET_NEEDS_TO_BE_IN_NAVAL_BASE_TO_REINFORCE:0 "- §RNeeds to be docked in a naval base§!" - TASK_FORCE_ASSIGNED_TO_MISSION:0 "Mission: $MISSION|H$" - TASK_FORCE_ACTIVITY_DESC_DETACHED_MOVING_TO_REFIT:1 "£going_to_refit Detached and moving to refit in $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_DETACHED_REINFORCING:1 "£merging Merging with $TARGET|H$" - TASK_FORCE_ACTIVITY_DESC_DETACHED_REPAIRING:1 "£going_to_repair Detached and moving to repair in $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_DOCKED:0 "£mapicon_port_strike_result_text Docked in $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_HOLDING_POSITION:0 "Holding position in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_IN_COMBAT:0 "£in_combat Engaged in combat in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_MOVING_TO_AREA:0 "£right_arrow Moving to $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_MOVING_TO_ASSIGNED_AREA:0 "£right_arrow Moving to assigned region $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_MOVING_TO_ASSIGNED_FLEET_AREA:0 "£right_arrow Moving to assigned fleet area" - TASK_FORCE_ACTIVITY_DESC_MOVING_TO_NAVAL_BASE:0 "£right_arrow Moving to naval base $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_NO_ASSIGNED_REGION:0 "£trigger_no §RNo assigned regions§!" - TASK_FORCE_ACTIVITY_DESC_NO_ACCESSIBLE_REGION:0 "£trigger_no §RNo accessible regions§!" - TASK_FORCE_ACTIVITY_DESC_PERFORMING_MISSION_IN_FLEET_AREA:0 "Operating in assigned fleet area" - TASK_FORCE_ACTIVITY_DESC_PERFORMING_MISSION_IN_FLEET_AREA_WITH_EFFICIENCY:1 "Operating in assigned fleet area ($VAL$)" - TASK_FORCE_ACTIVITY_DESC_PERFORMING_MISSION_IN_REGION:0 "Operating in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_REFITTING:0 "£refitting Refitting in $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_REPAIRING:0 "£repairing Repairing in $FLAG$ $NAVAL_BASE|H$" - TASK_FORCE_ACTIVITY_DESC_SPOTTING_ENEMY_TASK_FORCE:0 "£spotting $PROGRESS|H0$§H%§! Locating a $FLAG$ §Htask force§! in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_SPOTTING_ENEMY_TRANSFER:0 "£spotting $PROGRESS|H0$§H%§! Locating a $FLAG$ §Hnaval transfer§! in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_SPOTTING_ENEMY_CONVOY:0 "£spotting $PROGRESS|H0$§H%§! Locating a $FLAG$ §Hconvoy§! in $REGION|H$" - TASK_FORCE_ACTIVITY_DESC_STRIKE_FORCE_INTERCEPTING:0 "£going_to_combat Intercepting $TARGET|H$" - TASK_FORCE_FLEET_INFORMATION_HEADER:1 "§HFleet Information§!\nMaximum Speed: $SPEED|H$\nMaximum Range: $RANGE|H$\nSub Detection: $SUBDETECTION|H$\nSurface Detection: $SURFACEDETECTION|H$\n" - TASK_FORCE_FLEET_INFORMATION_SLOWEST_SHIPS:0 "\n§HSlowest Ships§!\n" - TASK_FORCE_FLEET_INFORMATION_SHORTEST_RANGES:0 "\n§HShortest Ranges§!\n" - TASK_FORCE_FLEET_INFORMATION_DELAYED:0 "To learn more about individual ship details, select a task force, then click on the ship details portrait." - OTHER_SHIPS:0 "Other Ships" - ALL_SHIPS:0 "All Ships" - ALL_SAME_TYPE_SHIPS:0 "All $TYPE$s" - SHIP_RESULT_SUNK:0 "All sunk ships of $SHIP$ type:" - AND_X_MORE_SUNK_SHIPS:0 "\nAnd $VAL|Y$ more ships" - SHIP_AND_TYPE:0 "$SHIP|H$ ($TYPE|H$)" - LEARNING_TRAITS_TITLE:0 "Learning Traits:" - LEARNING_TRAITS:0 "$NAME$ ($PERC|%0H$ done)" - UNIT_MOVEMENT_BLOCKED_BY_STRAIT:0 "§RCannot move through straits blocked by enemy fleet.§!" - UNIT_BLOCKS_STRAIT_WITHIN_FRIENDLY:0 "Navy §GBlocks§! strait within $STATE1|H$" - UNIT_BLOCKS_STRAIT_WITHIN_HOSTILE:0 "Navy §RBlocks§! strait within $STATE1|H$" - UNIT_BLOCKS_STRAIT_BETWEEN_FRIENDLY:0 "Navy §GBlocks§! strait between $STATE1|H$ and $STATE2|H$" - UNIT_BLOCKS_STRAIT_BETWEEN_HOSTILE:0 "Navy §RBlocks§! strait between $STATE1|H$ and $STATE2|H$" - NO_MOVE_IS_IN_HOME_REPAIRING:0 "$FLEET|H$ is currently repairing in $TARGET|H$. " - NO_MOVE_HEADING_HOME_TO_REPAIR:0 "$FLEET|H$ is on its way to $TARGET|H$ to repair. " - NO_MOVE_HEADING_HOME_TO_REPAIR_RESUME:0 "Afterwards, it will continue its last mission ($MIS|H$).\n" - NO_MOVE_HEADING_HOME_TO_REPAIR_REJOIN:0 "Afterwards, it will merge back with the $FLEET|H$.\n" - NO_MOVE_HEADING_HOME_TO_REPAIR_STAY:0 "Afterwards, it will stay in the base.\n" - NAVY_REPAIR_REJOIN_DESC:0 "Rejoining with $FLEET|H$ when reparations are complete." - NAVY_DETACHED_PARENT_STATUS:0 "Our task force we've detached from." - NAVY_DETACHED_CHILD_STATUS:0 "Detached from us: $STATUS|H$" - NAVY_MERGE_CHILD_STATUS:0 "They are moving to us to merge" - NAVY_MERGE_PARENT_STATUS:2 "We are moving to this task force to merge" - NAVY_ACTIVITY_MOVING_TO_REFIT_DESC:0 "$FLEET|H$ on its way to $TARGET|H$ to refit." - NAVY_ACTIVITY_REFITTING_DESC:0 "$FLEET|H$ refitting in $TARGET|H$." - NAVY_ACTIVITY_REINFORCING_DESC:0 "$FLEET|H$ on its way to reinforce $TARGET|H$." - NAVY_DETACHED_ACTIVITY_STATUS_MOVING_TO_REFIT:0 "On the way to refit." - NAVY_DETACHED_ACTIVITY_STATUS_MOVING_TO_REPAIR:0 "On the way to repair." - NAVY_DETACHED_ACTIVITY_STATUS_REFITTING_ONE_SHIP:0 "Refitting $PROGRESS|%1G$." - NAVY_DETACHED_ACTIVITY_STATUS_REFITTING_MANY_SHIPS:0 "Refitting §G$NUM$/$MAX$§! ships." - NAVY_DETACHED_ACTIVITY_STATUS_REPAIRING_ONE_SHIP:0 "Repairing $PROGRESS|%1G$." - NAVY_DETACHED_ACTIVITY_STATUS_REPAIRING_MANY_SHIPS:0 "Repairing §G$NUM$/$MAX$§! ships." - NAVY_DETACHED_ACTIVITY_STATUS_REINFORCING:0 "Reinforcing with $PARENT|H$." - NO_ACCESS_TO_TARGET:0 "Unit cannot enter province." - NO_RAILWAY_ACCESS_TO_TARGET:0 "Unit cannot enter provinces lacking railways." - NO_RAILWAY_ACCESS_TO_TARGET_COOLDOWN:1 "Unit cannot enter provinces with unconverted railways. Conversion completed in $DAYS$ days." - NO_RAILWAY_ACCESS_STANDING_COOLDOWN:1 "Unit cannot move as it's in a province with unconverted railways. Conversion completed in $DAYS$ days." - NO_SAFE_RAILWAY_ACCESS:0 "Unit cannot enter provinces with enemy units." - NO_ADVANCE_ALLOWED:0 "Unit cannot advance into an enemy province." - NO_RETREAT_ALLOWED:0 "We are not allowed to retreat here." - NO_ADVANCE_IN_COMBAT:0 "We cannot advance while already in combat." - NO_STRENGTH_TO_FIGHT:0 "We need at least §Y$VAL$§!% Strength to fight." - NO_ORG_TO_FIGHT:0 "We need at least §Y$VAL$§!% Organization to fight." - NO_MOVE_DISEMBARKING:0 "Not possible to move while disembarking." - NO_MOVE_RETREAT:0 "We cannot give move orders while retreating." - UNIT_STAT_MANPOWER:0 "§TCurrent §HManpower§! is $VAL|H$ out of $MAX|H$§!" - UNIT_LEADER_CAPACITY_SORT:0 "Capacity" - UNIT_LEADER_NAME_SORT:0 "Name" - UNIT_LEADER_SKILL_SORT:0 "Skill" - UNIT_LEADER_SEARCH:0 "Search" - MANPOWER_CAPACITY:0 "$VAL|*0$/$MAX|*0$" - MANPOWER_CAPACITY_1:0 "$VAL|*1$/$MAX|*1$" - EQUIPMENT_RATIO:0 "$VALUE|0%$" - EQUIPMENT_FILL:0 "$CURRENT|*0$/$TOTAL|*0$" - EQUIPMENT_FILL2:0 "$CURRENT$/$TOTAL$" - EQUIPMENT_TOTAL:0 "$CURRENT|0$" - MANPOWER_TOTAL_VALUE:0 "$VALUE|0*$" - MANPOWER_AIR_WING_CREATION_VALUE:0 "$VALUE|0$" - SERVICE_MANPOWER_HEADER:0 "Service Manpower" - anti_tank:0 "Ballista" - anti_tank_desc:0 "" - anti_air:0 "Wind Lance" - anti_air_desc:0 "" - artillery:0 "Support Archers" - artillery_desc:0 "" - rocket_artillery:0 "Support Crossbowmen" - rocket_artillery_desc:0 "" - rocket_artillery_brigade:0 "Crossbowmen" - rocket_artillery_brigade_desc:0 "" - anti_tank_brigade:0 "Ballista" - anti_tank_brigade_desc:0 "" - anti_air_brigade:0 "Wind Lance" - anti_air_brigade_desc:0 "" - artillery_brigade:0 "Archers" - artillery_brigade_desc:0 "" - armored_car:0 "Armored Carriage" - armored_car_recon:0 "Scout Armored Carriage" - mot_artillery_brigade:0 "Mounted Archer" - mot_anti_tank_brigade:0 "Ballista Chariot" - mot_anti_air_brigade:0 "Wind Lance Chariot" - mot_rocket_artillery_brigade:0 "Chariot Archers" - mot_recon:0 "Scout Chariot" - light_tank_destroyer_brigade:0 "Lancers" - light_tank_destroyer_brigade_desc:0 "" - medium_tank_destroyer_brigade:0 "Heavy Cavalry" - medium_tank_destroyer_brigade_desc:0 "" - heavy_tank_destroyer_brigade:0 "Siege Machine (TD)" - heavy_tank_destroyer_brigade_desc:0 "A heavy tank destroyer has the turret removed to carry an even larger gun in a fixed mounting." - super_heavy_tank_destroyer_brigade:0 "Siege Tower (TD)" - super_heavy_tank_destroyer_brigade_desc:0 "A super heavy tank chassis with an even larger gun in a fixed mount instead of a turret." - modern_tank_destroyer_brigade:0 "Modern Tank Destroyer" - modern_tank_destroyer_brigade_desc:0 "A Modern Tank chassis fitted with a much larger gun instead of a turret." - light_sp_anti_air_brigade:0 "Light Cavalry (AA)" - medium_sp_anti_air_brigade:0 "Heavy Cavalry (AA)" - heavy_sp_anti_air_brigade:0 "Siege Machine (AA)" - super_heavy_sp_anti_air_brigade:0 "Siege Tower (AA)" - modern_sp_anti_air_brigade:0 "Modern SP Anti-Air" - light_sp_artillery_brigade:0 "Mounted Archers" - medium_sp_artillery_brigade:0 "Heavy Cavalry (SPG)" - heavy_sp_artillery_brigade:0 "Siege Machine (SPG)" - super_heavy_sp_artillery_brigade:0 "Siege Tower (SPG)" - modern_sp_artillery_brigade:0 "Modern SP Artillery" - cavalry:0 "Fake Horses" - cavalry_desc:0 "Horse mounted infantry. More expensive, but with good mobility." - light_armor:0 "Light Cavalry" - light_armor_desc:0 "Lightly armored tanks." - medium_armor:0 "Heavy Cavalry" - medium_armor_desc:0 "Medium tanks are flexible and can do almost any job." - heavy_armor:0 "Siege Machine" - heavy_armor_desc:0 "The strongest tanks with powerful armor and weapons, but slow and tactically inflexible." - super_heavy_armor:0 "Siege Tower" - motorized:0 "Carriage" - motorized_desc:0 "Motorized infantry transportation, such as trucks and motorcycles." - mechanized:0 "Chariot" - mechanized_desc:0 "Lightly armored infantry transportation." - modern_armor:0 "Modern Tank" - modern_armor_desc:0 "Modern Tanks have evolved to deal with most battlefield situations. Powerful guns and sloped armor have eliminated the need for specialized tanks." - infantry:0 "Skirmishers" - infantry_desc:0 "Meat for the meat grinder." - bicycle_battalion:0 "Bicycle Battalion" - bicycle_battalion_desc:0 "Meat for the meat grinder, but with extra bits of metal." - paratrooper:0 "Paratroopers" - paratrooper_desc:0 "By incorporating airborne forces into our army, we can make forced entries and position key troops in previously inaccessible areas, allowing for new tactical opportunities." - marine:0 "Marines" - marine_desc:0 "Troops specializing in amphibious warfare are growing ever more indispensable. Improvised methods and equipment become things of the past as our naval infantry is supported by specialized landing craft and training." - mountaineers:0 "Mountaineers" - mountaineers_desc:0 "Combat in mountain ranges exposes troops to many perils, but sometimes cannot be avoided. Providing our soldiers with specialized training for this environment, we can minimize these risks." - penal_battalion:0 "Penal Battalion" - penal_battalion_desc:0 "The ultimate meat for the meat grinder." - irregular_infantry:0 "Irregular Infantry" - irregular_infantry_desc:0 "Armed local militia" - giant:0 "Giant" - giant_desc:0 "A stone giant of the Misty Mountains" - balrog:0 "Balrog" - balrog:0 "A Balrog of Morgoth" - riders_of_the_naith:0 "Riders of the Naith" - riders_of_the_naith_desc:0 "Some of the best elven horsemen of the Naith" - sindar_pathstalkers:0 "Sindar Pathstalkers" - sindar_pathstalkers_desc:0 "Highly skilled Sindar scouts that can remain undetected almost anywhere." - marchwardens_of_lothlorien:0 "Marchwardens" - marchwardens_of_lothlorien_desc:0 "Superb warriors of Lothlórien. Comprised of a heathly mix of swordsmen and archers." - militia:0 "Militia" - militia_desc:0 "All-volunteer militias." - blackshirt_assault_battalion:1 "Assault Battalion" - blackshirt_assault_battalion_desc:0 "Elite militia units trained and equipped to operate as assault battalions attached to ordinary divisions." - maritime_patrol_plane:1 "Naval Patrol Bomber" - recon:1 "Cavalry Recon Detachment" - recon_desc:0 "Sending smaller groups to scout ahead before moving in the main force allows us to gather intelligence about where the enemy is and how many we are facing." - mot_recon:0 "Motorized Recon Company" - mot_recon_desc:0 "Utilizing light trucks and motorcycles, recon companies can range further ahead and cover more ground to protect the flanks." - armored_car_recon:0 "Light Armored Recon Company" - armored_car_recon_desc:0 "Equipped with armored cars, a recon company can take the fight to the enemy, and prevent enemy scouts from gaining any valuable information." - light_tank_recon:0 "Armored Recon Company" - light_tank_recon_desc:0 "Using light tanks in a recon role, we can conduct reconnaisance by fire and get a better understanding of what we are facing." - armored_car:0 "Armored Car" - armored_car_desc:0 "" - engineer:0 "Engineer Company" - engineer_desc:0 "Construction of fortifications and breaching obstacles make combat engineers vital in the field. Giving our engineers a versatile role enables us to deploy them in the diverse situations where they will be needed." - field_hospital:0 "First Aid Tent" - field_hospital_desc:0 "Provides emergency medical attention to wounded soldiers in the field." - logistics_company:0 "Logistics Company" - logistics_company_desc:0 "Handles planning, requesting and distributing resources for the division." - military_police:0 "Military Police" - military_police_desc:0 "Maintains order and suppresses resistance in occupied territories." - signal_company:0 "Signal Company" - signal_company_desc:0 "Responsible for local communications working in the division." - maintenance_company:0 "Maintenance Company" - maintenance_company_desc:0 "Performs various forms of maintenance on division equipment to prevent failure." - amphibious_armor:0 "Amphibious Tank Battalion" - amphibious_mechanized:0 "Amtrac Battalion" - amphibious_armor_desc:0 "A battalion of amphibious tanks." - amphibious_mechanized_desc:0 "An armored infantry unit in amphibious vehicles." - amphibious_light_armor:0 "Light Amphibious Tank Battalion" - amphibious_light_armor_desc:0 "A battalion of light tanks, capable of amphibious operations." - amphibious_medium_armor:0 "Medium Amphibious Tank Battalion" - amphibious_medium_armor_desc:0 "A battalion of medium tanks, capable of amphibious operations." - amphibious_heavy_armor:0 "Heavy Amphibious Tank Battalion" - amphibious_heavy_armor_desc:0 "A battalion of heavy tanks, capable of amphibious operations." - UNIT_LEADER_TRAITS:1 "Details" - UNIT_LEADER_PROMOTE:0 "Promote" - UNIT_LEADER_PROMOTE_WITH_COST:0 "Promote £command_power $CP|2R$" - UNIT_LEADER_PROMOTE_BLOCKED:0 "Unable to promote." - UNIT_LEADER_PROMOTE_NEED_CP:0 "Need $CP|2R$ more CP." - CANNOT_MOVE_WHILE_TRAINING:0 "Cannot move while conducting §HArmy Exercises§!" - UNIT_DEMILITARIZED:0 "$STATE|H$ is a demilitarized zone." - UNIT_IMPASSABLE:0 "Path to $STATE|H$ is impassable." - UNIT_ADJECENCY_RULE_BLOCKED:0 "Movement is blocked due to the $RULE_NAME|H$ permission" - UNIT_CANT_MOVE_TO_OCCUPIED_NEUTRAL:0 "§RCannot move to a location§! owned by $OWNER|Y$.\nWe need to ask them for a §GMilitary Access§! first." - DEMILITARIZED_ZONE:1 "Demilitarized: §Rtroops may not enter§!" - PLAN_PREPARATION:0 "Plan preparation attack bonus: $VALUE|0Y%$ (Max: $MAX|0Y%$)" - PLAN_PREPARATION_FACTOR:0 "Plan preparation attack bonus factored by: $VALUE|0+%$" - PLAN_PREPARATION_CHANGE:0 "Preparation increases by $VALUE|1Y%$ each day." - PLAN_PREPARATION_DESC:0 "Units at the starting position of a plan will start ticking up a preparation bonus. Once they start fighting with the plan or move away this bonus will begin ticking down again." - SELECT_HALF_DIVISIONS:0 "§TSelect half of the current divisions§!" - HOLD_DIVISIONS:0 "§THold divisions.§!" - MOUNT_BUTTON_SINGLE_LOAD_DESC:0 "Load division to transport ship." - MOUNT_BUTTON_SINGLE_UNLOAD_DESC:0 "Unload division from transport ship." - MOUNT_BUTTON_MULT_LOAD_DESC:0 "Load all available divisions to transport ships." - MOUNT_BUTTON_MULT_UNLOAD_DESC:0 "Unload all available divisions from transport ships." - MOUNT_BUTTON_ERROR_DESC:0 "Load/Unload transport ships with units." - MAX_ORGANIZATION_TITLE:0 "§HMax Organization:§!\n" - FROM_TEMPLATE:0 "Division Template: $VAL|Y$" - FROM_TEMPLATE_MOD:0 "From Division Template: $VAL|+=%$" - FROM_TEMPLATE_MOD2:0 "From Division Template: $VAL|+=$" - OOS_MOD2:0 "Out of Supply: $VAL|+=%$" - ORG_REGAIN_INFRA2:0 "Infrastructure: $VAL|+=%$" - PARADROP_MORALE_PENALTY:0 "Recent Paradrop: $VAL|+=%$" - MORALE_TITLE:0 "§HHourly Recovery:§! $VAL|+=$" - SHIP_MORALE:0 "Ship: $VAL|Y$" - SHIP_MORALE_MOD:0 "Ship: $VAL|=%$" - NAVAL_COMBAT_SHIP_ORGANIZATION:0 "Organization: $CUR|0Y$/$MAX|0Y$\n" - NAVAL_COMBAT_SHIP_ORGANIZATION_DESC:0 "Organization indicates combat readiness and how organized a ship is. A ship with no organization can't fight" - ORG_LOSS_TITLE:0 "§HCombat Loss:§!" - ORG_LOSS_AT_LOW_ORG_FACTOR:0 "Organization loss in combat while below $LEVEL|0Y%$ of Max Organization: $VAL|-=%$" - STAT_FROM_TECH:0 "From Technology: $VAL|+=1%$" - STAT_FROM_EQUIPMENT:0 "From Equipment: $VAL|+=1%$" - STAT_BASE_VALUE:0 "Base: " - LOW_MANPOWER_STAT_EFFECT:0 "§RWe currently only have $CUR|Y$ of $MAX|Y$ men in this division, limiting all stats to $FACTOR|%Y$ of what they would be if all equipment was present.§!" - TITLE_STATS_FROM_BATTALIONS:0 "§HDivision Setup:§!" - TITLE_STATS_FROM_OTHER:0 "§YExternal Factors:§!" - UNIT_EXILED:0 "This unit is exiled. It needs to return to our territories." - FINAL_STAT_AVERAGE:0 "Averaged base: " - FINAL_STAT_TOTAL:0 "Total base: " - FINAL_STAT_MAX:0 "Highest: " - FINAL_STAT_MIN:0 "Lowest base: " - FINAL_STAT_WEIGHTED:0 "Final Weighted Average ($WEIGHT|%0Y$ highest): " - STAT_SUBUNIT_COUNT:0 "$VAL$ x " - UNIT_STATS_STATS_TAB:0 "Stats" - UNIT_STATS_TEMPLATE_TAB:0 "Template" - COMBAT_UNIT_ICON_WINNING:0 "§GWinning Battle ($AMOUNT|H%0$)§!" - COMBAT_UNIT_ICON_LOSING:0 "§RLosing Battle ($AMOUNT|H%0$)§!" - COMBAT_UNIT_ICON_UNDECIDED:0 "§TBattle§!" - COMBAT_UNIT_ICON_DESC:0 "§T$UNIT|H$ is engaged in a battle in $STATE|H$.§!" - COMBAT_UNIT_ICON_TERRAIN:0 "§TTerrain: $TERRAIN|H$§!" - category_light_infantry:0 "Leg Infantry" - TRANSPORT_WEIGHT_VAL:0 "$VAL$" - TRANSPORT_WEIGHT_DESC:0 "Total weight of divisions" - category_all_infantry:0 "All Infantry & Mobile" - category_front_line:0 "All Frontline Battalions" - category_support_battalions:1 "Support Companies" - category_all_armor:0 "Cavalry Variants" - category_tanks:0 "Cavalry" - category_army:0 "Army" - category_line_artillery:0 "Line Archers" - category_artillery:0 "Archer Support & Line" - category_fighter:0 "Fighter" - category_heavy_fighter:0 "Heavy Fighter" - category_cas:0 "Close Air Support" - category_nav_bomber:0 "Naval Bombers" - category_tac_bomber:0 "Tactical Bombers" - category_strat_bomber:0 "Strategic Bombers" - TRANSPORT_ALREADY_ACTIVE:0 "We are already being transported" - TRANSPORT_NO_NAVAL_BASE:0 "Cannot transport to a non-naval base location" - TRANSPORT_NO_FROM_NAVAL_BASE:0 "Cannot transport from a non-naval base location" - TRANSPORT_NOT_ENOUGH:0 "We need $NEED|Y$ convoys but have only $FREE|Y$ to transport this division(s)." - TRANSPORT_ACTIVE_CANT_MOVE:0 "Cannot move a unit while it is being transported." - TRANSPORT_NOT_DURING_COMBAT:0 "Cannot redirect transport while convoy is in combat." - NO_COUNTER_ATTACK_IN_COMBAT:0 "§RCannot counter attack a unit you are already defending against§!" - TRANSPORT_NO_ACCESS:0 "We have no access there." - TRANSPORT_NO_SEA_ROUTE:0 "§RNo valid sea route to this location.§!" - ATTRITION_NAVAL_TRANSFER:0 "Naval transportation: $ATT|=-1%0$" - NAVAL_TRANSPORT_INTERCEPT_WARNING:1 "§RWe are currently at war and our transports risk being sunk when moving troops. We can make sure ships on Escort Mission are in the area to help if that happens.§!\n Transporting on this particular route has a $ATTR|%R0$ chance of being detected and intercepted." - NAVAL_TRANSPORT_MOVE_DESC:0 "§GRight-click§! on §Ythe naval icon§! to §Ytransport§! the units to this §Ynaval base§!. Transport will require $CONVOYS|Y$ convoys." - NAVAL_TRANSPORT_MOVE_DESC_ICON:0 "§GRight-click§! to §Ytransport§! the units to this §Ynaval base§!. Transport will require $CONVOYS|Y$ convoys." - NAVAL_TRANSPORT_MOVE_DISALLOWED_DESC:0 "$UNIT_TYPE_PLURAL|U$ cannot utilize navy transports." - NAVAL_INVASION_LACK_TRANSPORT:0 "Reserved Convoys: $VAL|R$/$NEED|Y$." - NAVAL_INVASION_LACK_PREPARATION:1 "Invasion is still preparing $VAL|R0$/$NEED|Y0$ days." - NAVAL_INVASION_WE_LACK_PREPARATION:0 "We have prepared for $VAL|Y0$ days out of the $NEED|Y0$ needed." - NAVAL_INVASION_THEY_LACK_PREPARATION:0 "They have prepared for $VAL|Y0$ days out of the $NEED|Y0$ needed." - NAVAL_INVASION_PREPERATION_SPEED:0 "Preparation Speed:" - NAVAL_INVASION_BLOCKED_STRAIT:0 "§RDue to $RULES|H$ being blocked between $FIRST|H$ and $SECOND|H$ our armies cannot invade.§!" - NAVAL_INVASION_OVER_CAP:1 "§RNaval Invasion Capacity Exceeded:§!\nUsed in invasions $USED|Y$\nTotal limit $MAX|Y$\nSelected divisions $SELECTION|R$.\nResearch more £tech_mod Transports Technology to increase your Naval Invasion Capacity." - MODIFIER_NAVAL_INVASION_CAPACITY:0 "Naval Invasion Capacity" - MODIFIER_NAVAL_INVASION_CAPACITY_DESC:0 "Total number of divisions that can be assigned to a naval invasion order." - motorized_rocket_brigade:0 "Chariot Archers" - motorized_rocket_brigade_short:0 "Chariot Archers" - motorized_rocket_brigade_desc:0 "Self-propelled rocket artillery allows for larger, multiple rocket launchers which can both move in and out quickly after striking a target area." - NAVAL_SUPREMACY:0 "§HNaval Supremacy:§! $VALUE|%H$" - NAVAL_REGION_ACCESS_LEVEL:0 "Access level: $LVL$" - NAVAL_REGION_ACCESS_ALLOWED:0 "§GAllowed§!" - NAVAL_REGION_ACCESS_AVOID:0 "§HAvoid§!" - NAVAL_REGION_ACCESS_BLOCKED:0 "§RBlocked§!" - NAVAL_REGION_ACCESS_ALLOWED_DESC:0 " - §HFleets§! and §HTrade routes§! will move through this region as normal." - NAVAL_REGION_ACCESS_AVOID_DESC:1 " - §HFleets§! and §HTrade routes§! will try to §Havoid§! this region, unless there is no other route." - NAVAL_REGION_ACCESS_BLOCKED_DESC:0 " - §HTrade routes§! will §Rnever pass§! through this region.\n - §HFleets§! will §Rnever pass§! through this region, unless there is no other route." - CAN_NOT_PARADROP_BATALION:0 "$AMOUNT|H$ of $BATALION|H$ battalions cannot be parachuted." - CAN_PARADROP_TEMPLATE:0 "Divisions using this template §GCAN§! be parachuted." - CAN_NOT_PARADROP_TEMPLATE:0 "Divisions using this template §RCANNOT§! be parachuted." - BATALION_CAN_BE_PARCHUTED:0 "This battalion §GCAN§! be parachuted." - BATALION_CAN_NOT_BE_PARCHUTED:0 "This battalion §RCANNOT§! be parachuted." - ESTIMATED_NAVAL_POWER:1 " Friendly ships with orders to engage: $US|0Y$\n Enemy ships with orders to engage: $THEM|Y$" - ESTIMATED_NAVAL_POWER_SUPREMACY:0 " Friendly supremacy: $US|0Y$\n Enemy supremacy: $THEM|Y$" - NAV_AIR_SUPERIORITY:1 " Our Air Superiority increases our ship amount impact by: $VALUE|%G=$" - NAV_MINES_EFFECT_ON_US:1 " Our Mine Coverage increases our ship amount impact by: $VALUE|%G=$" - NAV_MINES_EFFECT_ON_ENEMY:1 " Enemy Mine Coverage increases their ship amount impact by: $VALUE|%G=$" - NAV_ENEMY_AIR_SUPERIORITY:1 " Enemy Air Superiority increases their ship amount impact by: $VALUE|%=R$" - NAV_SUPREMACY_INTEL:1 "§RWe know too little about this region!§!" - NAV_SUPREMACY_INTEL_SCALED:1 "§RNaval Supremacy is scaled to $RATIO|%.0R$ because of low enemy intel§!" - INTEL_EFFICIENCY:0 " Intel efficiency: $VAL|%+$" - NAVAL_INVASION_CAN_NOT_TRANSFER_THROUGH:1 " - $NAME|Y$ - We only have $SUP|0%R$ Naval Supremacy but require $NEEDED|0%Y$" - NAVAL_INVASION_CAN_NOT_TRANSFER_THROUGH_TITLE:0 "\n§RInsufficient Naval Supremacy in regions:§!\n" - NAVAL_INVASION_WE:0 "We" - NAVAL_INVASION_CAN_NOT_TRANSFER_THROUGH_NO_INTEL:2 "\n§R$WHO$ lack sufficient intel to dare sending an invasion through the regions:§!" - NAVAL_INVASION_CAN_NOT_TRANSFER_THROUGH_NO_INTEL_HINT:0 "\n§RAssign more navies or airwings on missions, or cover the above areas with Radar.§!\n" - NAVAL_INVASION_CANT_TRANSFER:1 "\nPerforming Naval Invasions requires Naval Supremacy along Areas in its path. This is gained by:\n - Air Superiority\n - Ships on Missions" - CLICK_TO_ASSIGN_COMMANDER:0 "§GClick to assign a commander.§!" - NAVAL_INVASION_NOT_REACHED_START:0 "§RSome divisions assigned to this invasion have not reached the start position yet.§!\n" - PARADROP_INVASION_CAN_NOT_TRANSFER:0 "§RTo perform a Paradrop operation we must have more than $RATIO|0%H$ Air Superiority in next strategic regions: $LIST$§!" - TEMPLATE_DURING_REORGANIZATION:0 "Division is currently switching to a new or upgraded template. During this time they will use stats from the old one until they have enough equipment suitable for the new.\n" - SPEED_OUT_OF_SUPPLY:0 "Out of supply: $VALUE|+=%$" - SPEED_INFRASTRUCTURE_IMPACT:0 "Infrastructure: $VALUE|+=%$" - SPEED_STRATEGIC_REDEPLOYMENT_DESC:0 "Strategic redeployment speed $VAUE|H$ km/h" - SPEED_RETREATING:0 "Retreating: $VALUE|+=%$" - GOOD_ARMOR_DEFENSE_DESC:1 "If an Enemy Division attacking us is unable to penetrate our armor, we will take up to $ORG|%0G$ less organization and strength damage.\n" - GOOD_ARMOR_ATTACK_DESC_STR:2 "If attacking an Enemy Division that cannot penetrate our armor we will do more damage.\n" - GOOD_ARMOR_ATTACK_DESC_ORG:2 "\nIf attacking an Enemy Division that can penetrate less than §H50%§! of our armor we will do additional damage." - PIERCING_GOOD_DESC:0 "The division will not get extra bonuses from being able to penetrate an Enemy Division, but that division will not receive bonuses due to its armor." - OVERRUN_POPUP:0 "Overrun!" - PREPERATION_BASE_DAILY_GAIN:0 "Base daily gain: $VALUE|0%Y$" - PREPERATION_BASE_MAX:0 "Base max: $VALUE|0%Y$" - PLAN_PREPERATION_BREAKDOWN:0 "$MAX_DESC$\n$SPEED_DESC$" - CLICK_TO_ASSIGN:0 "Click to assign." - ADD_ATTACK_SKILL:0 "Add Attack Skill: $NUM|+$" - ADD_DEFENSE_SKILL:0 "Add Defense Skill: $NUM|+$" - ADD_LOGISTICS_SKILL:0 "Add Logistics Skill: $NUM|+$" - ADD_PLANNING_SKILL:0 "Add Planning Skill: $NUM|+$" - ADD_MANEUVER_SKILL:0 "Add Maneuvering Skill: $NUM|+$" - ADD_COORDINATION_SKILL:0 "Add Coordination Skill: $NUM|+$" - ADD_SKILL_LEVEL:0 "Add Skill Level: $NUM|+$" - CHOOSE_INSIGNIA:0 "Choose Insignia" - CLICK_TO_ASSIGN_TRAITS:0 "§HClick§! to assign a new §HTrait§! to this §HUnit Leader§!" - CLICK_TO_ASSIGN_TRAITS_DETAIL:0 "$LEADER|H$ has $NUM|H$ remaining trait slots to assign." - category_special_forces:0 "Special Forces" - LEADER_GAIN_TRAIT_LEVEL:0 "Leader can assign a new trait every $NUM|.0H$ levels.\n" - FM_GAIN_TRAIT_LEVEL:0 "Field Marshals can assign a new trait when they are promoted.\n" - DELETE_ARMY:0 "§RDelete Army§!" - UNASSIGN_ARMY:0 "§RUnassign Army§!" - DELETE_ARMY_GROUP:0 "§RDelete army group and all assigned armies§!" - UNASSIGN_ARMY_GROUP:1 "§GClick§! to §RDisband§! the army group.\n§GShift + Click§! to §RDisband§! the army group and all of its armies." - FROM_ARMY_GROP_LEADER:0 "Partial bonuses from $NAME|H$\n" - FIELD_MARSHAL_BONUS_INFO:0 "Non-§HField Marshal§! bonuses only apply by $RATIO|%.0H$\n" - CLICK_TO_HIDE_ARMIES:0 "Click to §HHide§! armies belonging to this group.\n" - CLICK_TO_SHOW_ARMIES:0 "Click to §HShow§! armies belonging to this group.\n" - TOGGLE_ARMY_GROUP_VIEW_ARMIES_DIVISIONS:0 "Switch between viewing the armies or divisions in this army group." - DIVISION_VIEW_SELECT_ARMY:1 "§GClick§! to select this division's army." - NEW_FLEET_NAME:0 "New Fleet" - CREATE_FLEET_FROM_SELECTED_TASK_FORCES:0 "§GClick§! to create a new fleet from the selected task forces." - CANNOT_CREATE_FLEET_FROM_SELECTED_TASK_FORCES:0 "§RCannot create a fleet with the current selection§!" - NUMBER_OF_ENEMY_SHIPS:0 "Estimated number of enemy ships in region" - NUMBER_OF_ALLY_SHIPS:0 "Number of friendly ships in region" - EFFECT_OF_OUR_AIR_SUPERIORITY_ON_NAVAL_SUPREMACY:0 "Effect of our air superiority on our Naval Supremacy" - EFFECT_OF_ENEMY_AIR_SUPERIORITY_ON_NAVAL_SUPREMACY:0 "Effect of enemy air superiority on their Naval Supremacy" - EFFECT_OF_OUR_MINES_ON_NAVAL_SUPREMACY:0 "Effect of our mines on our Naval Supremacy" - EFFECT_OF_ENEMY_MINES_ON_NAVAL_SUPREMACY:0 "Effect of enemy mines on their Naval Supremacy" - NO_NAVAL_SUPREMACY_INFO:0 "There are no enemy or friendly ships in the region" - damaged_heavy_guns:1 "Main Battery Turret Destroyed" - damaged_light_guns:1 "Main Battery Mount Disabled" - damaged_torpedoes:0 "Torpedo Tubes Disabled" - destroyed_ammo_storage:1 "Magazine Hit" - on_fire:1 "Heavy Fires" - broken_propeller:0 "Broken Propeller" - rudder_jammed:0 "Rudder Jammed" - ballast_tanks_inoperable:0 "Ballast Tanks Inoperable" - damaged_secondaries:0 "Secondaries Knocked Out" - CONFIRM_DISBAND_FLEET_TITLE:0 "Disband fleet" - CONFIRM_DISBAND_FLEET_DESC:0 "Are you sure you want to §YDISBAND§! the fleet $NAME|H$?\n\nAll the task forces will be moved to reserve." - division_list_army_column_button_tooltip:0 "§GClick§! to sort divisions by §Harmy§!.\n§GShift + Click§! to sort in reverse order." - division_list_fuel_column_button_tooltip:0 "§GClick§! to sort divisions by §Hfuel§!.\n§GShift + Click§! to sort in reverse order." - division_list_name_column_button_tooltip:0 "§GClick§! to sort divisions by §Hname§!.\n§GShift + Click§! to sort in reverse order." - division_list_status_column_button_tooltip:0 "§GClick§! to sort divisions by §Hstatus§!.\n§GShift + Click§! to sort in reverse order." - division_list_preparedness_column_button_tooltip:0 "§GClick§! to sort divisions by §Hpreparedness§!.\n§GShift + Click§! to sort in reverse order." - division_list_experience_column_button_tooltip:0 "§GClick§! to sort divisions by §Hexperience§!.\n§GShift + Click§! to sort in reverse order." - division_list_template_column_button_tooltip:0 "§GClick§! to sort divisions by §Htemplate§!.\n§GShift + Click§! to sort in reverse order." - division_list_warning_column_button_tooltip:0 "§GClick§! to sort divisions by §Hwarning§!.\n§GShift + Click§! to sort in reverse order." - division_list_organization_strength_column_button_tooltip:0 "§GClick§! to sort divisions by §Horganization§!, §Hstrength§! or §Hthe product of the two§!.\n§GShift + Click§! to sort in reverse order." - DECOMMISSIONED_TEMPLATE_WARNING_TOOLTIP:0 "§RThis template has been decommissioned!§!" - DIVISION:0 "division" - DIVISION_PLURAL:0 "divisions" - RAILWAY_GUN:0 "railway gun" - RAILWAY_GUN_PLURAL:0 "railway guns" - ARMY_COMPOSITION_HEADER:0 "§YComposition§!\n" - ARMY_COMPOSITION_SPECIAL_HEADER:0 "\nIt also gets bonuses based on this:\n" - ARMY_COMPOSITION_DELAYED:0 "The composition controls which bonuses are applied from advisors and commanders. Battalions lacking equipment contribute less than those that are fully equipped." +anti_tank:0 "Ballista" +anti_air:0 "Wind Lance" +artillery:0 "Support Archers" +rocket_artillery:0 "Support Crossbowmen" +rocket_artillery_brigade:0 "Crossbowmen" +anti_tank_brigade:0 "Ballista" +anti_air_brigade:0 "Wind Lance" +artillery_brigade:0 "Archers" +mot_artillery_brigade:0 "Mounted Archer" +mot_anti_tank_brigade:0 "Ballista Chariot" +mot_anti_air_brigade:0 "Wind Lance Chariot" +mot_rocket_artillery_brigade:0 "Chariot Archers" +light_tank_destroyer_brigade:0 "Lancers" +medium_tank_destroyer_brigade:0 "Heavy Cavalry" +heavy_tank_destroyer_brigade:0 "Siege Machine (TD)" +super_heavy_tank_destroyer_brigade:0 "Siege Tower (TD)" +light_sp_anti_air_brigade:0 "Light Cavalry (AA)" +medium_sp_anti_air_brigade:0 "Heavy Cavalry (AA)" +heavy_sp_anti_air_brigade:0 "Siege Machine (AA)" +super_heavy_sp_anti_air_brigade:0 "Siege Tower (AA)" +light_sp_artillery_brigade:0 "Mounted Archers" +medium_sp_artillery_brigade:0 "Heavy Cavalry (SPG)" +heavy_sp_artillery_brigade:0 "Siege Machine (SPG)" +super_heavy_sp_artillery_brigade:0 "Siege Tower (SPG)" +cavalry:0 "Fake Horses" +light_armor:0 "Light Cavalry" +medium_armor:0 "Heavy Cavalry" +heavy_armor:0 "Siege Machine" +super_heavy_armor:0 "Siege Tower" +motorized:0 "Carriage" +mechanized:0 "Chariot" +infantry:0 "Skirmishers" +giant:0 "Giant" +giant_desc:0 "A stone giant of the Misty Mountains" +balrog:0 "A Balrog of Morgoth" +riders_of_the_naith:0 "Riders of the Naith" +riders_of_the_naith_desc:0 "Some of the best elven horsemen of the Naith" +sindar_pathstalkers:0 "Sindar Pathstalkers" +sindar_pathstalkers_desc:0 "Highly skilled Sindar scouts that can remain undetected almost anywhere." +marchwardens_of_lothlorien:0 "Marchwardens" +marchwardens_of_lothlorien_desc:0 "Superb warriors of Lothlórien. Comprised of a heathly mix of swordsmen and archers." +field_hospital:0 "First Aid Tent" +category_all_infantry:0 "All Infantry & Mobile" +category_all_armor:0 "Cavalry Variants" +category_tanks:0 "Cavalry" +category_line_artillery:0 "Line Archers" +category_artillery:0 "Archer Support & Line" +motorized_rocket_brigade:0 "Chariot Archers" +motorized_rocket_brigade_short:0 "Chariot Archers" diff --git a/localisation/english/research_l_english.yml b/localisation/english/research_l_english.yml deleted file mode 100644 index 661718838..000000000 --- a/localisation/english/research_l_english.yml +++ /dev/null @@ -1,1194 +0,0 @@ -l_english: - RESEARCH_BONUSES_TOOLTIP:0 "Limited technology bonuses we have:" - RESEARCH_BONUSES_EMPTY_TOOLTIP:0 "Limited technology bonuses will be listed here." - RESEARCH_BONUS_SPEED_DESC:1 "§Y$COUNT$x§! $VALUE|G%0$ research speed from $NAME$" - RESEARCH_BONUS_AHEAD_DESC:2 "§Y$COUNT$x§! $VALUE|G.1$ years of ahead of time reduction from $NAME$" - RESEARCH_BONUS_SPEED_AHEAD_DESC:2 "§Y$COUNT$x§! $VALUE1|G%0$ research speed and $VALUE2|G.1$ years of ahead of time reduction from $NAME$" - RESEARCH_BONUS_SPEED_NO_COUNT_DESC:1 "Research speed will be increased by $VALUE|G%0$" - RESEARCH_BONUS_AHEAD_NO_COUNT_DESC:1 "Ahead of time penalty will be reduced by $VALUE|.1G$ years" - RESEARCH_BONUS_SPEED_AHEAD_NO_COUNT_DESC:2 "Research speed will be increased by $VALUE|G%0$ and ahead of time penalty reduced by $VALUE2|.1G$ years" - RESEARCH_BONUS_VALUE_DESC:0 "Research bonus: $VALUE|Y%0$" - RESEARCH_BONUS_COST_REDUCTION:0 "Cost Reduction bonus: $NAME$: -$VALUE|G%0$" - TECH_BASE_COST:0 "Base Cost: $BASE|Y0$ days\n" - TECH_ALREADY_RESEARCHED_COST:0 "Already researched: $POINTS|0Y$ days\n" - RESEARCH_NO_RESEARCH:0 "Unused" - RESEARCH_RESEARCH:0 "Research" - RESEARCH_DONE:0 "Researched" - RESEARCH_TIME_TO_COMPLETE:0 "Research time: $TIME|H$" - RESEARCH_IDEA_BONUS_ENTRY:0 "$IDEA$: $FACTOR|G=0%$" - RESEARCH_IDEA_PENALTY_ENTRY:0 "$IDEA$: $FACTOR|R=0%$" - RESEARCH_REPLACE_TITLE:0 "Replace Research" - RESEARCH_REPLACE_DESC:0 "Are you sure you want to research §Y$NEW_TECH$§! instead of §Y$OLD_TECH$§! with §Y$PROGRESS|%0$§! progress?" - RESEARCH_REPLACE_TRANSFER:0 "\n$SAVED|H0$ day(s) of previously saved research will be transfereed to the new technology." - RESEARCH_REPLACE_EXCLUSIVE_TITLE:0 "Replace Mutually Exclusive Research" - RESEARCH_REPLACE_EXCLUSIVE_DESC:0 "Are you sure you want to research §Y$NEW_TECH$§! instead of §Y$OLD_TECH$§! and all its sub technologies?" - RESEARCH_EXCLUSIVE_INFO_TITLE_TOOLTIP:0 "§RThe technology is mutually exclusive with:§!" - RESEARCH_DOCTRINE_EXCLUSIVE_INFO_TITLE_TOOLTIP:0 "§RThe doctrine is mutually exclusive with:§!" - RESEARCH_EXCLUSIVE_INFO_DESC:0 "Mutually exclusive with" - RESEARCH_EXCLUSIVE_INFO_ENTRY:0 "$TECH|Y$" - RESEARCH_YEAR_AHEAD_PENALTY_NO_VALUE:0 "§RTechnology is $YEARS|2$ years ahead of time. The more ahead it is, the bigger the time penalty.§!" - RESEARCH_YEAR_AHEAD_PENALTY:1 "§RTechnology is $YEARS|2$ years ahead of time (+$VALUE|%0$). The penalty will decrease over time.§!" - RESEARCH_YEAR_AHEAD_PENALTY_RED:2 "§RTechnology is $YEARS|2$ years ahead of time (+$VALUE|%0$), but the ahead of time penalty have been reduced by $REDUCED_YEARS|.1$ years (+$RED|%0$) due to national focuses. The penalty will decrease over time.§!" - RESEARCH_TECH_UNUSED:1 "§GClick to research§!\nWithin 30 days, you can choose a new area to research without loss of research time." - RESEARCH_NO_LONGER_AVAILABLE:0 "$RESEARCH|H$\n§RNo longer available - Will be removed next day§!" - RESEARCH_EQUIPMENT_HEADER:0 "Equipment" - RESEARCH_UPGRADES_HEADER:0 "Upgrades" - RESEARCH_UNLOCKS_HEADER:0 "Unlocks" - RESEARCH_UNLOCKS_EQUIPMENT_HEADER:0 "§TEnables $EQUIPMENTS$§!" - RESEARCH_UNLOCKS_EQUIPMENT_MODULES_HEADER:0 "§TEnables $MODULES$§!" - RESEARCH_UNLOCKS_BUILDINGS_HEADER:0 "§TEnables Building: $BUILDINGS$§!" - RESEARCH_UNLOCKS_SUBUNITS_HEADER:0 "§TEnables $SUBUNITS$§!" - RESEARCH_UNLOCKS_TACTICS_HEADER:0 "§TEnables Tactic: $TACTICS$§!" - RESEARCH_MODIFIERS_HEADER:0 "Global stats" - RESEARCH_MESSAGE_UNLOCKED_TITLE:0 "Research Finished!" - RESEARCH_MESSAGE_UNLOCKED_DESC:0 "Our country has completed research into $NAME|Y$.\n $DESC$" - RESEARCH_INSTANT_DESC:0 "Research is instant when changing the tree with more than one technology researched in the current tree." - infantry_folder:0 "Infantry" - infantry_folder_desc:0 "Equipment and weapons for Infantry forces." - support_folder:1 "Support Companies" - support_folder_desc:0 "Recon, Engineers, Field Hospitals & other support companies." - armour_folder:0 "Cavalry" - armour_folder_desc:0 "Cavalry and their variants." - nsb_armour_folder:0 "Cavalry" - nsb_armour_folder_desc:0 "Cavalry and their variants." - artillery_folder:0 "Ballistics" - artillery_folder_desc:0 "Hand-held, Anti-Cavalry & Anti-Air weapons for divisions." - land_doctrine_folder:0 "Land doctrine" - land_doctrine_folder_desc:0 "Land doctrine, the ways in which your ground forces fight." - naval_folder:0 "Naval" - naval_folder_desc:0 "Ships and submarines." - mtgnavalfolder:0 "Naval" - mtgnavalfolder_desc:0 "Ships and submarines. Research new modules to customize your ships." - naval_doctrine_folder:0 "Naval doctrine" - naval_doctrine_folder_desc:0 "Naval doctrine, how your Navy fights." - air_techs_folder:0 "Air" - air_techs_folder_desc:0 "Aircraft." - air_doctrine_folder:0 "Air doctrine" - air_doctrine_folder_desc:0 "Air doctrine, how your Airforce fights." - click_to_open_doctrine:0 "§GClick§! to open doctrines" - industry_folder:0 "Industry" - industry:0 "Industry" - industry_folder_desc:0 "Industry and production." - electronics_folder:0 "Engineering" - electronics_folder_desc:0 "Engineering, radar, encryption and advanced tech research." - secret_weapons_folder:0 "Secret Weapons" - secret_weapons_folder_desc:0 "Wonder weapons, the product of mad science." - mobile_warfare:0 "Mobile Warfare" - mobile_warfare_desc:0 "Mobile Warfare is a focus on speed and maneuver to cut off and disorganize enemy forces.\n\n" - delay:0 "Delay" - delay_desc:0 "Even when a battle cannot be won, it can be advantageous to slow the progress of attacking forces with ambushes and delaying tactics." - elastic_defence:0 "Elastic Defense" - elastic_defence_desc:0 "Rather than focusing all strength on the front line, an elastic defense creates a 'deeper' layer of defenses which allows the defender more time to react and counter-attack while the attacker is spread out and bogged down." - mobile_infantry:0 "Mobile Infantry" - mobile_infantry_desc:0 "Regular Infantry is often too slow to keep up with, react to, or escape from rapidly moving Armored forces. The answer is to focus on horse drawn Infantry which can keep up with the pace of modern warfare.\n\n" - mass_motorization:0 "Mass Motorization" - mass_motorization_desc:0 "An even greater focus on horse drawn troops." - mechanised_offensive:0 "Mechanized Offensive" - mechanised_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons." - armored_spearhead:0 "Armored Spearhead" - armored_spearhead_desc:0 "To use Tanks to their fullest potential they cannot be tied down supporting Infantry. Instead they must be formed into fast moving, independent units which can spearhead attacks.\n\n" - schwerpunk:0 "Schwerpunkt" - schwerpunk_desc:0 "In any operation the Schwerpunkt, or Focal point, must be identified and maximum force concentrated to win at that point." - blitzkrieg:0 "Blitzkrieg" - blitzkrieg_desc:0 "Blitzkrieg refers to the strategy of fast moving Armored forces supported by Mobile Infantry and air support breaking through enemy lines to disorganize and encircle them." - kampfgruppe:0 "Kampfgruppe" - kampfgruppe_desc:0 "A Kampfgruppe was an ad hoc formation which was organized to carry out a specific task." - firebrigades:0 "Fire brigades" - firebrigades_desc:0 "'Fire brigades' were hastily scrambled forces thrown together to react to enemy breakthroughs or other critical issues.\n\n" - backhand_blow:0 "Backhand Blow" - backhand_blow_desc:0 "Rather than fighting for every inch of ground, enemy penetrations are largely avoided until they have extended themselves, at which point they can be cut off and destroyed by counterattacks." - modern_blitzkrieg:0 "Modern Blitzkrieg" - modern_blitzkrieg_desc:0 "The pinnacle of Mobile Warfare, Modern Blitzkrieg incorporates all the latest advances of technology and the lessons learned from previous doctrines." - volkssturm:0 "Volkssturm" - volkssturm_desc:0 "The Volkssturm, or People's Militia, consisted of men who were too old, too young, or otherwise unfit for regular military service.\n\n" - nd_conscription:0 "Non-Discriminatory Conscription" - nd_conscription_desc:0 "Even invalids and cripples must be drafted, there can be no such thing as a civilian." - werwolf_guerillas:0 "Werwolf Guerrillas" - werwolf_guerillas_desc:0 "The Werwolves were a planned German resistance group that would fight on against the occupying powers when the war was lost." - superior_firepower:0 "Superior Firepower" - superior_firepower_desc:0 "This doctrine focuses on throwing shells, not men, at the enemy. Our manpower is precious, bullets are cheap.\n\n" - sup_delay:0 "Delay" - sup_delay_desc:0 "Even when a battle cannot be won, it can be advantageous to slow the progress of attacking forces with ambushes and delaying tactics." - mobile_defence:0 "Mobile Defense" - mobile_defence_desc:0 "Mobile forces can be used to reinforce the defense wherever the enemy may attack." - intergrated_support:0 "Integrated Support" - intergrated_support_desc:0 "Closely integrating support forces with combat troops results in divisions which are stronger on the attack.\n\n" - regimental_combat_teams:0 "Regimental Combat Teams" - regimental_combat_teams_desc:0 "A regimental combat team is an Infantry regiment closely integrated with supporting units such as Artillery, Tanks, and Reconnaissance elements to form a small self-sufficient unit which allows for greater flexibility when attacking." - dispersed_support:0 "Dispersed Support" - dispersed_support_desc:0 "By dispersing our Support units they can cover a wider area while remaining out of the line of fire, resulting in divisions with greater defense.\n\n" - overwhelming_firepower:0 "Overwhelming Firepower" - overwhelming_firepower_desc:0 "Calling on all available support units to give overwhelming firepower can greatly soften up a target, or better yet, seriously ruin an attacker's day." - sup_mechanized_offensive:0 "Mechanized Offensive" - sup_mechanized_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons." - concentrated_fire_plans:0 "Concentrated Fire Plans" - concentrated_fire_plans_desc:0 "By concentrating the fire of different batteries into a synchronized bombardment much greater damage can be inflicted on the enemy.\n\n" - combined_arms:0 "Combined Arms" - combined_arms_desc:0 "Armor, Infantry, and Support units working together in well-organized teams are far more effective than the same forces used separately." - tactical_control:0 "Tactical Control" - tactical_control_desc:0 "Officers familiar with combined arms operations in forward positions can now directly control all branch's operations." - air_land_battle:0 "AirLand Battle" - air_land_battle_desc:0 "With the ground forces already operating in combined arms formations, AirLand Battle now also emphasizes close coordination between land forces and air forces, merging the Air and Land battlefields into a seamless whole." - centralized_fire_control:0 "Centralized Fire Control" - centralized_fire_control_desc:0 "A Centralized Fire Control system allows all calls for artillery support to be evaluated in one location, and if needed, a division's entire firepower to be concentrated on a target rather than a unit only being able to request fire from the artillery assigned to them.\n\n" - forward_observers:0 "Forward Observers" - forward_observers_desc:0 "Forward Observers take up positions where they can directly observe the accuracy and effects of artillery fire, and relay the results back to the guns for correction." - advanced_firebases:0 "Advanced Firebases" - advanced_firebases_desc:0 "Artillery camps can be positioned close to the front lines in fortified bases in order to give the maximum possible support to advancing forces." - shock_and_awe:0 "Shock and Awe" - shock_and_awe_desc:0 "A massive concentration of firepower will impose this overwhelming level of Shock and Awe against an adversary on an immediate or sufficiently timely basis to paralyze its will to carry on." - grand_battle_plan:0 "Grand Battle Plan" - grand_battle_plan_desc:0 "Extensive planning and preparation before engaging in battle is the key to success.\n\n" - trench_warfare:0 "Trench Warfare" - trench_warfare_desc:0 "A shovel is often the best weapon of the infantry. Units learn the value of entrenching in any position they take up." - prepared_defense:0 "Prepared Defense" - prepared_defense_desc:0 "More extensive systems of field fortification greatly improve a unit's defense." - grand_assault:0 "Grand Assault" - grand_assault_desc:0 "Once sufficient forces have been built up and their objectives well planned out, a powerful assault cannot help but to destroy the enemy." - grand_mechanized_offensive:0 "Mechanized Offensive" - grand_mechanized_offensive_desc:0 "Horse drawn troops are well and good, but to lead offensives we need Infantry that can ride into battle in armored transports which protect them and carry heavy weapons.\n\n" - assault_concentration:0 "Assault Concentration" - assault_concentration_desc:0 "Before an attack, the leading elements are carefully prepared and placed in forward positions, ensuring maximum force can be applied in the opening moments." - branch_interoperation:0 "Branch Inter-Operation" - branch_interoperation_desc:0 "Increased coordination between the different branches of the armed forces allows them to work better in combined arms operations." - assault_breakthrough:0 "Assault Breakthrough" - assault_breakthrough_desc:0 "Rather than launching a grand assault across the entire front, it can be much more effective to concentrate the strike on only one, or a few, points of the enemy line and achieve a breakthrough there." - central_planning:0 "Central Planning" - central_planning_desc:0 "Officers from all branches now contribute to the planning of a given operation to make sure it operates at maximum efficiency." - c3i_theory:0 "C3I" - c3i_theory_desc:0 "Effective staff officers ensure the flow of Command, Control, Communications & Intelligence between a commanding officer and the units he controls." - infantry_offensive:0 "Infantry Offensive" - infantry_offensive_desc:0 "The offensive spirit of the infantry is the decisive element of winning battles. Our infantry must lead the way.\n\n" - armored_operations:0 "Armored Operations" - armored_operations_desc:0 "Tanks and other armored vehicles are highly useful for delivering infantry to battlefields and offering direct support in combat." - infiltration_assault:0 "Infiltration Assault" - infiltration_assault_desc:0 "In the opening moves of an attack infantry must target weak points in the enemy line to bypass and isolate the more well-defended sections, which can then be wiped out by the rest of the attacking forces." - night_assault_tactics:0 "Night Assault Tactics" - night_assault_tactics_desc:0 "Soldiers who are used to moving and fighting at night can either pre-position themselves for an attack, or directly attack unsuspecting enemy forces." - attritional_containment:0 "Attritional Containment" - attritional_containment_desc:0 "If we are unable to launch an attack to remove an enemy position it must nonetheless be subjected to constant minor attacks which will cause losses and prevent the enemy from launching attacks of their own." - infiltration_in_depth:0 "Infiltration in Depth" - infiltration_in_depth_desc:0 "Our forces are now trained to bypass and isolate enemy strongpoints to a much greater depth, ideally our assault forces should not stop until they reach the enemy's rear areas and their forces are completely cut off." - mass_assault:0 "Mass Assault" - mass_assault_desc:0 "'Perfect' weapons are overrated, a large number of 'good enough' weapons is the path to victory!\n\n" - pocket_defence:0 "Pocket Defense" - pocket_defence_desc:0 "It is possible that, on the defensive, our troops may be caught in a pocket. In this case they must merely hold out until the inevitable counter-attack relieves them." - defence_in_depth:0 "Defense in Depth" - defence_in_depth_desc:0 "By offering relatively light resistance and temporarily giving ground we can trade space for time and allow attacking forces to exhaust themselves before counter-attacking." - large_front_operations:0 "Large Front Operations" - large_front_operations_desc:0 "Fighting over a large front involves coordinating the efforts of multiple units over long distances: At an operational level, rather than tactical.\n\n" - deep_operations:0 "Deep Operations" - deep_operations_desc:0 "The concept of Deep Operations, or Deep Battle, is to break through the enemy's defensive lines at multiple points and destroy his operational reserves, his operational depth, and occupy as much of his strategic depth as possible." - operational_concentration:0 "Operational Concentration" - operational_concentration_desc:0 "The key to any military action is overwhelming local superiority. Short of being overwhelmingly superior along the entire front, this involves weakening parts of your front line to concentrate troops where needed rather than trying to be strong everywhere." - vast_offensives:0 "Vast Offensives" - vast_offensives_desc:0 "If a breakthrough can be achieved it must be exploited strongly as possible: A vast offensive pushing through enemy lines as deeply as possible will render the defense of their front more difficult, impossible, or irrelevant." - breakthrough_priority:0 "Breakthrough Priority" - breakthrough_priority_desc:0 "Expanding upon Operational Concentration, all needs of the front are subordinated to the need to concentrate forces for Breakthroughs. Local defeats are inconsequential compared to striking a decisive blow." - mechanized_wave:0 "Mechanized Wave" - mechanized_wave_desc:0 "Mechanized forces are ideal for conducting the rapid advances needed to properly exploit Breakthroughs, both for supporting the Armored forces and for securing the flanks of the breach." - continuous_offensive:0 "Continuous Offensive" - continuous_offensive_desc:0 "While properly exploited Breakthroughs are often very effective, sooner or later the attacker always becomes exhausted and the defender is able to reorganize and reform new defensive lines. However, with enough reserves and the right organization, an offensive could be continued to a much greater depth with devastating results to the enemy." - human_wave_offensive:0 "Human Wave Offensive" - human_wave_offensive_desc:0 "A Human Wave Offensive is an infantry tactic in which an attacker conducts a frontal assault with densely concentrated infantry formations against the enemy line, with the intent to overrun the defenders by engaging in melee combat." - human_infantry_offensive:0 "Infantry Offensive" - human_infantry_offensive_desc:0 "The offensive spirit of the infantry is the decisive element of winning battles. Our infantry must lead the way." - large_front_offensive:0 "Large Front Offensive" - large_front_offensive_desc:0 "By conducting, or threatening, Human Wave Offensives across multiple areas of the front we can prevent the enemy from concentrating his firepower against any single attack." - peoples_army:0 "People's Army" - peoples_army_desc:0 "The People's Army believes in the primacy of men over weapons, with superior motivation compensating for inferior technology, and enjoys widespread support from the civilian population.\n\n" - guerilla_warfare:0 "Guerrilla Warfare" - guerilla_warfare_desc:0 "The enemy advances, we retreat; the enemy camps, we harass; the enemy tires, we attack; the enemy retreats, we pursue." - infantry_weapons2:0 "Swordsman Equipment II" - infantry_weapons2_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs. Improved weapon models and more specialized equipment." - improved_infantry_weapons_2:0 "Improved Archer Support" - improved_infantry_weapons_2_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs. Improved weapon models and more specialized equipment." - advanced_infantry_weapons2:0 "Advanced Archer Support" - advanced_infantry_weapons2_desc:0 "Personal and crew served weapons for infantry as well as the various other bits of kit a soldier needs. Further Modernized to include personal Assault Rifles and anti-tank rockets. Improved availability of weapons previously distributed to a limited extent." - infantry_at:0 "Infantry Pikes I" - infantry_at_desc:0 "Arming our infantry units with anti-tank rifles will allow them to take out lighter armored vehicles while maintaining mobility." - infantry_at2:0 "Infantry Pikes II" - infantry_at2_desc:0 "For infantry to effectively engage heavier armored units, high-explosive anti-tank weapons need to be made smaller and lighter." - support_weapons:0 "Support Weapons I" - support_weapons_desc:0 "Automatic weapons are becoming more portable. Submachine guns have already proven effective and the development of hand-held support weapons must continue." - support_weapons2:0 "Support Weapons II" - support_weapons2_desc:0 "The development of automatic weapons which combine the aspects of light and heavy machine guns allows versatility in how our infantry employ their equipment." - support_weapons3:0 "Support Weapons III" - support_weapons3_desc:0 "While maintaining and improving reliability of machine guns, we can also experiment with higher firing rates to ensure lethality of the constant stream of bullets." - support_weapons4:0 "Support Weapons IV" - support_weapons4_desc:0 "With the increased use of assault rifles, developing reliable automatic weapons that can be used in any environment by all soldiers is a priority for a modern army." - paratroopers:0 "Heavy Infantry I" - paratroopers_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." - paratroopers2:0 "Heavy Infantry II" - paratroopers2_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." - paratroopers3:0 "Heavy Infantry III" - paratroopers3_desc:0 "Armored militia accompanied by armored knights can prove a devastating force on the battlefield." - marines:0 "Marines I" - marines_desc:0 "Troops specializing in amphibious warfare are growing ever more indispensable. Improvised methods and equipment become things of the past as our naval infantry is supported by specialized landing craft and training." - marines2:0 "Marines II" - marines2_desc:0 "Amphibious warfare requires constant innovation. Improved logistical support and portable harbors can enable our marines to perform landings that may otherwise have been impossible." - marines3:0 "Marines III" - marines3_desc:0 "Marines can be more than just amphibious infantry. In the future, our marine corps will be among the most disciplined and organized special forces." - tech_mountaineers:0 "Mountain Infantry I" - tech_mountaineers_desc:0 "Combat in mountain ranges exposes troops to many perils, but sometimes cannot be avoided. We can minimize these risks by providing our soldiers with specialized training for this environment." - tech_mountaineers2:0 "Mountain Infantry II" - tech_mountaineers2_desc:0 "Going beyond survival, our forces can be trained to use mountains to their advantage. With light equipment and mule transports, they can maneuver this terrain better than other infantry." - tech_mountaineers3:0 "Mountain Infantry III" - tech_mountaineers3_desc:0 "Preparing for the most arduous mountain missions in high altitudes and low temperatures will require extraordinary training and discipline from our mountain troops." - tech_special_forces:0 "Special Forces" - tech_special_forces_desc:0 "Unconventional fighting requires specialist training. We need to ensure that our troops are prepared and able to adapt to harsh conditions." - advanced_special_forces:0 "Advanced Special Forces Training" - advanced_special_forces_desc:0 "With extensive training, we can ensure that our special forces will be able perform above and beyond that of normal men." - improved_special_forces:1 "Expanded Special Forces Program" - improved_special_forces_desc:1 "Special forces are able to perform missions that ordinary soldiers can not. We need to expand the training programs to get more of our soldiers qualified." - extreme_environment_training:0 "Extreme Environment Training" - extreme_environment_training_desc:0 "We need to be able to fight in the harshest of environments. With the right training and equipment, our troops will be able to fight in the most extreme conditions." - survival_training:0 "Survival Training" - survival_training_desc:0 "Our special forces will often fight behind enemy lines and in short supply. We need to train them to endure harsh weather and fight with limited supplies." - elite_forces:0 "Elite Forces" - elite_forces_desc:0 "Only the best of the best will become special forces. The soldiers that make it through the training will be stronger, faster and fight harder than anyone else." - jungle_warfare:0 "Jungle Warfare" - jungle_warfare_desc:0 "Special training to make our soldiers effective in the jungle." - HUN_light_infantry_tech:0 "Light Infantry Divisions Doctrine" - HUN_light_infantry_tech_desc:0 "Reducing the amount of supporting arms in our infantry divisions makes them more flexible and gives them an edge in combat in restricted terrain like Cities and forests." - mountain_warfare:0 "Mountain Warfare" - mountain_warfare_desc:0 "Special training to make our soldiers effective in mountain ranges." - tech_recon:0 "Scout Company I" - tech_recon_desc:0 "Sending smaller groups to scout ahead before moving in the main force allows us to gather intelligence about where the enemy is and how many we are facing." - tech_recon2:0 "Scout Company II" - tech_recon2_desc:0 "Reconnaissance missions are often dangerous and casualties are high. Preparing our patrols to move and withdraw rapidly and equipping them to clear obstacles placed by the enemy will increase their chances of coming back alive." - tech_recon3:0 "Scout Company III" - tech_recon3_desc:0 "Improvements in radio technology change the way reconnaissance missions can be executed, enabling rapid communication of the gathered intelligence." - tech_recon4:0 "Scout Company IV" - tech_recon4_desc:0 "Deep reconnaissance operations, mixing espionage, guerilla operations and commando training, will aid our tactical choices and allow us to adapt our decision-making rapidly." - tech_engineers:0 "Engineer Company I" - tech_engineers_desc:0 "Construction of fortifications and breaching obstacles make combat engineers vital in the field. Giving our engineers a versatile role enables us to deploy them in the diverse situations where they will be needed." - tech_engineers2:0 "Engineer Company II" - tech_engineers2_desc:0 "With modern equipment and high explosives, our engineers can go beyond their traditional tasks and surprise the enemy with their ingenuity, at land and sea." - tech_engineers3:0 "Engineer Company III" - tech_engineers3_desc:0 "Military engineering projects are approaching a larger scale. The construction of advanced infrastructural aid enables operations requiring supplies beyond what is normally available in the field." - tech_engineers4:0 "Engineer Company IV" - tech_engineers4_desc:0 "Maintaining local mobility while constructing what would previously have been considered permanent fortifications and supply systems, combat engineers of the future will ensure that no matter where our troops are attacked, they will be prepared." - hospital_tech:0 "Field Hospitals" - logistics_tech:0 "Logistics Company" - recon_tech:0 "Reconnaissance Company" - tech_field_hospital:0 "Field Hospital I" - tech_field_hospital_desc:0 "A casualty doesn't need to mean a dead soldier. Having immediate medical attention available for our wounded brought back to the rear is the first step towards ensuring this." - tech_field_hospital2:0 "Field Hospital II" - tech_field_hospital2_desc:0 "By establishing the use of portable hospitals, bringing the medical care to where it is needed, we can stop many unnecessary deaths and permanent injuries." - tech_field_hospital3:0 "Field Hospital III" - tech_field_hospital3_desc:0 "Surgery is among the most common emergency procedures needed in the field. Procedures and tools for this must be available closer to the front, and we must ensure that skilled surgeons are part of the military medical units." - tech_field_hospital4:0 "Field Hospital IV" - tech_field_hospital4_desc:0 "Although many improvements have been made in field medicine, many advances are improvised and we lack an established doctrine. With more experience, we can explain the role of these units more clearly and make improvised innovations permanent fixtures." - tech_logistics_company:0 "Logistics Company I" - tech_logistics_company_desc:0 "Having specialized Logistics Officers among our ranks will ensure that support networks are leveraged to minimize waste." - tech_logistics_company2:0 "Logistics Company II" - tech_logistics_company2_desc:0 "Adapting our risk analyses to the new circumstances of war will improve the safety of our logistical support." - tech_logistics_company3:0 "Logistics Company III" - tech_logistics_company3_desc:0 "Continued statistical evaluation of troop supply needs contribute to maximizing the utility of our resources." - tech_logistics_company4:0 "Logistics Company IV" - tech_logistics_company4_desc:0 "Developing standardized classifications for supplies will minimize confusion and make planning more efficient." - tech_military_police:0 "Military Police I" - tech_military_police_desc:0 "Regular troops may be able to manage occupation for a shorter period of time, but they are first and foremost soldiers. Integrating military police into our forces will ensure we have people on the ground to respond to resistance and investigate sabotage." - tech_military_police2:0 "Military Police II" - tech_military_police2_desc:0 "By engaging in regular police duties in occupied territories, such as traffic control and maintaining public order, our military police can minimize the chaos and confusion which partisan movements thrive in." - tech_military_police3:0 "Military Police III" - tech_military_police3_desc:0 "Cooperating with local spy networks and informers established before occupation, our military police can proactively prepare for where resistance is likely to arise." - tech_military_police4:0 "Military Police IV" - tech_military_police4_desc:0 "Safely policing occupied territory is as much about returning to normalcy as it is about ruthlessly eliminating opposition. Our military police must ensure that this process starts early, to ensure safety for soldiers and civilians alike." - tech_signal_company:0 "Signal Company I" - tech_signal_company_desc:0 "Establishing and maintaining communications in the field has always required special skills. With the advent of new communications and detection technology in the Great War, new possibilities for the practice lie ahead." - tech_signal_company2:0 "Signal Company II" - tech_signal_company2_desc:0 "Signal companies focusing on communication between the different branches of the military can ensure that ground forces are able to coordinate efforts with sea and air operations and plan their movements more rapidly." - tech_signal_company3:0 "Signal Company III" - tech_signal_company3_desc:0 "Increasingly portable communications technology is more viable to be personally carried as a backpack. This increased mobility of signal corps must be utilized." - tech_signal_company4:0 "Signal Company IV" - tech_signal_company4_desc:0 "Among our signal specialists are people with unparalleled first-hand knowledge of field use of this equipment. By involving them in the research of new communication technologies, we can make use of their expertise." - tech_maintenance_company:0 "Maintenance Company I" - tech_maintenance_company_desc:0 "Maintenance is essential to our war effort." - tech_maintenance_company2:0 "Maintenance Company II" - tech_maintenance_company2_desc:0 "Maintenance is essential to our war effort." - tech_maintenance_company3:0 "Maintenance Company III" - tech_maintenance_company3_desc:0 "Maintenance is essential to our war effort." - tech_maintenance_company4:0 "Maintenance Company IV" - tech_maintenance_company4_desc:0 "Maintenance is essential to our war effort." - motorised_infantry:0 "Horse Drawn Infantry" - motorised_infantry_desc:0 "By extending the use of carriages in infantry transports in the field, the mobility of otherwise slow-moving infantry units can be greatly improved, enabling faster responses and new strategies." - night_vision:0 "Crude Torches" - night_vision_desc:0 "Being able to see the enemy without being seen is key to night operations. With the invention of torch technology, we can outfit our army with devices which, though unwieldy, makes this possible." - night_vision2:0 "Improved Torches" - night_vision2_desc:0 "Early torches, although initially intended for use by charging swordsmens, had a limited vision range. As both portability and vision improves, these devices can be used by more troops operating at night." - basic_machine_tools:0 "Basic Machine Tools" - basic_machine_tools_desc:0 "A variety of newly developed milling machines can be used in military production, from the small and versatile types available to any machine shop to the large scale, advanced models that push the technological limits." - improved_machine_tools:0 "Improved Machine Tools" - improved_machine_tools_desc:0 "Turret lathes are proving indispensable for mass production. Ensuring efficient construction and use of the lathes themselves will give us a significant industrial advantage." - advanced_machine_tools:0 "Advanced Machine Tools" - advanced_machine_tools_desc:0 "Automating machine tools using servomechanisms has been discussed before. Putting these ideas into practice allows making use of other advancements in automation, such as computers." - assembly_line_production:0 "Assembly Line Production" - assembly_line_production_desc:0 "The powered assembly line, already in use in many industries, can change the course of war by allowing an unprecedented avalanche of production." - flexible_line:0 "Flexible Line" - flexible_line_desc:0 "As well-oiled a machine as the assembly line may be, it is still manned by humans, which allows for adaptation when needed. We should make use of this in our industrial production." - streamlined_line:0 "Streamlined Line" - streamlined_line_desc:0 "The standardization and rigid structure of the assembly line are keys to its efficiency and safety. These should be the key aspects to develop in our industrial production." - improved_equipment_conversion:0 "Improved Equipment Conversion" - improved_equipment_conversion_desc:0 "Advancements in engineering allow us to fix the issues we found in previous models and update them to fit our current needs." - advanced_equipment_conversion:0 "Advanced Equipment Conversion" - advanced_equipment_conversion_desc:0 "Setting up specialized teams and assembly lines for retrofitting our outdated models will keep our war machine deadly at all times." - concentrated_industry:0 "Concentrated Industry I" - concentrated_industry_desc:0 "Focusing our industrial production to a few key sites will allow us to dramatically improve its efficiency.\n\n" - concentrated_industry2:0 "Concentrated Industry II" - concentrated_industry2_desc:0 "Further concentrating manufacturing will help driving down the costs." - concentrated_industry3:0 "Concentrated Industry III" - concentrated_industry3_desc:0 "Infrastructural expenses can be lowered by adapting networks to our more focused industry." - concentrated_industry4:0 "Concentrated Industry IV" - concentrated_industry4_desc:0 "Keeping the key points in our industry close to each other increases the impact of these concentrated sites." - concentrated_industry5:0 "Concentrated Industry V" - concentrated_industry5_desc:0 "Major industrial complexes now combine many parts of our industry, minimizing the costs of transports and labor." - dispersed_industry:0 "Dispersed Industry I" - dispersed_industry_desc:0 "By spreading out our industries, we can ensure that it becomes difficult for the enemy to target in times of war.\n\n" - dispersed_industry2:0 "Dispersed Industry II" - dispersed_industry2_desc:0 "Further decentralizing our manufacturing makes it harder to strike at specific parts of it." - dispersed_industry3:0 "Dispersed Industry III" - dispersed_industry3_desc:0 "Having factories operate under the guise of other operations will decrease the risk of direct attacks." - dispersed_industry4:0 "Dispersed Industry IV" - dispersed_industry4_desc:0 "Camouflaging and scattering our factories creates a network which is very difficult to completely disrupt." - dispersed_industry5:0 "Dispersed Industry V" - dispersed_industry5_desc:0 "By having not only our industry, but the infrastructure tying it together operate in secrecy, we can make it even more difficult to destroy through aerial attacks." - fuel_silos:0 "Food Silos" - fuel_silos_desc:0 "Mass Storage of food requires a complex set of tanks, pipes, and valves to ensure it is both secure and readily available." - fuel_refining:0 "Food Refining I" - fuel_refining_desc:0 "Advancements in tilling of soil allow for better yield of food." - fuel_refining2:0 "Food Refining II" - fuel_refining2_desc:0 "Better planning of farm soil increases area that can be used to grow food." - fuel_refining3:0 "Food Refining III" - fuel_refining3_desc:0 "New techniques for fighting crop destroying rodents and insects will allow us to use more of our food." - fuel_refining4:0 "Food Refining IV" - fuel_refining4_desc:0 "Improved fertilization practices increases the rate of growth and size of our food." - fuel_refining5:0 "Food Refining V" - fuel_refining5_desc:0 "Soil composition discoveries allow us to pick the perfect locations for our farms, further increasing output." - synth_oil_experiments:0 "Farming Experiments" - synth_oil_experiments_desc:0 "To increase food security for our people, innovations in farming can be made." - early_refining:0 "Early Experiments" - early_refining_desc:0 "Our farms can be made more efficient and allow us to not only grow food more effectively, but also allow us to produce leather as well." - oil_processing:0 "Farming Techniques" - oil_processing_desc:0 "Introducing different types of crops into our farms will allow us to grow food throughout more of the year." - improved_oil_processing:0 "Improved Farming Techniques" - improved_oil_processing_desc:0 "Using beasts to help us farm will increase our outupt by allowing us to work longer." - advanced_oil_processing:0 "Advanced Farming Techniques" - advanced_oil_processing_desc:0 "Advanced weather prediction techniques allow us to decide whether we need to plant extra food before harvest season." - modern_oil_processing:0 "Extreme Farming Techniques" - modern_oil_processing_desc:1 "Studying plants with natural resistance to extreme weather allows us to lose less crops during bad weather cycles." - rubber_processing:0 "Leather Processing" - rubber_processing_desc:1 "Processing the leather of our animals will introduce more leather into our country's supply" - improved_rubber_processing:0 "Improved Leather Processing" - improved_rubber_processing_desc:1 "Further improvements in leather technology allow us to prevent waste and extract more leather." - advanced_rubber_processing:0 "Advanced Leather Processing" - advanced_rubber_processing_desc:1 "Stitching together smaller pieces of leather will allow us to use smaller animal's hides." - modern_rubber_processing:0 "Extreme Leather Processing" - modern_rubber_processing_desc:1 " Using finer blades prevents waste and will allow us to get extra leather from animals." - construction1:0 "Construction I" - construction1_desc:0 "Improved methods and materials allow us to construct buildings, both civilian and military, faster." - construction2:0 "Construction II" - construction2_desc:0 "Modernizing our tools and equipment will further aid our construction efforts." - construction3:0 "Construction III" - construction3_desc:0 "Adoption of modern vehicles and experience from our advancements in construction can be applied to make repairs vastly quicker." - construction4:0 "Construction IV" - construction4_desc:0 "A higher degree of mechanization and better routines further improves building construction speeds." - construction5:0 "Construction V" - construction5_desc:0 "The future of efficient construction will require more extensive planning for individual projects as well as standardized solutions wherever possible." - excavation1:0 "Excavation I" - excavation1_desc:0 "Advancements in drilling techniques allows us to excavate resources that were impossible to reach earlier." - excavation2:0 "Excavation II" - excavation2_desc:0 "New techniques help us collect resources more efficiently. We no longer taint the resources upon extraction, leading to a greater yield." - excavation3:0 "Excavation III" - excavation3_desc:0 "Progress in geology helps us determine the location of resources. We can now focus our extraction efforts in places where there is a greater chance that large amounts of natural resources will be found." - excavation4:0 "Excavation IV" - excavation4_desc:0 "Automation of key processes and advancement within mechanics makes all our resource sites much more efficient." - excavation5:0 "Excavation V" - excavation5_desc:0 "Advancements in fields such as surface mining gives us a greater yield of resources from our current extraction sites." - excavation_tech:0 "Excavation Technologies" - electronic_mechanical_engineering:0 "Electronic Mechanical Engineering" - electronic_mechanical_engineering_desc:0 "We live in an age when electrical machines can no longer only warm and light us, but help us think and communicate. Electronics will be key to military intelligence in the coming century." - radio:0 "Radio" - radio_desc:0 "Adopting the inventions of amateur radio operators and extending the use of FM radio will reduce radio interference and allow us to find new uses for radio technology." - radio_detection:0 "Radio Detection" - radio_detection_desc:0 "The development of RADAR, Radio Detection and Ranging, allows using radio waves to detect physical objects. Research is highly secretive, considering the impact these inventions could have on locating units." - decimetric_radar:0 "Decimetric Radar" - decimetric_radar_desc:0 "Many units rely on the element of surprise for their efficiency. Development of decimetric radar allows us to deprive them of this advantage." - improved_decimetric_radar:0 "Improved Decimetric Radar" - improved_decimetric_radar_desc:0 "The use of radar has already proven crucial, but our decimetric radar sets are too few to ensure good coverage. Fitting more units with radar will allow us to maximize our technological edge." - centimetric_radar:0 "Centimetric Radar" - centimetric_radar_desc:0 "New radar operating in the microwave bands enable us to detect objects too small for previous radars to pick up." - improved_centimetric_radar:0 "Improved Centimetric Radar" - improved_centimetric_radar_desc:0 "Introducing cutting-edge radar techniques like monopulse radars in key operations will allow for extreme tracking accuracy." - advanced_centimetric_radar:0 "Advanced Centimetric Radar" - advanced_centimetric_radar_desc:0 "Despite our advanced radars, there are still ways for the enemy to avoid detection. New developments like the Pulse-Doppler radar allows us to eliminate many of these limitations in our equipment." - mechanical_computing:0 "Mechanical Computing" - mechanical_computing_desc:0 "Constructing machines capable of advanced differential analysis will radically change what sort of machine-assisted calculations can be made." - computing_machine:0 "Computing Machine" - computing_machine_desc:0 "Developing a theoretical groundwork for modern computers and constructing electromechanical machines to start putting them into practice will be the first steps into this realm of possibilities." - improved_computing_machine:0 "Improved Computing Machine" - improved_computing_machine_desc:0 "Electronic digital computers can now be made which are programmable. Although still expensive and large, these machines allow for intelligence analysis far beyond human capacity." - advanced_computing_machine:0 "Advanced Computing Machine" - advanced_computing_machine_desc:0 "Beginning to work on computers capable of storing programs and making use of transistors will put us on the path to a Digital Revolution where these machines may be used in nearly any field." - basic_encryption:1 "Encryption - Polyalphabetical Ciphers" - basic_encryption_desc:0 "With new methods of communication comes new risks for interception. Rotor cipher machines can be used to allow for rapid, complex encryption." - improved_encryption:1 "Encryption - Cyclic Permutations" - improved_encryption_desc:0 "Limitation in the randomization of cipher machines can be exploited to break the ciphers. By improving the randomness of the rotor mechanics, we can make this kind of cryptanalysis more difficult." - advanced_encryption:1 "Encryption - Pulse-code Modulation" - advanced_encryption_desc:0 "Technological improvements and hard-earned experience allows us to implement more traffic flow security measures in our communication." - basic_decryption:1 "Decryption - Frequency Analysis" - basic_decryption_desc:0 "Cryptanalysis is increasingly becoming an advanced mathematical science. Systems like card catalogs and devices like cyclometers can aid the necessary work." - improved_decryption:1 "Decryption - Side-channel Attack" - improved_decryption_desc:0 "The development of more sophisticated computers allows for new applications of cryptanalysis methods like differencing, which can be used to break advanced cyphers when combined with new hand codebreaking methods." - advanced_decryption:1 "Decryption - Automated Deduction" - advanced_decryption_desc:0 "The increased computation power that improved our cryptanalysis so far threatens to create nearly unbreakable ciphers in the future. To stay ahead, we must be prepared to work more aggressively on gaining inside information on the technology." - experimental_rockets:0 "Experimental Rockets" - experimental_rockets_desc:0 "Advancing the science of rocketry by improving the range and reliability of liquid-fuel rockets will teach us enough about the technology to allow the construction of launch sites for more advanced models." - rocket_engines:0 "Rocket Engines" - rocket_engines_desc:0 "Knowledge of rocket propulsion is reaching a point where we can construct flying bombs and rocket-powered aircraft, operating at previously unreachable speeds." - improved_rocket_engines:0 "Improved Rocket Engines" - improved_rocket_engines_desc:0 "The first long-range ballistic missiles can be built and made ever more precise, reaching distant enemy cities and even into space." - advanced_rocket_engines:0 "Advanced Rocket Engines" - advanced_rocket_engines_desc:0 "The future of rocketry opens up possibilities like intercontinental missiles, the range of which knows few limits while the payloads grow more lethal." - atomic_research:0 "Atomic Research" - atomic_research_desc:0 "In nuclear fission, splitting the atom yields enormous amounts of energy and limitless destructive capability." - rocket_interceptor:0 "Rocket Interceptor" - rocket_interceptor_desc:0 "Rocket-powered interceptor aircraft based on gliders can, for short periods of time, move faster than any other plane. While volatility of the fuel puts the planes at risk, they can take off and react to attacks faster than any enemy will expect." - rocket_interceptor_2:0 "Rocket Interceptor II" - rocket_interceptor_2_desc:0 "Still considered extremely dangerous to operate, the rocket-powered fighters are now aided by auto-pilots and towing by other aircraft to maximize the use of their extreme speed but short fuel window." - rocket_interceptor_3:0 "Rocket Interceptor III" - rocket_interceptor_3_desc:0 "New landing techniques and safer fuel systems have improved rocket fighters' chance of success and survival significantly, fulfilling the once theoretical potential of these cutting-edge vehicles." - nukes:0 "Nuclear Bombs" - nukes_desc:0 "A project to construct an atomic bomb will be one of the most secretive and difficult tasks a nation can undertake, but, if successful, may change not only the course of today's wars but of the future of the world." - interwar_artillery:0 "Interwar Bow" - interwar_artillery_desc:0 "Lessons learned in the development of different types of artillery can be cross-applied to the design of other pieces." - artillery1:0 "Bow I" - artillery1_desc:0 "With more modern materials and mechanisms, howitzers and field guns from the Great War can be rechambered and modernized for modern warfare." - artillery2:0 "Improved Bow Upgrade I" - artillery2_desc:0 "Upgrading old pieces can only get us so far. New howitzer designs will be needed, taking advantage of new hydraulic recoil devices and longer barrels." - artillery3:0 "Improved Bow Upgrade II" - artillery3_desc:0 "To enable heavier guns on lighter carriages, muzzle brakes can be included in howitzer designs." - artillery4:0 "Bow IV" - artillery4_desc:0 "Developing light-weight artillery capable of being broken down for transport will make it possible to bring artillery support to areas previously difficult to reach." - artillery5:0 "Advanced Bow Upgrade" - artillery5_desc:0 "Artillery designs with lower silhouettes will be more difficult for the enemy to target." - mountain_gun:0 "Mountain Gun" - mountain_gun_desc:0 "The mountainous terrain of Northern India led to the development of an artillery piece that could be dismantled and carried on muleback to wherever it was needed." - rocket_artillery2:0 "Crossbow Upgrade I" - rocket_artillery2_desc:0 "Self-propelled artillery utilizing multiple rockets will be able to cause large-scale destruction rapidly, while maintaining mobility to avoid counter-fire." - rocket_artillery3:0 "Crossbow Upgrade II" - rocket_artillery3_desc:0 "Sacrificing range for impact, we can mount heavier rockets on larger vehicles. Operating in teams, these artillery batteries can cooperate to reload and relocate quickly." - rocket_artillery4:0 "Crossbow III" - rocket_artillery4_desc:0 "Spin-stabilized rockets can increase the range of lighter artillery batteries." -interwar_antiair:0 "Anti-Air" - antiair1:0 "Anti-Air Upgrade" - antiair1_desc:0 "With faster reloading mechanisms, anti-air guns carrying large rounds can still maintain necessary firing rates." - antiair2:0 "Anti-Air II" - antiair2_desc:0 "To target high-flying aircraft, longer cartridges and barrels will be needed on anti-air guns." - antiair3:0 "Improved Anti-Air Upgrade I" - antiair3_desc:0 "As radar systems improve, employing radar direction of anti-aircraft guns becomes more viable. Keeping up with this technology will allow us to make some of the most accurate anti-air systems available." - antiair4:0 "Improved Anti-Air Upgrade II" - antiair4_desc:0 "Combining modern systems of radar, computerization and autoloaders will be necessary to react quickly against faster aircraft." - antiair5:0 "Anti-Air V" - antiair5_desc:0 "Surface-to-air missiles are the future of anti-aircraft warfare. Developing a mobile platform for these should be our next goal." - antitank1:0 "Anti-Cavalry Upgrade" - antitank1_desc:0 "The importance of effective anti-tank weapons was established in the Great War. Introducing a new generation of these weapons will be necessary to combat modern tank designs." - antitank2:0 "Anti-Cavalry II" - antitank2_desc:0 "Most anti-tank guns are so far fairly light. Larger caliber guns will be required to combat heavier tanks with sloped armor." - antitank3:0 "Improved Anti-Cavalry Upgrade I" - antitank3_desc:0 "HEAT (high-explosive anti-tank) rounds can be used in anti-tank artillery to make up for limited muzzle velocity." - antitank4:0 "Improved Anti-Cavalry Upgrade II" - antitank4_desc:0 "New versatile anti-tank guns employing armor-piercing discarding sabot shots can penetrate the armor of nearly any tank." - antitank5:0 "Anti-Cavalry V" - antitank5_desc:0 "By combining different kinds of new ammunition technology with guns with higher muzzle velocities, we can be prepared for whatever new armor our enemies may develop." - air_superiority:0 "Air Superiority" - air_superiority_desc:0 "Achieving Air Superiority will make it more difficult for enemy flying creatures to be used against our country, to allow our bombers to be used against our enemies." - formation_flying:0 "Formation Flying" - formation_flying_desc:0 "By flying in formation, flying creatures can provide support to each other or work together to attack enemies." - air_offense:0 "Fighter Escorts" - air_offense_desc:0 "With a focus on bombing during the day we need to keep our bombers safe from intercepting flying creatures. Training our fighter pilots to work closely with the bombers will improve their fighting abilities when protecting the bombers in enemy airspace." - fighter_baiting:0 "Fighter Baiting" - fighter_baiting_desc:0 "By appearing vulnerable, our fighters can lure hostile aircraft into ambushes." - dogfighting_experience:0 "Dogfighting Experience" - dogfighting_experience_desc:0 "It's not easy to keep track of the relative positions of friends and foes in the hectic swirl of a dogfight, but as our pilots gain experience they become more adept at it." - fighter_ace_initiative:0 "Fighter Ace Initiative" - fighter_ace_initiative_desc:0 "Giving special awards and status to pilots who achieve Ace status, by taking down five enemies, incentives risk-taking and brings about a sense of eliteness in Ace pilots - although this does tend to make experienced pilots stay in combat positions." - multialtitude_flying:0 "Multi-Altitude Flying" - multialtitude_flying_desc:0 "Air combat takes place in three dimensions, but most pilots find it harder to keep track of creatures flying above or below them. We can take advantages of this by spreading our formations vertically." - offensive_formations:0 "Offensive Formations" - offensive_formations_desc:0 "Training in more offensively-oriented formations make our fighters deadlier in combat." - fighter_sweeps:0 "Fighter Sweeps" - fighter_sweeps_desc:0 "Aggressive patrols of flying beasts over enemy territory may catch their flying creatures taking off or landing, when they are especially vulnerable, or disrupt enemy training flights." - force_rotation:0 "Force Rotation" - force_rotation_desc:0 "Combat, or simply long periods of extensive focus, is exhausting, but by swapping in fresh forces whenever possible we can reduce errors due to pilot fatigue." - air_defence:0 "Air Defense" - air_defence_desc:0 "By training our pilots to be constantly on the lookout, even when there is apparently no danger, their chances of intercepting enemy planes is increased." - dispersed_fighting:0 "Dispersed Fighting" - dispersed_fighting_desc:0 "Adopting a more dispersed formation allows the same number of planes to patrol a greater area." - forward_interception:0 "Forward Interception" - forward_interception_desc:0 "By operating closer to enemy airspace it becomes more likely that our fighters can intercept enemy planes before they can reach their targets." - fighter_veteran_initiative:0 "Fighter Veteran Initiative" - fighter_veteran_initiative_desc:0 "A focus on long-term pilot survival, both by prudent tactics and by rotating experienced pilots to training positions, means that they can pass on the lessons they have learned to new pilots." - formation_fighting:0 "Formation Fighting" - formation_fighting_desc:0 "Flying in the right formations allow our pilots to cover each other's blind spots, which leads to an increased ability to spot enemy planes." - air_skirmish:0 "Air Skirmish" - air_skirmish_desc:0 "Regrettably, it is not always possible to destroy every single enemy plane found over our country, but it is possible to harass them from the moment they are spotted until the moment they leave, constantly wearing them down." - home_defence:0 "Home Defense" - home_defence_desc:0 "Spotters on the ground as well as detection and listening posts work in concert with our air force to track and destroy enemy incursions." - battlefield_destruction:0 "Battlefield Destruction" - battlefield_destruction_desc:0 "While the air force can strike at far off enemy countries, it can also be of great use in directly supporting the army in battles." - dive_bombing:0 "Dive Bombing" - dive_bombing_desc:0 "Dive bombing allows greater accuracy, but for best results it requires specialized aircraft both able to slow their dives and survive the stresses of pulling out of them." - direct_ground_support:0 "Direct Ground Support" - direct_ground_support_desc:0 "By closely coordinating CAS pilots with ground-based observers aerial firepower can be precisely directed to best help troops in battle." - bomber_veteran_initiative:0 "Bomber Veteran Initiative" - bomber_veteran_initiative_desc:0 "A policy of having veteran pilots pass on their knowledge to new recruits greatly helps their survival prospects." - bomber_ace_initiative:0 "Bomber Ace Initiative" - bomber_ace_initiative_desc:0 "Formally recognizing and rewarding Ace bomber pilots encourages daring and initiative." - cas_veteran_initiative:0 "Ground Attack Veteran Initiative" - cas_veteran_initiative_desc:0 "A policy of having veteran pilots pass on their knowledge to new recruits greatly helps their survival prospects." - cas_ace_initiative:0 "Ground Attack Ace Initiative" - cas_ace_initiative_desc:0 "Formally recognizing and rewarding Ace CAS pilots encourages daring and initiative." - hunt_and_destroy:0 "Hunt and Destroy" - hunt_and_destroy_desc:0 "As well as offering direct fire support CAS units can independently hunt for targets, often attacking enemy ground forces unexpectedly as they move towards the front lines." - naval_strike_torpedo_tactics:0 "Naval Strike Torpedo Tactics" - naval_strike_torpedo_tactics_desc:0 "Training pilots to strike more precisely with torpedoes will make our air raids on enemy ships more efficient." - naval_strike_torpedo_tactics_oi:0 "Naval Strike Torpedo Tactics" - naval_strike_torpedo_tactics_oi_desc:0 "Training pilots to strike more precisely with torpedoes will make our air raids on enemy ships more efficient." - naval_strike_tactics:0 "Naval Strike Tactics" - naval_strike_tactics_desc:0 "Training pilots in predicting ship movements and coordinating attacks will make our air raids on enemy ships more efficient." - low_echelon_support:0 "Low Echelon Support" - low_echelon_support_desc:0 "By assigning CAS units directly to small ground formations it ensures they always have additional firepower to call on, even when out of range of traditional artillery." - combat_unit_destruction:0 "Combat Unit Destruction" - combat_unit_destruction_desc:0 "Training our CAS pilots to repeatedly attack the same target until it is confirmed to be destroyed ensures targets aren't left alone after a near miss." - operational_destruction:0 "Operational Destruction" - operational_destruction_desc:0 "Attacking the supply lines of enemy ground forces hinders their ability to move between battlefields. This translates to an advantage to our army while operating in areas where we have Air Superiority." - infrastructure_destruction:0 "Infrastructure Destruction" - infrastructure_destruction_desc:0 "Training our pilots in the best ways to attack infrastructure, like railways and bridges, makes for more effective Tactical bombing." - logistical_bombing:0 "Logistical Bombing" - logistical_bombing_desc:0 "A greater focus on attacking the enemy's supply lines from the air gives a greater advantage to our own ground forces in the area." - battlefield_support:0 "Battlefield Support" - battlefield_support_desc:0 "It is difficult for Tactical bombers to attack targets near where our ground forces are in combat, since level bombing is less accurate than dive bombing, but more training and interaction with ground-based observers can help to overcome these problems." - carousel_bombing:0 "Carousel Bombing" - carousel_bombing_desc:0 "Bombers often simply want to dump all their bombs as soon they reach their target area and then fly home as soon as possible. While this can work for area-bombing, when it comes to hitting a small target it is more effective to linger over the target, dropping only a portion of their bomb load at a time for maximum accuracy." - keypoint_bombing:0 "Keypoint Bombing" - keypoint_bombing_desc:0 "Accurately bombing targeted key points on the battlefield in support of our ground forces can greatly help them to defeat the enemy." - ground_support_integration:0 "Ground Support Integration" - ground_support_integration_desc:0 "Fully integrating our Tactical bomber force with ground based observers both increases their accuracy and allows them to directly support our ground forces in combat." - strategic_destruction:0 "Strategic Destruction" - strategic_destruction_desc:0 "Our pilots can access strategic targets much faster than our naval or land forces. With no means to equip their new recruits we will soon outnumber the enemy forces." - high_level_bombing:0 "High Level Bombing" - high_level_bombing_desc:0 "From higher altitudes we can avoid some aerial engagements and anti-aircraft weaponry. Dropping bombs higher up requires more precision, but it is safer." - massed_bomber_formations:0 "Massed Bomber Formations" - massed_bomber_formations_desc:0 "By staying in formation our bombers can defend their group and increase our chances of successful bomb drops." - night_bombing:0 "Night Bombing" - night_bombing_desc:0 "With enemy defenses lowered and our bombers covered by darkness we can stay offensive and efficient around the clock. Show our enemy how persistent we are.\n\n" - dead_reckoning_bombing:0 "Dead Reckoning Bombing" - dead_reckoning_bombing_desc:0 "By measuring speed, direction and drift from previous positions we can calculate more precise bomb drops even during the night." - infiltration_bombing:0 "Infiltration Bombing" - infiltration_bombing_desc:0 "Joining enemy formations or tailing them back home to base may seem like madness. With enough practice, it is entirely possible." - pathfinder_groups:0 "Pathfinder Groups" - pathfinder_groups_desc:0 "Veteran pilots are equipped with the best tools to illuminate target positions. No smoke or bad weather can stop the bombers from carrying out their mission." - day_bombing:0 "Day Bombing" - day_bombing_desc:0 "Focused efforts during the day are devastating due to the big advantage of visibility. Projection of power is a welcome side effect.\n\n" - escort_relay_system:0 "Escort Relay System" - escort_relay_system_desc:0 "Bombers escorted by fighters greatly improve our ability to respond to enemy fire." - flying_fortress:0 "Flying Fortress" - flying_fortress_desc:0 "Fitting our high-flying heavy bombers with guns to defend themselves and enough armor to take a beating and still return home." - mass_destruction:0 "Mass Destruction" - mass_destruction_desc:0 "Bombers are equipped with the most devastating weapons in great quantities. Guaranteeing results even if only a few of our pilots get through." - fleet_in_being:0 "Fleet In Being" - fleet_in_being_desc:0 "Ships stay in port where they are safer and only engage enemies at opportune moments. The presence of our ships will make enemies more reluctant to take our ports.\n\n" - battlefleet_concentration:0 "Battlefleet Concentration" - battlefleet_concentration_desc:0 "Call in nearby ships as soon as an enemy vessel is spotted. Coordinated focused fire quickly render enemy ships useless. Hunt them down one by one." - battlefleet_concentration_ti:0 "Battlefleet Concentration" - battlefleet_concentration_ti_desc:0 "Call in nearby ships as soon as an enemy vessel is spotted. Coordinated focused fire quickly render enemy ships useless. Hunt them down one by one." - subsidiary_carrier_role:0 "Subsidiary Carrier Role" - subsidiary_carrier_role_desc:0 "Carriers support Battleships, improving their readiness in switching from defense to offense. The utility of the Carrier as both an eye in the sky and a powerful quick strike force complement the slower Battleships well." - subsidiary_carrier_role_ti:0 "Subsidiary Carrier Role" - subsidiary_carrier_role_ti_desc:0 "Carriers support Battleships, improving their readiness in switching from defense to offense. The utility of the Carrier as both an eye in the sky and a powerful quick strike force complement the slower Battleships well." - hunter_killer_groups:0 "Hunter Killer Groups" - hunter_killer_groups_desc:0 "Destroyers form groups to hunt down enemy submarines. The combined efforts of scouting and hunting specialists make a fantastic killing team." - floating_fortress:0 "Floating Fortress" - floating_fortress_desc:0 "With battleships on highest alert we will always be prepared to respond if the enemy dares threaten our waters. Any fleet needs a solid foundation and the power of the battleship is unparalleled." - floating_fortress_ti:0 "Floating Fortress" - floating_fortress_ti_desc:0 "With battleships on highest alert we will always be prepared to respond if the enemy dares threaten our waters. Any fleet needs a solid foundation and the power of the battleship is unparalleled." - floating_fortress_bs:0 "Floating Fortress" - floating_fortress_bs_desc:0 "With battleships on highest alert we will always be prepared to respond if the enemy dares threaten our waters. Any fleet needs a solid foundation and the power of the battleship is unparalleled." - floating_airfield:0 "Floating Airfield" - floating_airfield_desc:0 "Improved integration of Carriers into our fleet keeps us prepared to strike from both sea and air. It is key that we dominate the air wherever we go." - floating_airfield_ti:0 "Floating Airfield" - floating_airfield_ti_desc:0 "Improved integration of Carriers into our fleet keeps us prepared to strike from both sea and air. It is key that we dominate the air wherever we go." - floating_airfield_bs:0 "Floating Airfield" - floating_airfield_bs_desc:0 "Improved integration of Carriers into our fleet keeps us prepared to strike from both sea and air. It is key that we dominate the air wherever we go." - grand_battlefleet:0 "Grand Battlefleet" - grand_battlefleet_desc:0 "Leadership training allow our commanders to keep calm in the heat of battle even when commanding immense fleets. Our fleet will crush any opposition head on." - convoy_sailing:0 "Convoy Sailing" - convoy_sailing_desc:0 "Introducing compulsory convoy sailing will make it easier to spot enemy raids and respond in time. Safety in numbers is the way to go." - convoy_sailing_ti:0 "Convoy Sailing" - convoy_sailing_ti_desc:0 "Introducing compulsory convoy sailing will make it easier to spot enemy raids and respond in time. Safety in numbers is the way to go." - convoy_sailing_bs:0 "Convoy Sailing" - convoy_sailing_bs_desc:0 "Introducing compulsory convoy sailing will make it easier to spot enemy raids and respond in time. Safety in numbers is the way to go." - convoy_escorts:0 "Convoy Escorts" - convoy_escorts_desc:0 "Fast surface ships as part of our convoys will allow us to spot enemy submarines and respond in time. Detection is the key to eliminating the submarine nuisance." - convoy_escorts_bs:0 "Convoy Escorts" - convoy_escorts_bs_desc:0 "Fast surface ships as part of our convoys will allow us to spot enemy submarines and respond in time. Detection is the key to eliminating the submarine nuisance." - escort_carriers:0 "Escort Carriers" - escort_carriers_desc:0 "The area covered by a Carrier aircrafts makes escorting trade convoys a much easier task. Securing the flow of resources is essential." - integrated_convoy_defence:0 "Integrated Convoy Defense" - integrated_convoy_defence_desc:0 "Better navy and air coordination allow us to strike at enemies from miles away before they are near our trade convoys. This will drastically increase the effectiveness of convoy sailing." - integrated_convoy_defence_bs:0 "Integrated Convoy Defense" - integrated_convoy_defence_bs_desc:0 "Better navy and air coordination allow us to strike at enemies from miles away before they are near our trade convoys. This will drastically increase the effectiveness of convoy sailing." - submarine_operations:0 "Submarine Operations" - submarine_operations_desc:0 "We do not need to engage the enemy fleet head on to win the war. Strike at their trade convoys before they can react and disappear below the surface again. You cannot fight what you cannot see." - submarine_operations_bs:0 "Submarine Operations" - submarine_operations_bs_desc:0 "We do not need to engage the enemy fleet head on to win the war. Strike at their trade convoys before they can react and disappear below the surface again. You cannot fight what you cannot see." - undersea_blockade:0 "Undersea Blockade" - undersea_blockade_desc:0 "Submarines are the perfect tool for cutting of the enemy's inflow of important raw materials. We will cripple the enemy's production and win by starving them out." - undersea_blockade_bs:0 "Undersea Blockade" - undersea_blockade_bs_desc:0 "Submarines are the perfect tool for cutting of the enemy's inflow of important raw materials. We will cripple the enemy's production and win by starving them out." - convoy_interdiction:0 "Convoy Interdiction" - convoy_interdiction_desc:0 "Improved coordination of our submarines will let them strike at trade convoys en route. Disrupting the enemy's supply lines will give us the strategic advantage." - convoy_interdiction_ti:0 "Convoy Interdiction" - convoy_interdiction_ti_desc:0 "Improved coordination of our submarines will let them strike at trade convoys en route. Disrupting the enemy's supply lines will give us the strategic advantage." - convoy_interdiction_bs:0 "Convoy Interdiction" - convoy_interdiction_bs_desc:0 "Improved coordination of our submarines will let them strike at trade convoys en route. Disrupting the enemy's supply lines will give us the strategic advantage." - submarine_offensive:0 "Submarine Offensive" - submarine_offensive_desc:0 "Reaching the pinnacle of communication between our submarines allows them to go on the offensive. Let us destroy the enemy trade convoys faster than they can replace them." - submarine_offensive_bs:0 "Submarine Offensive" - submarine_offensive_bs_desc:0 "Reaching the pinnacle of communication between our submarines allows them to go on the offensive. Let us destroy the enemy trade convoys faster than they can replace them." - trade_interdiction:0 "Trade Interdiction" - trade_interdiction_desc:0 "The sooner we spot the enemy ships, the sooner we can destroy them. Hit their trade convoys and escape before they have time to react.\n\n" - unrestricted_submarine_warfare:0 "Unrestricted Submarine Warfare" - unrestricted_submarine_warfare_desc:0 "Let our submarines sink any vessel without warning, civilian or not. While some consider this a breach of the rules of war, there is no denying its effectiveness." - wolfpacks:0 "Wolf packs" - wolfpacks_desc:0 "With our submarines organized into packs the coordination between them is greatly improved. Once an enemy is located our submarine lies in wait until the rest of the pack arrives, attacking only when the odds are overwhelmingly in our favor." - advanced_submarine_warfare:0 "Advanced Submarine Warfare" - advanced_submarine_warfare_desc:0 "A massive improvement on communication between our submarines lets them time attacks to perfection. When they finally see us it will be from a sinking ship." - combined_operations_raiding:0 "Combined Operations Raiding" - combined_operations_raiding_desc:0 "Designating all resources to hunt for enemy trade convoys. Coordination between our main fleet and submarines makes our fleet ever alert. No ship will go unnoticed in our waters." - raider_patrols:0 "Raider Patrols" - raider_patrols_desc:0 "Patrols of both fast and gun heavy ships leave the enemy trade convoys nowhere to hide. \nNot only submarines can hunt." - capital_ship_raiders:0 "Capital Ship Raiders" - capital_ship_raiders_desc:0 "With our most powerful ships on the hunt for trade convoys, the enemy will no longer find safety in numbers. They are sitting ducks, praying that we will not find them." - carrier_operations:0 "Carrier Operations" - carrier_operations_desc:0 "Carriers will allow our pilots to strike at sea faster and easier than from our airbases on land. We will strike before they have time to react." - naval_air_operations:0 "Naval Air Operations" - naval_air_operations_desc:0 "Pilots trained to perform missions from carriers opens a new way for us to dominate the seas. Airplanes are an efficient way of thinning out the enemy fleet." - base_strike:0 "Base Strike" - base_strike_desc:0 "Striking at the enemy's ports will cripple their ability to rebuild their fleet. This will allow us to dominate the seas by sheer numbers.\n\n" - carrier_primacy:0 "Carrier Primacy" - carrier_primacy_desc:0 "Modern airplanes have greater range and precision than ordinary naval guns. Integrate carriers into our fleet and dominate the seas from the sky." - carrier_task_forces:0 "Carrier Task Forces" - carrier_task_forces_desc:0 "Organized task forces with carriers and light cruisers ensures that the enemy will never catch us off guard." - massed_strikes:0 "Massed Strikes" - massed_strikes_desc:0 "Pilots trained for carrier missions will allow even an overcrowded carrier to function smoothly, swarming the enemy and vastly improving their effectiveness in naval battles. A carrier needs to run like a well-oiled machine where everyone knows their role." - carrier_battlegroups:0 "Carrier Battlegroups" - carrier_battlegroups_desc:0 "Carriers are able to strike at the enemy from a greater distance than any naval cannon and with eyes in the sky we will never be caught off guard. Carriers in mass is a force to be reckoned with." - escort_patrols:0 "Escort Patrols" - escort_patrols_desc:0 "Improving detection makes our convoy escorts far deadlier to submarines. With nowhere to hide they pose no real threat." - RESEARCH_PROGRESS_DONE:0 "§TResearched time: $WEEKS|H$§!" - RESEARCH_PROGRESS_COMPACT:0 "§T$DAYS|H$ day(s)§!" - RESEARCH_PROGRESS_COMPACT_WITH_XP:0 "§T$DAYS|H$ day(s) ($XP_TEXT$)§!" - RESEARCH_PROGRESS_DAYS: "$NUM|H$" - RESEARCH_PROGRESS_DAYS_GOOD: "$NUM|G$ £increase_reversed_texticon " - RESEARCH_PROGRESS_DAYS_BAD: "$NUM|R$ £decrease_reversed_texticon " - RESEARCH_PROGRESS_INSTANT:0 "§TInstantly§!" - already_researching:0 "§GYou are already researching this technology.§!" - RESEARCH_DESIGN_TEAM_IS_BUSY: "$NAME|H$ is currently busy:" - AIR_TITLE_CAS:0 "Close Air\nSupport" - AIR_TITLE_FIGHTER:0 "Fighter" - AIR_TITLE_NAV:0 "Naval\nBomber" - AIR_TITLE_HEAVY_FIGHTER:0 "Heavy\nFighter" - AIR_TITLE_MEDIUM_BOMBER:0 "Tactical\nBomber" - AIR_TITLE_STRAT_BOMBER:0 "Strategic\nBomber" - AIR_TITLE_SCOUT_PLANE:0 "Air Scouts" - TITLE_FLEET_IN_BEING:0 "Fleet in Being" - TITLE_TRADE_INTERDICTION:0 "Trade Interdiction" - TITLE_BASE_STRIKE:0 "Base Strike" - TITLE_BATTLEFIELD_SUPPORT:0 "Battlefield Support" - TITLE_OPERATIONAL_INTEGRITY:0 "Operational Integrity" - TITLE_STRATEGIC_DESTRUCTION:0 "Strategic Destruction" - MOBILE_WARFARE_DOCTRINE_LABEL:1 "Mobile Warfare Doctrine" - MOBILE_WARFARE_DOCTRINE_DESC:0 "Mobile Warfare is a focus on speed and maneuver to cut off and disorganize enemy forces." - SUPERIOR_FIREPOWER_DOCTRINE_LABEL:1 "Superior Firepower Doctrine" - SUPERIOR_FIREPOWER_DOCTRINE_DESC:0 "This doctrine focuses on throwing shells, not men, at the enemy. Our manpower is precious, bullets are cheap." - GRAND_BATTLEPLAN_DOCTRINE_LABEL:1 "Grand Battleplan Doctrine" - GRAND_BATTLEPLAN_DOCTRINE_DESC:0 "Extensive planning and preparation before engaging in battle is the key to success." - MASS_ASSAULT_DOCTRINE_LABEL:1 "Mass Assault Doctrine" - - MOBILE_WARFARE_DOCTRINE:0 "Mobile Warfare" - SUPERIOR_FIREPOWER_DOCTRINE:0 "Superior Firepower" - GRAND_BATTLEPLAN_DOCTRINE:0 "Grand Battleplan" - MASS_ASSAULT_DOCTRINE:0 "Mass Assault" - - - MASS_ASSAULT_DOCTRINE_DESC:0 ""Perfect" weapons are overrated, a large number of "good enough" weapons is the path to victory!" - MOBILE_INFANTRY_LABEL:0 "MOBILE INFANTRY" - MOBILE_INFANTRY_LABEL_TT:0 "Improve speed and organization of horse drawn infantry." - BLITZKRIEG_LABEL:0 "BLITZKRIEG" - BLITZKRIEG_LABEL_TT:0 "Improve organization of armored units." - DESPERATE_DEFENSE_LABEL:0 "DESPERATE DEFENSE" - DESPERATE_DEFENSE_LABEL_TT:0 "Maximize recruitment and guerilla tactics." - MODERN_BLITZKRIEG_LABEL:0 "MODERN BLITZKRIEG" - MODERN_BLITZKRIEG_LABEL_TT:0 "Improve army organization and counter tactics." - DISPERSED_SUPPORT_LABEL:0 "DISPERSED SUPPORT" - DISPERSED_SUPPORT_LABEL_TT:0 "Improve organization and effectiveness of line artillery." - INTEGRATED_SUPPORT_LABEL:0 "INTEGRATED SUPPORT" - INTEGRATED_SUPPORT_LABEL_TT:0 "Improve organization and effectiveness of support units." - AIRLAND_BATTLE_LABEL:0 "AIRLAND BATTLE" - AIRLAND_BATTLE_LABEL_TT:0 "Improve attack capabilities of army." - SHOCK_AND_AWE_LABEL:0 "SHOCK & AWE" - SHOCK_AND_AWE_LABEL_TT:0 "Improve general effectiveness of army." - ASSAULT_LABEL:0 "ASSAULT" - ASSAULT_LABEL_TT:0 "Focus on direct and frontal attacks with armor." - INFILTRATION_LABEL:0 "INFILTRATION" - INFILTRATION_LABEL_TT:0 "Focus on deception and unconventional infantry strategies." - DEEP_BATTLE_LABEL:0 "DEEP BATTLE" - DEEP_BATTLE_LABEL_TT:0 "Improve support and abilities to strike deep into enemy territory." - MASS_MOBILIZATION_LABEL:0 "MASS MOBILIZATION" - MASS_MOBILIZATION_LABEL_TT:0 "Maximize recruitment and strength in numbers." - FLEET_IN_BEING_DESC:0 "A strong fleet focused around battleships means that we are a force to be reckoned with when deployed at sea." - TRADE_INTERDICTION_DESC:0 "Against a stronger naval opponent we can focus on tying up their fleet and destroying supply lines to starve their war machine." - BASE_STRIKE_DESC:0 "With a strong focus on carriers and their support, no enemy will be outside our reach, whether on land or at sea." - AIR_SUPERIORITY_DESC:0 "Our fighters are the backbone of the air force and both defend our skies, escort bombers and clear the skies of enemies for our ground troops." - BATTLEFIELD_SUPPORT_DESC:1 "By improving how close air support interacts with divisions we can lay waste to enemy divisions with optimal support" - OPERATIONAL_INTEGRITY_DESC:0 "Tactical bombers are flexible and can perform both ground support and regular bombing" - STRATEGIC_DESTRUCTION_DESC:0 "By bombing the enemies factories, either by night, or more dangerously, during the day we can seriously hinder their war machine." - base_cost:0 "Base Cost" - civilian_industry:0 "Civilian industry" - military_industry:0 "Military industry" - research_requirements_or:0 "Requires one of the following technologies:" - research_requirements_and:0 "Requires the following technologies:" - RESEARCH_REQUIREMENTS_SINGLE:0 "§RRequires Technology ($TECH$)§!" - RESEARCH_DOCTRINE_REQUIREMENTS_SINGLE:0 "§RRequires Doctrine ($TECH$)§!" - UNUSED_SLOT:0 "Select a technology to research" - ETA_SHORT_D:0 "§T$DAYS|H$ day(s)§!" - ETA_SHORT_W:0 "§T$WEEKS|H$ weeks§!" - ETA_DAYS_WEEKS:0 "§T$DAYS|H$ day(s) and $WEEKS|H$ week(s) out of $COST|H$ day(s) remaining.§!" - ETA_WEEKS:0 "§T$WEEKS|H$ weeks out of $COST|H$ day(s) remaining.§!" - ETA_DAYS:0 "§T$DAYS|H$ day(s) out of $COST|H$ day(s) remaining.§!" - RESEARCH_PROGRESS:0 "§T$PROGRESS|%1H$ finished.§!" - RESEARCH_IS_BEING_RESEARCHED:0 "Is being researched: " - RESEARCH_HAS_STARTED_RESEARCH:0 "Has been researched before: " - DAYS_SAVED:0 "§T$DAYS|H$ day(s) out of $MAX|H$ day(s) saved.§!" - DAYS_SAVED_DESC:0 "§TYou can save a maximum of $MAX|H$ research days per research slot. Assign a technology to use saved research days.§!" - DAYS_SAVED_RESEARCH_DESC:0 "Days saved: $DAYS|0G$\n" - NO_RESEARCH_PENALTY:0 "§GTech is current - no research penalty§!" - FINISHED_RESEARCH_POPUP_DESC:0 "...and $NUM|H$ additional effects. See Details." - ship_modules_tech:0 "Ship modules" - dd_tech:0 "Destroyer models" - cl_tech:1 "Light Cruiser models" - ca_tech:1 "Heavy Cruiser models" - cv_tech:0 "Carrier models" - bc_tech:0 "Battlecruiser models " - bb_tech:0 "Battleship models" - shbb_tech:0 "Superheavy Battleship models" - ss_tech:0 "Submarine models" - tp_tech:0 "Transport models" - asw_tech:0 "Anti-Submarine Warfare Technology" - naval_minesweeping:0 "Naval Minesweeping Technology" - naval_minelaying:0 "Naval Minelaying Technology" - synth_resources:0 "Synthetic resources" - light_fighter:0 "Fighter models" - cat_heavy_fighter:0 "Heavy Fighter models" - tactical_bomber:0 "Tactical Bomber models" - cat_strategic_bomber:0 "Strategic Bomber models" - naval_bomber:0 "Naval Bomber models" - cas_bomber:0 "Close Air Support models" - cat_mechanized_equipment:0 "Mechanized models" - encryption_tech:0 "Encryption methods" - decryption_tech:0 "Decryption methods" - computing_tech:0 "Computing technology" - radar_tech:0 "RADAR technology" - infantry_tech:0 "Infantry technology" - support_tech:0 "Support technology" - marine_tech:0 "Marine technology" - mountaineers_tech:0 "Mountaineers Technology" - engineers_tech:0 "Engineers Technology" - military_police_tech:0 "Military Police Technology" - signal_company_tech:0 "Signal Company Technology" - construction_tech:0 "Construction technology" - nuclear:0 "Nuclear Technology" - rocketry:0 "Rocketry technology" - land_doctrine:0 "Land Doctrine" - air_doctrine:0 "Air Doctrine" - naval_doctrine:0 "Naval Doctrine" - no_doctrine_chosen:0 "No Doctrine Selected" - battlefield_support_tree:0 "Battlefield Support Doctrine" - battlefield_support_tree_research:0 "Battlefield Support Doctrine" - operational_integrity_tree:0 "Operational Integrity Doctrine" - strategic_destruction_tree:0 "Strategic Destruction Doctrine" - armor:0 "Armor technology" - cat_light_armor:0 "Light Cavalry models" - cat_medium_armor:0 "Medium Cavalry models" - cat_heavy_armor:0 "Heavy Cavalry models" - cat_anti_tank:0 "Anti-Cavalry" - cat_anti_air:0 "Anti-Air" - submarine_doctrine:0 "Submarine Operations Doctrines" - MUTUALLY_EXCLUSIVE_TREE:0 "§TThe branches are mutually exclusive. Research can only progress in one of the branches.§!" - jet_technology:0 "Jet technology" - convoy_defense_tree:0 "Convoy Defense Doctrine" - medium_air:0 "Medium Flying Creatures" - light_air:0 "Light Flying Creatures" - heavy_air:0 "Heavy Flying Creatures" - naval_air:0 "Naval Flying Creatures" - trade_interdiction_tree:0 "Trade Interdiction Doctrines" - decryption_tech_research:1 "Decryption Research Time" - encryption_tech_research:1 "Encryption Research Time" - suicide_craft:0 "Yokosuka MXY7 Ohka" - suicide_craft_desc:0 "Rocket powered kamikaze craft" - fleet_in_being_tree:0 "Fleet in Being Doctrines" - electronics:0 "Electronics" - air_equipment_research:1 "Air Research Time" - support_tech_research:0 "Support Unit Research Time" - synth_resources_research:1 "Synthetic Resources Research Time" - TITLE_ELECTRONIC_SUBTITLE:0 "Electronic Engineering" - TITLE_EXP_ROCKETS_SUBTITLE:0 "Experimental Rockets" - TITLE_ATOMIC_RESEARCH_SUBTITLE:0 "Atomic Research" - cat_mobile_warfare_research:0 "Mobile Warfare Doctrine" - cat_superior_firepower_research:0 "Superior Firepower Doctrine" - cat_grand_battle_plan_research:0 "Grand Battleplan Doctrine" - cat_mass_assault_research:0 "Mass Assault Doctrine" - cat_strategic_destruction_research:0 "Strategic Destruction Doctrine" - cat_battlefield_support_research:0 "Battlefield Support Doctrine" - cat_operational_integrity_research:0 "Operational Integrity Doctrine" - cat_operational_integrity:0 "Operational Integrity Doctrine" - cat_base_strike_research:0 "Base Strike Doctrine" - cat_base_strike:0 "Base Strike Doctrine" - cat_fleet_in_being_research:0 "Fleet in Being Doctrine" - cat_trade_interdiction_research:0 "Trade Interdiction Doctrine" - cat_mobile_warfare:0 "Mobile Warfare Doctrine" - cat_superior_firepower:0 "Superior Firepower Doctrine" - cat_grand_battle_plan:0 "Grand Battleplan Doctrine" - cat_mass_assault:0 "Mass Assault Doctrine" - cat_trade_interdiction:0 "Trade Interdiction Doctrine" - cat_battlefield_support:0 "Battlefield Support Doctrine" - infantry_weapons:0 "Infantry Weapons" - base_strike_main:0 "Base Strike Doctrine" - transport:0 "Transport Ship" - transport_desc:0 "Ship designed solely for troop movement, without any defensive capabilities." - landing_craft:0 "Landing Craft" - landing_craft_desc:0 "Dedicated invasion craft make landing in hostile territory slightly less of a headache." - tank_landing_craft:0 "Advanced Landing Craft" - tank_landing_craft_desc:0 "Advanced Landing craft means that our boys can get on the beach quicker and more effectively during an invasion." - mtg_transport:0 "Transport Ship" - mtg_transport_desc:0 "Ship designed solely for troop movement, without any defensive capabilities." - mtg_landing_craft:0 "Landing Craft" - mtg_landing_craft_desc:0 "Dedicated invasion craft make landing in hostile territory slightly less of a headache." - mtg_tank_landing_craft:0 "Advanced Landing Craft" - mtg_tank_landing_craft_desc:0 "Advanced Landing craft means that our boys can get on the beach quicker and more effectively during an invasion." - motorized_rocket_unit:0 "Crossbowmen Chariot" - mot_rockets_research:1 "Crossbowmen Chariot Research Time" - UNLOCK_DIVISION_TEMPLATE:0 "Unlocks a free §HDivision Template§!" - INFANTRY_TITLE_WEAPONS:0 "WEAPONS & EQUIPMENT" - INFANTRY_TITLE_SPECIAL:0 "SPECIAL FORCES" - INFANTRY_TITLE_MOTORISED:1 "MOBILE INFANTRY" - ARMOUR_TITLE:0 "CAVALRY" - ARMOUR_TITLE_HEAVY:0 "HEAVY" - ARMOUR_TITLE_MEDIUM:0 "MEDIUM" - ARMOUR_TITLE_LIGHT:0 "LIGHT" - ARMOUR_TITLE_AMPH:0 "AMPHIBIOUS" - ARTILLERY_TITLE_ROCKET:0 "CROSSBOW" - ARTILLERY_TITLE_AT:0 "ANTI-CAVALRY" - ARTILLERY_TITLE:0 "HAND-HELDS" - ARTILLERT_TITLE_AA:0 "ANTI-AIR" - NAVAL_TITLE_DESTROYERS:0 "DESTROYERS" - NAVAL_TITLE_CRUISERS:0 "CRUISERS" - NAVAL_TITLE_BATTLECRUISERS:0 "BATTLECRUISERS" - NAVAL_TITLE_BATTLESHIPS:0 "BATTLESHIPS" - NAVAL_TITLE_CARRIERS:0 "CARRIERS" - NAVAL_TITLE_SUBMARINES:0 "SUBMARINES" - NAVAL_TITLE_TRANSPORTS:0 "TRANSPORTS" - INDUSTRY_TITLE:0 "INDUSTRY" - INDUSTRY_TITLE_PRODUCTION:0 "PRODUCTION" - INDUSTRY_TITLE_OIL:0 "ADVANCED FARMING" - INDUSTRY_TITLE_CONSTRUCTION:0 "CONSTRUCTION" - JET_ENGINES_RESEARCHED:0 "Allows researching technologies that require Jet Engines, such as jet aircrafts" - cat_fleet_in_being:0 "Fleet in Being Doctrine" - air_equipment:0 "Aircraft" - bicycle_infantry:0 "Bicycle Infantry" - bicycle_infantry_desc:0 "Regular infantry with bicycles are more mobile than their marching counterparts, for a very modest price." - torpedo_cruiser_mtg:0 "Torpedo Cruiser" - amphibious_mechanized_infantry:0 "Amphibious Tractors" - amphibious_mechanized_infantry_desc:0 "Amphibious Tractors, or Amtracs, allow Marines to be landed on a beach under armored protection. However, this comes at the cost of poor fuel efficiency." - amphibious_mechanized_infantry_2:0 "Improved Amphibious Tractors" - amphibious_mechanized_infantry_2_desc:0 "These Amtracs feature several improvements over the base version, such as a rear loading ramp for easier unloading on the beach." - amphibious_tank:0 "Amphibious Tank" - amphibious_tank_desc:0 "Amphibious Tanks are designed to give Marines armored fire support during a beach assault." - amphibious_tank_2:0 "Improved Amphibious Tank" - amphibious_tank_2_desc:0 "The second generation of amphibious tanks feature better protection and increased fire power." - NAVAL_TITLE_MINES:0 "MINE WARFARE" - basic_naval_mines:0 "Contact Mine" - basic_naval_mines_desc:0 "A simple floating bomb, anchored to the sea floor. The mine explodes when it comes into contact with a ship." - improved_naval_mines:0 "Magnetic Mine" - improved_naval_mines_desc:0 "This sophisticated mine explodes when it detects changes in the magnetic field stemming from a passing ship." - advanced_naval_mines:0 "Acoustic Mine" - advanced_naval_mines_desc:0 "This type of naval mine detonates when its sensors detect the noise of a nearby ship." - modern_naval_mines:0 "Pressure Mine" - modern_naval_mines_desc:0 "This highly advanced mine detects small changes in water pressure caused by a ship moving nearby." - degaussing:0 "Degaussing" - degaussing_desc:0 "By installing powerful electro-magnetic coils, a ship's magentic signature can be dramatically reduced, making it far less vulnerable to magnetic mines." - submarine_mine_laying:0 "Minelaying Submarine" - submarine_mine_laying_desc:0 "By installing special equipment to hold and release mines, a specially-designed submarine can deploy mines while submerged and, hopefully, undetected." - improved_submarine_mine_laying:0 "Torpedo-tube Mine Deployment" - improved_submarine_mine_laying_desc:0 "Redesigning mines to fit into torpedo tubes allows any submarine to become a minelayer, albeit at the expense of torpedoes carried." - airdrop_mines:0 "Aerial Minelaying" - airdrop_mines_desc:0 "By fitting the mines with a small parachute, they can be safely dropped from airplanes, allowing quick and efficient creation of minefields." - airdrop_mines_bba:0 "$airdrop_mines$" - airdrop_mines_bba_desc:0 "$airdrop_mines_desc$" - airsweep_mines:0 "Aerial Minesweeping" - airsweep_mines_desc:0 "Airplanes can be fitted with special equipment to detect and safely detonate naval mines from the air." - airsweep_mines_bba:0 "$airsweep_mines$" - airsweep_mines_bba_desc:0 "$airsweep_mines_desc$" - naval_mines:0 "Mine Warfare Technologies" - concentrated_industry_category:0 "Concentrated Industry Technologies" - dispersed_industry_category:0 "Dispersed Industry Technologies" - NAVAL_TITLE_ARMAMENT:0 "ARMAMENTS" - NAVAL_TITLE_TORPEDOES:0 "TORPEDOES" - NAVAL_TITLE_DAMAGE_CONTROL:0 "DAMAGE CONTROL" - NAVAL_TITLE_FIRE_CONTROL:0 "FIRE CONTROL METHODS" - early_ship_hull_carrier:0 "Deck Conversions" - early_ship_hull_carrier_short:0 "Deck Conversions" - early_ship_hull_carrier_desc:0 "Conversions of old hulls allow for cheap experiments with naval aviation to gain experience in building and operating carriers. These ships will be less capable than a purpose-built carrier, but far quicker to create." - cruiser_submarines:0 "Cruiser Submarine Hull" - midget_submarines:0 "Midget Submarine Hull" - coastal_defense_ships:0 "Coastal Defense Ships" - pre_dreadnoughts:0 "Pre-Dreadnought Ships" - basic_ship_hull_heavy:0 "1936 Heavy Ship Hull" - basic_ship_hull_heavy_short:0 "1936 Heavy Ship Hull" - basic_ship_hull_cruiser:0 "1936 Cruiser Hull" - basic_fire_control_system:0 "Basic Fire Control System" - basic_fire_control_system_desc:0 "All fire of the ship's guns is controlled from a central position, ensuring a tighter grouping of shots and increases accuracy." - improved_fire_control_system:0 "Improved Fire Control System" - improved_fire_control_system_desc:0 "By entering course, speed and distance of a target, a mechanical computer can accurately predict where the target will be when the next salvo is ready to fire." - advanced_fire_control_system:0 "Advanced Fire Control System" - advanced_fire_control_system_desc:0 "A large and complex mechanical computer that tracks a large number of inputs about both the target, the firing ship as well as weather conditions and sea state allows very accurate ballistic calculations." - sonar:0 "Passive Sonar" - sonar_desc:1 "A basic set of hydrophones allows tracking of underwater targets through detecting the sound they make.\n\nMounting this module in an §YElectronics Slot§! on §YLight Ships§! or §YCruisers§! will help them detect enemy §YSubmarines§!." - improved_sonar:0 "Active Sonar" - improved_sonar_desc:1 "Using modulated sound waves, this system can accurately measure bearing and distance to a submerged target.\n\nMounting this module in an §YElectronics Slot§! on §YLight Ships§! or §YCruisers§! will help them detect enemy §YSubmarines§!." - smoke_generator:0 "Smoke Generators" - smoke_generator_desc:0 "Some minor modifications to the engines and smokestacks of light and medium ships allow them to make a lot of smoke to avoid or break contact with the enemy." - depth_charges_advice_tt:0 "\nMounting a §YDepth Charge§! module on §YLight Ships§! and §YCruisers§! will allow them to attack enemy §YSubmarines§!." - sonar_advice_tt:0 "\nMounting a §YSonar§! module on §YLight Ships§! and §YCruisers§! will allow them to detect enemy §YSubmarines§!." - basic_depth_charges:0 "Basic Depth Charges" - basic_depth_charges_desc:1 "A simple explosive container with a pressure-sensitive trigger explodes when it hits a pre-set depth. \n\nMounting this module on §YLight Ships§! and §YCruisers§! will allow them to attack enemy §YSubmarines§!." - improved_depth_charges:0 "Depth Charge Thrower" - improved_depth_charges_desc:1 "A simple mechanical device that tosses a depth charge a set distance away from the ship. This means that the destroyer no longer has to drive directly across the target to hit it. \n\nMounting this module on §YLight Ships§! and §YCruisers§! will allow them to attack enemy §YSubmarines§!." - advanced_depth_charges:0 "Depth Charge Mortar" - advanced_depth_charges_desc:1 "A mortar on board the destroyer can throw an explosive charge much further, allowing the ship to maintain sonar contact with the submarine throughout the attack and dramatically increasing its accuracy.\n\nMounting this module on §YLight Ships§! and §YCruisers§! will allow them to attack enemy §YSubmarines§!." - modern_depth_charges:0 "Improved Depth Charge Mortar" - modern_depth_charges_desc:1 "A larger propellant charge throws a proper depth charge set to a specific depth at a submarine from quite a distance.\n\nMounting this module on §YLight Ships§! and §YCruisers§! will allow them to attack enemy §YSubmarines§!." - improved_airplane_launcher:0 "Improved Airplane Catapult" - improved_airplane_launcher_desc:1 "An improved pneumatic mechanism allows much larger airplanes to be launched via catapult. This increases their search radius. \n\nMounting this module on §YCruisers§!, §YHeavy Ships§! or specialized §YSubmarines§! improves their ability to detect enemy ships." - airplane_launcher_advice_tt:0 "\nMounting a §YCatapult§! module on §YCruisers§!, §YHeavy Ships§! or specialized §YSubmarines§! improves their ability to detect enemy ships." - cruiser_armor_advice_tt:0 "\nMounting a better §YArmor§! module on §YCruisers§! improves their ability to withstand damage." - heavy_armor_advice_tt:0 "\nMounting a better §YArmor§! module on §YHeavy Ships§! improves their ability to withstand damage. §YBattleships§! and §YBattlecruisers§! are defined by their different §YArmor Schemes§!, with Battlecruisers generally having worse armor." - basic_cruiser_armor_scheme:0 "Basic Cruiser Armor Scheme" - basic_cruiser_armor_scheme_desc:1 "An armor scheme that copies the split between belt and deck armor seen in Capital Ships and offers some protection against splinters and small-caliber guns.\n\nMounting this module on §YCruisers§! improves their ability to §Ywithstand enemy damage§!, but also §Rreduces§! their §Yspeed§!." - improved_cruiser_armor_scheme:0 "Inclined Belt Cruiser Armor Scheme" - improved_cruiser_armor_scheme_desc:1 "By placing the belt armor at an angle, the same weight and thickness of armor are much harder to pierce.\n\nMounting this module on §YCruisers§! improves their ability to §Ywithstand enemy damage§!, but also §Rreduces§! their §Yspeed§!." - advanced_cruiser_armor_scheme:0 "All-or-Nothing Cruiser Armor Scheme" - advanced_cruiser_armor_scheme_desc:1 "This scheme focuses on only protecting the most vital areas of the ship, while ignoring the unimportant parts. \n\nMounting this module on §YCruisers§! improves their ability to §Ywithstand enemy damage§!, but also §Rreduces§! their §Yspeed§!." - basic_heavy_armor_scheme:0 "Inclined Belt Armor Scheme" - basic_heavy_armor_scheme_desc:1 "By placing the belt armor at an angle, the same weight and thickness of armor are much harder to pierce.\n\nMounting this module on §YHeavy Ships§! improves their ability to §Ywithstand enemy damage§!. §YBattleships§! and §YBattlecruisers§! are defined by their different §YArmor Schemes§!." - improved_heavy_armor_scheme:0 "All-or-Nothing Armor Scheme" - improved_heavy_armor_scheme_desc:1 "This scheme focuses on only protecting the most vital areas of the ship, while ignoring the unimportant parts.\n\nMounting this module on §YHeavy Ships§! improves their ability to §Ywithstand enemy damage§!. §YBattleships§! and §YBattlecruisers§! are defined by their different §YArmor Schemes§!." - torpedo_advice_tt:0 "\nMounting §YTorpedo Launchers§! on §YLight Ships§! or §YCruisers§! allows them to do significant damage to enemy §YCapital Ships§! in the §YBattleline§! if they can overwhelm the enemy §YScreening Group§!." - basic_torpedo:0 "Basic Torpedo" - basic_torpedo_desc:1 "A self-propelled weapon with an explosive warhead that runs on a pre-determined course until it hits the target below the waterline.\n\nMounting this module on §YLight Ships§! or §YCruisers§! allows them to do significant damage to enemy §YCapital Ships§!." - magnetic_detonator:0 "Magnetic Detonator" - magnetic_detonator_desc:0 "A new detonator detects the shift in the earth's magnetic field when the torpedo passes under the target. An explosion directly under a ship causes much more damage and often breaks the keel of the target, sinking it instantly." - homing_torpedo:0 "Homing Torpedo" - homing_torpedo_desc:0 "Equipped with an accoustic detector, the torpedo can home in on the biggest source of noise ahead of it - usually the target." - electric_torpedo:0 "Electric Torpedo" - electric_torpedo_desc:0 "Instead of leaving an easily-detected trail of bubbles, a torpedo with an electrical engine remains practically invisible until it hits. This also means that there is no trail leading back to the launching submarine." - improved_ship_torpedo_launcher:0 "Improved Ship Torpedo Launcher" - improved_ship_torpedo_launcher_desc:1 "Stronger motors allow more tubes to be installed in a single mount and be trained on target faster.\n\nMounting this module on §YLight Ships§! or §YCruisers§! allows them to do significant damage to enemy §YCapital Ships§!." - advanced_ship_torpedo_launcher:0 "Advanced Ship Torpedo Launcher" - advanced_ship_torpedo_launcher_desc:1 "Larger diameter tubes allow for bigger torpedoes with heavier warheads.\n\nMounting this module on §YLight Ships§! or §YCruisers§! allows them to do significant damage to enemy §YCapital Ships§!." - modern_ship_torpedo_launcher:0 "Modern Ship Torpedo Launcher" - modern_ship_torpedo_launcher_desc:1 "Powerful compressed air charges allow heavier torpedoes to be launched at higher speeds.\n\nMounting this module on §YLight Ships§! or §YCruisers§! allows them to do significant damage to enemy §YCapital Ships§!." - snorkel_advice_tt:0 "\nMounting §YSnorkels§! on §YSubmarines§! dramatically reduces their §YVisibility§!, making them harder to see and engage for enemy ships." - basic_submarine_snorkel:0 "Basic Submarine Snorkel" - basic_submarine_snorkel_desc:1 "A simple airtube running from the engine room to the control tower. Extended, it allows the submarine to run its engines and charge its engines while still submerged.\n\nMounting this module on §YSubmarines§! reduces their §YVisibility§!, making them harder to detect." - improved_submarine_snorkel:0 "Improved Submarine Snorkel" - improved_submarine_snorkel_desc:1 "An improved design prevents any water from being sucked into the engines and also reduces the radar echo of the snorkel head.\n\nMounting this module on §YSubmarines§! reduces their §YVisibility§!, making them harder to detect." - light_battery_advice_tt:0 "\n\nMounting §YLight Battery§! modules on §YLight Ships§! and §YCruisers§! improves their §YLight Gun Attack§!, which helps with destroying enemy §YScreen Ships§!. §YLight Batteries§! generally perform poorly against armored ships such as §YCruisers§! and §YHeavy Ships§!" - medium_battery_advice_tt:0 "\n\nMounting §YLight Medium Battery§! or §YMedium Battery§! modules on §YCruisers§! improves their §YLight Gun Attack§! or §YHeavy Gun Attack§!, enabling them to fight enemy §YScreen Ships§! or §YCapital Ships§!. Mounting any §YMedium Battery§! will designate a ship as a §YHeavy Cruiser§!, while mounting only §YLight Medium Battery§! will designate a ship as a §YLight Cruiser§!." - heavy_battery_advice_tt:0 "\n\nMounting §YHeavy Battery§! modules increases a §YHeavy Ship§!'s §YHeavy Gun Attack§!, allowing it to engage and destroy enemy §YCapital Ships§!. §YHeavy Batteries§! generally perform poorly against smaller vessels such as §YLight Ships§! and §YLight Cruisers§!." - basic_battery:0 "Naval Gunnery" - basic_battery_desc:0 "Basic design for the training and elevation mechanics of naval guns." - basic_light_battery:0 "Basic Light Battery" - basic_light_battery_desc:1 "An open, powered mount for a small-caliber gun for use on smaller ships.\n\nMounting this module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!." - improved_light_battery:0 "Improved Light Battery" - improved_light_battery_desc:1 "A closed, powered mount for a small-caliber gun gives the crew some protection from the elements and shell splinters. \n\nMounting this module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!." - advanced_light_battery:0 "Advanced Light Battery" - advanced_light_battery_desc:1 "An advanced twin mount brings significantly more firepower to bear under armored protection.\n\nMounting this module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!." - basic_light_shell:0 "Small-Caliber Semi-Armor Piercing Shell" - basic_light_shell_desc:0 "A compromise between armor-piercing performance and explosive power, this shell does significantly more damage after punching through the weak armor of light ships." - improved_light_shell:0 "Small-Caliber Armor Piercing Shell" - improved_light_shell_desc:0 "A proper armor-piercing shell for small caliber guns gives destroyers and other light ships a fighting chance against armored opponents." - basic_medium_battery:0 "Basic Medium Battery" - basic_medium_battery_desc:1 "A powered turret with two or three guns of medium caliber for use on cruisers. \n\nMounting a §YLight Medium Battery§! module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!. Mounting a §YMedium Battery§! module increases §YHeavy Gun Attack§!, which helps with engaging enemy §YCapital Ships§!." - improved_medium_battery:0 "Improved Medium Battery" - improved_medium_battery_desc:1 "An improved turret layout allows faster loading while better armor improves survivability. \n\nMounting a §YLight Medium Battery§! module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!. Mounting a §YMedium Battery§! module increases §YHeavy Gun Attack§!, which helps with engaging enemy §YCapital Ships§!." - advanced_medium_battery:0 "Advanced Medium Battery" - advanced_medium_battery_desc:1 "By integrating power loading and remote power control, modern cruisers can reach rates of fire and accuracy that was hitherto considered impossible.\n\nMounting a §YLight Medium Battery§! module increases §YLight Gun Attack§!, which helps in engaging enemy §YScreening Ships§!. Mounting a §YMedium Battery§! module increases §YHeavy Gun Attack§!, which helps with engaging enemy §YCapital Ships§!." - basic_medium_shell:0 "Armor-Piercing Capped Medium Shell" - basic_medium_shell_desc:0 "By fitting a ballistic hood, shells can be made more aerodynamic while still maintaining their armor-piercing performance." - improved_medium_shell:0 "Medium-Caliber Semi-Armor Piercing Shell" - improved_medium_shell_desc:0 "A compromise between armor-piercing performance and explosive power, this shell does significantly more damage after punching through the weak armor of light ships." - basic_heavy_battery:0 "Basic Heavy Battery" - basic_heavy_battery_desc:1 "A gigantic turret housing massive guns under heavy armor. \n\nMounting a §YHeavy Battery§! module increases a ship's §YHeavy Gun Attack§!, improving performance against enemy §YCapital Ships§!." - improved_heavy_battery:0 "Improved Heavy Battery" - improved_heavy_battery_desc:1 "Power Rammers increase the loading speed of heavy guns while automatic flash-tight doors improve safety. \n\nMounting a §YHeavy Battery§! module increases a ship's §YHeavy Gun Attack§!, improving performance against enemy §YCapital Ships§!." - advanced_heavy_battery:0 "Advanced Heavy Battery" - advanced_heavy_battery_desc:1 "Improved Recoil Reduction Mechanisms and delay coils reduce interference of shells in flight and dramatically increase accuracy. \n\nMounting a §YHeavy Battery§! module increases a ship's §YHeavy Gun Attack§!, improving performance against enemy §YCapital Ships§!." - basic_heavy_shell:0 "Armor-Piercing Capped Shell" - basic_heavy_shell_desc:0 "By fitting a ballistic hood, shells can be made more aerodynamic while still maintaining their armor-piercing performance." - improved_heavy_shell:1 "Super-Heavy Armor Piercing Shell" - improved_heavy_shell_desc:0 "Weighing well over a ton, these massive shells strike with unprecedented power and pose a dire threat to even the heaviest armor." - secondary_battery_advice_tt:0 "\nA §YSecondary Battery§! allows §YCruisers§! and §YHeavy Ships§! to engage enemy §YScreening Ships§! as secondary targets while dealing damage to another target." - basic_secondary_battery:0 "Casemate Secondary Battery" - basic_secondary_battery_desc:1 "Placed in openings along the hull, these smaller guns give the ship some defense against smaller ships, but have a limited field of fire.\n\nMounting a §YSecondary Battery§! Module gives a §YCruiser§!, §YCarrier§!, or §YHeavy Ship§! a small amount of §YLight Gun Attack§! and allows it to engage a second target." - improved_secondary_battery:0 "Turreted Secondary Battery" - improved_secondary_battery_desc:1 "By placing the secondary guns in powered turrets, they gain a much wider field of fire at the expense of heavier weight and reduced stability in heavy seas.\n\nMounting a §YSecondary Battery§! Module gives a §YCruiser§!, §YCarrier§!, or §YHeavy Ship§! a small amount of §YLight Gun Attack§! and allows it to engage a second target." - damage_control_1:0 "Fire Fighting Drills" - damage_control_1_desc:0 "Every member of a ship's crew, from the Captain down to the simple sailor, must be able to help in containing and fighting fires onboard the ship." - damage_control_2:0 "Separate Fire Mains" - damage_control_2_desc:0 "By separating the main water lines around the ship, the probability of a hit rendering the ship completely unable to fight fires is much reduced." - damage_control_3:0 "Diesel-powered Emergency Pumps" - damage_control_3_desc:0 "With heavy pumps usually dependent on the main engines for power, a single and fairly light hit in the engine room may render the ship unable to stay afloat." - fire_control_methods_1:0 "Bracket Shooting" - fire_control_methods_1_desc:0 "To hit the target, the first step is to straddle it by firing a few guns at a time until the impacts hit on both sides of the target." - fire_control_methods_2:0 "Ladder Shooting" - fire_control_methods_2_desc:0 "Instead of firing over the target and losing track of the impacts behind the enemy ship, shots are deliberately dropped short of the target and the distance between impact and target measured to determine the range." - fire_control_methods_3:0 "Shell Dyes" - fire_control_methods_3_desc:0 "Adding small color packages to the shells when they are fired colors the impacts around the target and allows multiple ships to engage the same target without being confused by each other's impacts." - fuel_silos:0 "Granaries" - fuel_silos_desc:0 "Mass Storage of food requires a sturdy structure and stable temperatures." - fuel_refining:0 "Fuel Refining I" - fuel_refining_desc:0 "Advancements in chemical cracking allow for better yields of food." - fuel_refining2:0 "Fuel Refining II" - fuel_refining2_desc:0 "Better planning of refinery layouts reduce wastage of foods." - fuel_refining3:0 "Fuel Refining III" - fuel_refining3_desc:0 "Improved reclamation methods allow refining food from by-products." - fuel_refining4:0 "Fuel Refining IV" - fuel_refining4_desc:0 "New developments in chemical engineering allow the crafting of food from new sources." - fuel_refining5:0 "Fuel Refining V" - fuel_refining5_desc:0 "Using new methods and improved layouts in the construction of refineries dramatically increases throughput while reducing wastage." - scout_plane1:0 "Crebain" - scout_plane1_desc:0 "Gathering intelligence on enemy troop movements and providing reports of enemy naval deployments has been the original mission for airplanes since their first deployment in the Great War, and is still an important mission." - scout_plane2:0 "Giant Bats" - scout_plane2_desc:0 "By developing dedicated planes to aerial surveillance and long-range reconnaissance, we ensure that we gain and maintain an accurate picture of our opponent's intentions and capabilities." - SURRENDER_REDUCTION_TOOLTIP:0 "Collaboration in $COUNTRY|H$ will reduce their surrender level by $VALUE|+%.0$" - COLLABORATION_EFFECTS_TOOLTIP:0 "You have $COLLABORATION|+%.0$ collaboration in $COUNTRY|H$. This will reduce their surrender level by $SURRENDER|+%.0$ and will give $COMPLIANCE|+%.0$ compliance when the enemy capitulates which will be used for unlocking additional compliance modifiers." - COLLABORATION_EFFECTS_OTHER_SIDE_TOOLTIP:0 "$OTHER_COUNTRY|H$ have $COLLABORATION|+%.0$ collaboration in $COUNTRY|H$. This will reduce $COUNTRY|H$'s surrender level by $SURRENDER|+%.0$ and will give $COMPLIANCE|+%.0$ compliance when the enemy capitulates which will be used for unlocking additional compliance modifiers." - train_tech:0 "Trains and Railways" - SUPPORT_TITLE_TRAINS:0 "Trains" - cat_production:0 "Production" - cat_synth_rubber:0 "Leather" - cat_synth_oil:0 "Food" - masterful_blitz:0 "Masterful Blitz" - masterful_blitz_desc:0 "We may not have invented the Blitzkrieg, but we will develop and refine this strategy so that even the most fortified enemy defense lines will not be able to stop the advance of our glorious army." - penal_infantry:0 "Penal Battalions" - penal_infantry_desc:0 "Penal battalions provide an opportunity for convicted soldiers and officers of the Red Army to bleed for the motherland and redeem themselves for the shameful or dishonorable actions committed in the past." - camicie_nere_security_militias:0 "$ITA_camicie_nere$" - blackshirt_assault_battalion_tech:0 "$blackshirt_assault_battalion$" - mountain_warfare_militias_tech:0 "$ITA_grande_rivolta_rurale$" - #Non-MTG naval techs that require loc (they may be granted via effects) - basic_heavy_cruiser:0 "Basic Heavy Cruiser (Heavy Cruiser II)" - basic_ship_hull_carrier:0 "1936 Carrier Hull" - early_carrier:0 "Early Carrier (Carrier I)" - basic_carrier:0 "Basic Carrier (Carrier II)" - improved_destroyer:0 "Improved Destroyer (Destroyer III)" - basic_dp_light_battery:0 "Basic Dual-Purpose Battery" - basic_dp_light_battery_desc:0 "Combining anti-ship and anti-air guns in a single mount allows for more flexibility and saves weight.\n\nMounting this module increases §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§!, which helps in engaging enemy §YScreening Ships§!. These modules also increase §Y$EQUIPMENT_DESIGNER_ANTI_AIR_ATTACK_ICON_TOOLTIP$§!.\nMounting a §YSecondary Battery§! Module gives a §Y$ship_hull_cruiser$§!, §Y$ship_hull_carrier$§!, or §Y$ship_hull_heavy$§! a small amount of §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§! and allows it to engage a second target." - improved_dp_light_battery:0 "Improved Dual-Purpose Battery" - improved_dp_light_battery_desc:0 "Powered fully enclosed Twin gun mounts greatly increase firepower and protection while saving weight.\n\nMounting this module increases §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§!, which helps in engaging enemy §YScreening Ships§!. These modules also increase §Y$EQUIPMENT_DESIGNER_ANTI_AIR_ATTACK_ICON_TOOLTIP$§!. \nMounting a §YSecondary Battery§! Module gives a §Y$ship_hull_cruiser$§!, §Y$ship_hull_carrier$§!, or §Y$ship_hull_heavy$§! a small amount of §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§! and allows it to engage a second target." - advanced_dp_light_battery:0 "Advanced Dual-Purpose Battery" - advanced_dp_light_battery_desc:0 "Automated Rapid fire enclosed gun mounts greatly increase firepower.\n\nMounting this module increases §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§!, which helps in engaging enemy §YScreening Ships§!. These modules also increase §Y$EQUIPMENT_DESIGNER_ANTI_AIR_ATTACK_ICON_TOOLTIP$§!. \nMounting a §YSecondary Battery§! Module gives a §Y$ship_hull_cruiser$§!, §Y$ship_hull_carrier$§!, or §Y$ship_hull_heavy$§! a small amount of §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§! and allows it to engage a second target." - basic_dp_medium_battery:0 "Advanced Medium Dual-Purpose Battery" - basic_dp_medium_battery_desc:0 "Automatic loading Rapid fire Medium enclosed gun Batteries greatly increase firepower.\n\nMounting a §YLight Medium Battery§! module increases §Y$EQUIPMENT_DESIGNER_LG_ATTACK_ICON_TOOLTIP$§!, which helps in engaging enemy §YScreening Ships§!. This module also increase §Y$EQUIPMENT_DESIGNER_ANTI_AIR_ATTACK_ICON_TOOLTIP$§!." - armored_train:0 "$train_equipment_3$" - railway_gun:0 "$railway_gun_equipment_1$" - basic_train:0 "$train_equipment_1$" - special_forces_doctrine: "Special Forces Doctrine" - special_forces_doctrine_folder: "Special Forces Doctrine" - special_forces_doctrine_folder_desc: "How our special forces are trained." - MOUNTAINEERS_DOCTRINE_LABEL: "Mountaineers" - MARINES_DOCTRINE_LABEL: "Marines" - PARATROOPERS_DOCTRINE_LABEL: "Paratroopers" - MOUNTAINEERS_DOCTRINE_DESC: "A strong military focus on regiments accustomed to adverse terrain will give us the edge in outmaneuvering and denying our opponents." - MARINES_DOCTRINE_DESC: "An elevated Marine Corps ensures that no enemy coastline will be safe. Our elite Marines excel at operating under fire in the most hostile situations." - PARATROOPERS_DOCTRINE_DESC: "Airborne assault is the future of warfare. Elevating the paratroopers brings us the perfect synergy between air power and ground assault." - special_forces_mountaineers: "Elevate the Mountaineers" - special_forces_mountaineers_desc: "Inhospitable environments and bitter conflicts attract the toughest soldiers to our elite forces. Enshrining their primacy in our doctrinal philosophy ensures we will continue to benefit from the recruitment of the very best." - special_forces_paratroopers: "Elevate the Paratroopers" - special_forces_paratroopers_desc: "There's nothing quite as terrifying as the skies going dark with the sight of a thousand troop-filled transport planes. Our doctrinal philosophy must take advantage of the shock and awe that the airborne instills." - special_forces_marines: "Elevate the Marine Corps" - special_forces_marines_desc: "The Marine Corps serves where no other dare go. From home shore to foreign clime, these experts excel at infiltration and amphibious combat. A wide reach and flexible philosophy should be made core to our military doctrine." - ski_troops: "Cold Weather Specialists" - ski_troops_desc: "Cold weather specialists are vital to our battlefield tactics. By formally recognizing these experts in our military constitution, we can free up resources and training to elevate them even further." - special_forces_recon: "Battlefield Intelligence" - special_forces_recon_desc: "Our elite regiments benefit from counter-intelligence and battlefield awareness second to none. Additional training is sure to benefit us further." - gwtank:0 "Great War Tank" - basic_light_tank:0 "L. Tank I" - armored_car1:0 "$gw_armored_car_equipment$" - armored_car2:0 "$armored_car_equipment_1$" - armored_car3:0 "$armored_car_equipment_2$" - mountaineers_combat_1: "Holding the Line" - mountaineers_combat_1_desc: "Our elite forces must focus their efforts on holding the areas in which they specialize. A combination of ambush tactics and improved regimental organization ensure that our special forces present a significant defense-in-depth against invading forces." - mountaineers_combat_2: "Mountain Artillery" - mountaineers_combat_2_desc: "Mountain Artillery regiments are specialized forces designed for the rapid long range support of our elite divisions, having trained and operated in difficult terrain. Their presence significantly enhances the combat capabilities of our special forces." - mountaineers_combat_3: "Combined Arms Training" - mountaineers_combat_3_desc: "Though our elite regiments operate on a highly independent basis, augmenting their training regimen with a focus on combined arms operations increases their utility on the field." - mountaineers_keystone_1: "Backbone of the Armed Forces" - mountaineers_keystone_1_desc: "The success of our elite special forces mandates a reorganization of our military philosophy around their presence." - mountaineers_keystone_2: "Shared Instructors" - mountaineers_keystone_2_desc: "With the knowledge our mountain forces have acquired, it would be foolish not to put this to good use within the other branches of our special forces. We shall institute a programme of instructor rotation in the hope of improving our overall institutional knowledge." - paras_dispersed_drop: "Reconnaissance and Sabotage" - paras_dispersed_drop_desc: "The nature of our operations mandates that our airborne troops specialize in highly dispersed airdrops, allowing for significant sabotage to take place before the enemy are even aware of our presence." - paras_combat_drop: "Combat Insertion" - paras_combat_drop_desc: "While dangerous, training our elite forces in direct forced entry techniques can give us significant combat advantages in combination with conventional assault." - SF_PARAS_combat_effect_tt: "Enemy divisions in states we §HParadrop§! into will have their current §HOrganization§! reduced.\n\n$PARA_EFFECT_TIMER$" - SF_PARAS_sabotage_effect_tt: "Enemy controlled states we §HParadrop§! into will receive damage to §HMilitary Factories§!, §HCivilian Factories§!, and §HInfrastructure§!.\n\n$PARA_EFFECT_TIMER$" - PARA_EFFECT_TIMER: "This effect can occur once per state every §H30§! days." - paras_airborne_light_armor: "Airborne Armor" - paras_airborne_light_armor_desc: "Certain light tanks can be adapted for airborne drop via heavy glider. This novel method of combat insertion may be niche, but provides us with new opportunities." - paras_bonus_2: "Strategic Air Lift Corps" - paras_bonus_2_desc: "Instituting the creation of a dedicated air lift administration means we can better outfit our cargo planes for the specific purpose of airborne insertion." - paras_combat_1: "Airborne Signals" - paras_combat_1_desc: "Nothing can compare to a perfect line of communication with our troops behind the lines. Training signal companies for airborne insertion will keep these critical communications going, even in the worst conditions." - paras_combat_2: "Airborne Medical Detail" - paras_combat_2_desc: "The scale of our airborne operations has increased to such a degree that even essential medical equipment must be prepared for airborne insertion." - paras_bonus_1: "Enhanced Navigational Training" - paras_bonus_1_desc: "Even the best drop can go awry. We must ensure that our troops are trained well in improvised navigation." - paras_keystone_1: "Best of the Best" - paras_keystone_1_desc: "Only the most battle-hardened veterans should be considered for our airborne battalions. While this may reduce our field of recruits, it is bound to pay dividends on the battlefield." - paras_keystone_2: "Backbone of the Armed Forces" - paras_keystone_2_desc: "Our armed forces will henceforth be built upon the skill and training of our airborne troops. The skies will darken at their coming, and our enemy shall know fear." - RESEARCH_SPEED: "Research speed:" - LIMITED_RESEARCH_BONUS: "Limited bonuses:" - cat_scout_plane: "Scout Plane models" - cat_maritime_patrol: "Maritime Patrol Plane models" - - mio_cat_tech_light_armor_and_modules: "Light Armor Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_medium_armor_and_modules: "Medium Armor Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_heavy_armor_and_modules: "Heavy Armor Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_artillery_equipment: "All Artillery technologies" - mio_cat_all_light_fighter_and_modules: "All Fighter Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_cas_and_modules: "All CAS Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_naval_bomber_and_modules: "All Naval Bomber Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_light_aircraft_and_modules: "All Light Aircraft Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_medium_aircraft_and_modules: "All Medium Aircraft Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_all_heavy_aircraft_and_modules: "All Heavy Aircraft Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_capital_ship_and_modules: "All Capital Ship Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_screen_ship_and_modules: "All Screen Ship Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_submarine_and_modules: "All Submarine Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_carrier_and_modules: "All Carrier Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_cruiser_and_modules: "All Cruiser Technologies" #Cannot talk about modules because of DLC lock tack - mio_cat_tech_all_destroyer_and_modules: "All Destroyer Technologies" #Cannot talk about modules because of DLC lock tack \ No newline at end of file diff --git a/localisation/english/rivendell/rivendell_events_l_english.yml b/localisation/english/rivendell/rivendell_events_l_english.yml new file mode 100644 index 000000000..9ec9c5ffe --- /dev/null +++ b/localisation/english/rivendell/rivendell_events_l_english.yml @@ -0,0 +1,116 @@ +l_english: + +rivendell.2.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." +rivendell.2.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." +rivendell.2.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." + +rivendell.3.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." +rivendell.3.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." +rivendell.3.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." + +rivendell.4.a.tt:0 "Will greatly decrease the likelihood of nations successfully intercepting the ring on its way to Mordor and provide an option to try to take the ring ourselves." +rivendell.4.b.tt:0 "Will moderately decrease the likelihood of nations successfully intercepting the ring on its way to Mordor." +rivendell.4.c.tt:0 "The likelihood of nations successfully intercepting the ring on its way to Mordor will remain unchanged." + +rivendell.5.t:0 "Elven Anti-War Treaty" +rivendell.5.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" +rivendell.5.a:0 "Accept." +rivendell.5.b:0 "Decline." + +rivendell.6.t:0 "Elven Anti-War Treaty" +rivendell.6.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" +rivendell.6.a:0 "Accept." +rivendell.6.b:0 "Decline." + +rivendell.7.t:0 "Elven Anti-War Treaty" +rivendell.7.d:0 "Rivendell wishes us to sign an anti-war treaty between all elven Nations. Shall we accept?" +rivendell.7.a:0 "Accept." +rivendell.7.b:0 "Decline." + +rivendell.8.t:0 "Rivendell asks for Cooperation" +rivendell.8.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" +rivendell.8.a:0 "Accept." +rivendell.8.b:0 "Decline." + +rivendell.9.t:0 "Rivendell asks for Cooperation" +rivendell.9.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" +rivendell.9.a:0 "Accept." +rivendell.9.b:0 "Decline." + +rivendell.10.t:0 "Rivendell asks for Cooperation" +rivendell.10.d:0 "Rivendell wishes us to sign an anti-war treaty. Shall we accept?" +rivendell.10.a:0 "Accept." +rivendell.10.b:0 "Decline." + +rivendell.11.t:0 "Rivendell forms an anti-collectivist Alliance" +rivendell.11.d:0 "Rivendell wishes us to join their new union. Shall we accept?" +rivendell.11.a:0 "Accept." +rivendell.11.b:0 "Decline." + +rivendell.12.t:0 "Rivendell wishes to join our cause" +rivendell.12.d:0 "Rivendell wants to join our Faction. Shall we accept?" +rivendell.12.a:0 "Accept." +rivendell.12.b:0 "Decline." + +rivendell.13.t:0 "Rivendell wants us to join their alliance" +rivendell.13.d:0 "Rivendell wants to join the Elven Defence Alliance. Shall we accept?" +rivendell.13.a:0 "Accept." +rivendell.13.b:0 "Decline." + +rivendell.14.t:0 "The One Ring has been brought to Rivendell" +rivendell.14.d:0 "A Hobbit named Frodo carrying Sauron's evil Ring has safely arrived in Rivendell." +rivendell.14.a:0 "We will inform Lord Elrond at once." + +rivendell.15.t:0 "Sauron's Ringwraiths sighted near Bree" +rivendell.15.d:0 "Our scouts confirm to have sighted a pack of Sauron's Nazgul near the city of Bree, to the west. It appears they are after some Shire Hobbits, which were instructed by Gandalf to bring Sauron's One Ring to safety." +rivendell.15.a:0 "Their safety is imperative. Send Arwen to ensure their safety." +rivendell.15.a.tt:0 "Send §YArwen§! to locate and protect these Hobbits." +rivendell.15.b:0 "Ringwraiths? The scouts must have been hallucinating!" + +rivendell.16.t:0 "Rivendell offers us a deal" +rivendell.16.d:0 "The elves of Rivendell offer to lend us three of their civilian factories for 60 days. In return they want guarantees that we will not attack the fellowship of the Ring under any circumstances." +rivendell.16.a:0 "A good deal. Attacking the fellowship is not in our interest." +rivendell.16.b:0 "It is none of of their business who we quarrel with!" + +rivendell.17.t:0 "[FROM.GetName] accepts the deal" +rivendell.17.d:0 "[FROM.GetName] has accepted to not harm the fellowship on their way to Mordor. In return we owe them three of our civilian factories for 60 days." +rivendell.17.a:0 "Hopefully it will be worth the price." + +rivendell.18.t:0 "[FROM.GetName] declines the deal" +rivendell.18.d:0 "[From.GetName] reserves the right to attack the fellowship and seize the One Ring, should it enter their territory." +rivendell.18.a:0 "Let us hope for the best." + +rivendell.19.t:0 "Vote on the fellowship's path" +rivendell.19.desc:0 "The Council of Elrond has decided to assemble a fellowship with the mission to take the One Ring to Mordor and destroy it. However, a major goegraphic obstacle stands in the way: the Misty Mountains.\n\nAs an esteemed member of the council, we may submit a vote on which path the fellowship should take." +rivendell.19.a:0 "They should cross the Mountains through the Redhorn Pass." +rivendell.19.b:0 "They should bypass the Mountains to the south, past Isengard." +rivendell.19.c:0 "They should go north, past Gundabad and sail down the Anduin." +rivendell.19.d:0 "Submit a blank vote." + +rivendell.1.t:0 "Lord Elrond holds a secret council" +rivendell.1.d:0 "Several highly regarded personalities have arrived from all over Middel Earth. Elrond has requested a Council be held to discuss several highly confidential matters." +rivendell.1.a:0 "We will see it done." + +rivendell.2.t:0 "Rivendell asks for assistance" +rivendell.2.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" +rivendell.2.a:0 "Send our finest warrior. Legolas." +rivendell.2.b:0 "Send the commander of the royal guard, Tauriel." +rivendell.2.c:0 "Send no one." + +rivendell.20.t:0 "Rivendell asks for assistance" +rivendell.20.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" +rivendell.20.a:0 "Send our valiant Marchwarden, Haldir." +rivendell.20.b:0 "Send our skilled archer, Orophin." +rivendell.20.c:0 "Send no one." + +rivendell.3.t:0 "Rivendell asks for assistance" +rivendell.3.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" +rivendell.3.a:0 "Send our finest warrior. Gimli." +rivendell.3.b:0 "We can only spare that fool, Bombur." +rivendell.3.c:0 "We can spare noone." + +rivendell.4.t:0 "Rivendell asks for assistance" +rivendell.4.d:0 "Lord Elrond wants to form a deadly team of capable warriors for a dangerous quest to destroy Saurons One Ring once and for all. Who of our valiant warriors shall join this fellowship?" +rivendell.4.a:0 "Send our finest warrior. Boromir." +rivendell.4.b:0 "We shall send Faramir as a gesture of kindness." +rivendell.4.c:0 "Send no one." \ No newline at end of file diff --git a/localisation/english/rivendell/rivendell_l_english.yml b/localisation/english/rivendell/rivendell_focus_l_english.yml similarity index 100% rename from localisation/english/rivendell/rivendell_l_english.yml rename to localisation/english/rivendell/rivendell_focus_l_english.yml diff --git a/localisation/english/rohan/rohan_events_l_english.yml b/localisation/english/rohan/rohan_events_l_english.yml new file mode 100644 index 000000000..41e4b4365 --- /dev/null +++ b/localisation/english/rohan/rohan_events_l_english.yml @@ -0,0 +1,34 @@ +l_english: +rohan.1.t:0 "Theoden names Grima Wormtongue his chief advisor" +rohan.1.d:0 "Our beloved King has requested Grima Wormtongue to be his personal advisor. Grima's pro-Isengard rethoric has raised doubts even amongst the King's closest confidents. Even Eomer, heir to the throne, has spoken out against this decision, yet the King insists." +rohan.1.a:0 "If the King wishes it, it shall be done." + +rohan.2.t:0 "The King is suffering under a powerful illness" +rohan.2.d:0 "King Theoden's health has been declining steadily for the last weeks. All government programmes have come to a halt and Prince Eomer's request to rule in his stead has been dismissed by Grima Wormtongue, the King's primary advisor. Conspiracy theorists have put the blame on Saruman, but no evidence has been found to support these wild claims." +rohan.2.a:0 "May he recover soon." + +rohan.3.t:0 "Eomer goes into exile" +rohan.3.d:0 "After several clashes with the King's primary advisor, Prince Theoden has gathered a host of Rohirim Riders and left the capital of Edoras. His intentions are currently unknown." +rohan.3.a:0 "A great loss for the realm." + +rohan.4.t:0 "Prince Théodred is dead. Saruman takes the Fords." +rohan.4.d:0 "A horde of Orcs overran the Fords of Isen burning everything they came across and killing the valiant defender of Rohan, our Prince Théodred. Marshal Grimbold defended him and recovered his body single handedly." +rohan.4.a:0 "May he rest in peace." + +rohan.5.t:0 "Saruman demands the Westmarch" +rohan.5.d:0 "The troublemaker Saruman has demanded we cede control over the westmarch. He claims we are planning to attack Orthanc from there and that our control over it is a threat to the 'peaceful relations' between Isengard and Rohan.\nWe may buy some time by surrendering it or risk an all out war with Isengard." +rohan.5.a:0 "He may have it." +rohan.5.b:0 "Over our dead bodies!" + +rohan.6.t:0 "Gandalf the Grey arrives in Edoras" +rohan.6.d:0 "'He is a herald of woe. Late is the hour in which this conjurer chooses to appear. Lathspell I name him. Ill news is in ill guest.' Gandalf the Grey has arrived in Edoras and has requested a meeting with the King. The King is ill and weak, but perhaps the wizard can help him recover?" +rohan.6.a:0 "He may enter." +rohan.6.b:0 "He is not welcome here." + +rohan.7.t:0 "Lady Eowyn is to marry Grima Wormtongue" +rohan.7.d:0 "By the King's royal decree, his niece Eowyn is to marry the King's primary advisor Grima Wormtongue. The King commands that all necessary arrangements be made within the next week. Eowyn, rather hesitantly, has agreed to said proposal." +rohan.7.a:0 "So be it." + +rohan.8.t:0 "Aid arrives from Gondor" +rohan.8.d:0 "In a gesture of solidarity, Gondor has sent valuable equipment and aid to aid Rohan in its fight against Isengard. The assistance, ranging from weaponry to essential supplies." +rohan.8.a:0 "Much appreciated." \ No newline at end of file diff --git a/localisation/english/shire/shire_events_l_english.yml b/localisation/english/shire/shire_events_l_english.yml new file mode 100644 index 000000000..20045bb5a --- /dev/null +++ b/localisation/english/shire/shire_events_l_english.yml @@ -0,0 +1,19 @@ +l_english: +shire.2.t:0 "The Shire proposes a mutual protection pact" +shire.2.d:0 "Due to our excellent relations with the Shire, the Hobbits have proposed to sign a mutual protection pact to fend of the threat of Mordor." +shire.2.a:0 "Absolutely. The Hobbits of the Shire are such fearsome warriors." +shire.2.b:0 "The Shire! How many divisions have they got?" + +shire.3.t:0 "The Shire demands Independence" +shire.3.d:0 "The Hobbits of the Shire claim our provided protection has become redundant. They wish to regain total control over their domain." +shire.3.a:0 "The Hobbits deserve their freedom." +shire.3.b:0 "Certainly not." + +shire.4.t:0 "The Shire asks for help" +shire.4.d:0 "The Hobbits require assistance in their struggle for freedom against Arthedain." +shire.4.a:0 "We shall come to their aid!" +shire.4.b:0 "The Hobbits have sealed their own fate." + +shire.1.t:0 "Bilbo Baggins 111st Birthday celebrations" +shire.1.d:0 "Our beloved Bilbo has turned 111 years old today. The town of Hobbitton will celebrate this rare occasion with a night of wonderful festivities! Half the Shire has been invited!" +shire.1.a:0 "Fantastic!" \ No newline at end of file diff --git a/localisation/english/shire/shireadd_l_english.yml b/localisation/english/shire/shire_focus_l_english.yml similarity index 98% rename from localisation/english/shire/shireadd_l_english.yml rename to localisation/english/shire/shire_focus_l_english.yml index ebf16da93..ca6941700 100644 --- a/localisation/english/shire/shireadd_l_english.yml +++ b/localisation/english/shire/shire_focus_l_english.yml @@ -197,4 +197,8 @@ SHI_pacifist_country_1:0 "Pacifist country" SHI_pacifist_country_2:0 "Pacifist country" SHI_war_hungry_0:0 "War hungry" SHI_war_hungry_1:0 "War hungry" -SHI_war_hungry_2:0 "War hungry" \ No newline at end of file +SHI_war_hungry_2:0 "War hungry" + +SHI_display_of_strength:0 "Display of Strength" +SHI_question_arthedain_strength:0 "Question Arthedains Strength" +SHI_abandon_arthedain:0 "Abandon Arthedain" \ No newline at end of file diff --git a/localisation/english/tank_modules_l_english.yml b/localisation/english/tank_modules_l_english.yml deleted file mode 100644 index 01b6ead7b..000000000 --- a/localisation/english/tank_modules_l_english.yml +++ /dev/null @@ -1,428 +0,0 @@ -l_english: - - ### EQUIPMENT MODULE ROLE PERMISSIONS ### - MODULE_ALLOW_ROLE:1 "§GAllows§! the $ROLE|H$ role" - MODULE_ALLOW_ROLE_BUT_OTHER_FORBID:0 "§GAllows§! the $ROLE|H$ role, but $FORBIDDING_MODULE|H$ §Rforbids§! it" - MODULE_FORBID_ROLE:1 "§RForbids§! the $ROLE|H$ role" - - MODULE_ALLOWED_ROLE_IS_FORBIDDEN_BY_ANOTHER_MODULE:0 "The role $ROLE|H$ is £trigger_yes£ by module $ALLOWING_MODULE|H$ but is £trigger_no£ by module $FORBIDDING_MODULE|H$.\n\n" - - ### EQUIPMENT MODULE CATEGORIES ### - EQ_MOD_CAT_tank_engine_type_TITLE:0 "Engine Type" - EQ_MOD_CAT_tank_armor_type_TITLE:0 "Armor Type" - EQ_MOD_CAT_tank_suspension_type_TITLE:1 "Tracked Suspension" - EQ_MOD_CAT_tank_light_turret_type_TITLE:0 "Light Turret Type" - EQ_MOD_CAT_tank_medium_turret_type_TITLE:0 "Medium Turret Type" - EQ_MOD_CAT_tank_heavy_turret_type_TITLE:0 "Heavy Turret Type" - EQ_MOD_CAT_tank_super_heavy_turret_type_TITLE:0 "Super-Heavy Turret Type" - EQ_MOD_CAT_tank_modern_turret_type_TITLE:0 "Modern Turret Type" - EQ_MOD_CAT_tank_small_main_armament_TITLE:0 "Small Armaments" - EQ_MOD_CAT_tank_medium_main_armament_TITLE:0 "Medium Armaments" - EQ_MOD_CAT_tank_heavy_main_armament_TITLE:0 "Heavy Armaments" - EQ_MOD_CAT_tank_flamethrower_TITLE:0 "Flamethrowers" - EQ_MOD_CAT_tank_super_heavy_main_armament_TITLE:0 "Super-Heavy Armaments" - EQ_MOD_CAT_tank_special_module_TITLE:0 "Special Modules" - EQ_MOD_CAT_tank_radio_module_TITLE:0 "Radio" - EQ_MOD_CAT_tank_secondary_turret_TITLE:0 "Secondary Turret" - EQ_MOD_CAT_tank_non_tracked_suspension_type_TITLE:0 "Non-tracked Suspension" - - ### EQUIPMENT MODULE SLOTS ### - EQ_MOD_SLOT_main_armament_slot_TITLE:0 "Main Armament" - EQ_MOD_SLOT_turret_type_slot_TITLE:0 "Turret" - EQ_MOD_SLOT_suspension_type_slot_TITLE:0 "Suspension" - EQ_MOD_SLOT_armor_type_slot_TITLE:0 "Armor Type" - EQ_MOD_SLOT_engine_type_slot_TITLE:0 "Engine Type" - EQ_MOD_SLOT_special_type_slot_1_TITLE:0 "Special Features" - EQ_MOD_SLOT_special_type_slot_2_TITLE:0 "Special Features" - EQ_MOD_SLOT_special_type_slot_3_TITLE:0 "Special Features" - EQ_MOD_SLOT_special_type_slot_4_TITLE:0 "Special Features" - - ### EQUIPMENT MODULES ### - - tank_gasoline_engine:0 "Gasoline Engine" - tank_gasoline_engine_desc:0 "An Engine running on gasoline will be faster for a given Engine Size, but the fuel will be much more prone to catching fire." - tank_diesel_engine:0 "Diesel Engine" - tank_diesel_engine_desc:0 "An Engine running on Diesel fuel is more reliable than a gasoline engine, but not as fast for the same Engine Size." - tank_petrol_electric_engine:0 "Petrol-Electric Engine" - tank_petrol_electric_engine_desc:0 "A combination of a petrol-driven engine providing power to an electric motor. Complex, expensive and unreliable, it does however offer unmatched performance in tactical movements." - tank_gas_turbine_engine:0 "Gas Turbine" - tank_gas_turbine_engine_desc:0 "An turbine developed from jet engines. High fuel consumption, but the highest speed of any engine at a given Engine Size." - tank_riveted_armor:0 "Riveted Armor" - tank_riveted_armor_desc:0 "Armor Plates bolted to the frame and held together by rivets driven into the edges. A very proven technology that is fairly cheap, but the rivetted edges provide weakpoints in the armor and might hurt the crew if the rivets are hit." - tank_cast_armor:0 "Cast Armor" - tank_cast_armor_desc:0 "The entire Chassis, including armor, is cast as a single unit. An expensive and time-consuming process that allows for much thicker armor with fewer weakpoints." - tank_welded_armor:0 "Welded Armor" - tank_welded_armor_desc:0 "Armor plates are welded to the chassis. A faster process than casting, while still providing good protection." - tank_torsion_bar_suspension:0 "Torsion Bar" - tank_torsion_bar_suspension_desc:0 "A fairly reliable suspension system of metal bars fixed to the vehicle chassis that provides a smoother ride than other suspension types." - tank_christie_suspension:0 "Christie Suspension" - tank_christie_suspension_desc:0 "Developed by an American inventor, this supension allows for exceptionally high speeds." - tank_bogie_suspension:0 "Bogie Suspension" - tank_bogie_suspension_desc:0 "A simple and fairly cheap type of suspension in which the roadwheels are mounted individually, allowing them to be easily replaced if damaged." - tank_interleaved_suspension:0 "Interleaved Roadwheels" - tank_interleaved_suspension_desc:0 "By overlapping the roadwheels, more of them can be fit in the same length of the hull, thereby improving mobility as well as providing some additional protection in the flanks." - tank_light_one_man_tank_turret:0 "One Man Turret" - tank_light_one_man_tank_turret_desc:0 "A small turret barely large enough to hold a single crew member, who is tasked with aiming and loading the main armament as well as keeping watch for targets and threats." - tank_light_two_man_tank_turret:0 "Two Man Turret" - tank_light_two_man_tank_turret_desc:0 "A turret that allows for two crew members to share the work of operating the armament and observing the situation. It still does not allow for an effective division of labor amongst the crew." - tank_light_three_man_tank_turret:0 "Three Man Turret" - tank_light_three_man_tank_turret_desc:0 "A turret big enough for the three crew members to divide the tasks of loading and aiming the main armament as well as staying aware of the situation around them." - tank_light_fixed_superstructure_turret:1 "Light Fixed Superstructure" - tank_light_fixed_superstructure_turret_desc:0 "A fixed superstructure only allows the main armament to traverse in a small arc without turning the entire vehicle. However, it allows the vehicle to mount a bigger armament while being overall of smaller size, making the vehicle perfect for ambushes." - tank_medium_one_man_tank_turret:0 "One Man Turret" - tank_medium_one_man_tank_turret_desc:0 "A small turret barely large enough to hold a single crew member, who is tasked with aiming and loading the main armament as well as keeping watch for targets and threats." - tank_medium_two_man_tank_turret:0 "Two Man Turret" - tank_medium_two_man_tank_turret_desc:0 "A turret that allows for two crew members to share the work of operating the armament and observing the situation. It still does not allow for an effective division of labor amongst the crew." - tank_medium_three_man_tank_turret:0 "Three Man Turret" - tank_medium_three_man_tank_turret_desc:0 "A turret big enough for the three crew members to divide the tasks of loading and aiming the main armament as well as staying aware of the situation around them." - tank_medium_fixed_superstructure_turret:1 "Medium Fixed Superstructure" - tank_medium_fixed_superstructure_turret_desc:0 "A fixed superstructure only allows the main armament to traverse in a small arc without turning the entire vehicle. However, it allows the vehicle to mount a bigger armament while being overall of smaller size, making the vehicle perfect for ambushes." - tank_heavy_two_man_tank_turret:0 "Two Man Turret" - tank_heavy_two_man_tank_turret_desc:0 "A turret that allows for two crew members to share the work of operating the armament and observing the situation. It still does not allow for an effective division of labor amongst the crew." - tank_heavy_three_man_tank_turret:0 "Three Man Turret" - tank_heavy_three_man_tank_turret_desc:0 "A turret big enough for the three crew members to divide the tasks of loading and aiming the main armament as well as staying aware of the situation around them." - tank_heavy_fixed_superstructure_turret:1 "Heavy Fixed Superstructure" - tank_heavy_fixed_superstructure_turret_desc:0 "A fixed superstructure only allows the main armament to traverse in a small arc without turning the entire vehicle. However, it allows the vehicle to mount a bigger armament while being overall of smaller size, making the vehicle perfect for ambushes." - tank_super_heavy_four_man_tank_turret:0 "Four Man Turret" - tank_super_heavy_four_man_tank_turret_desc:0 "A massive turret with additional space for a second loader to service the main gun." - tank_super_heavy_three_man_tank_turret:0 "Three Man Turret" - tank_super_heavy_three_man_tank_turret_desc:0 "A turret big enough for the three crew members to divide the tasks of loading and aiming the main armament as well as staying aware of the situation around them." - tank_modern_tank_turret:0 "Modern Turret" - tank_modern_tank_turret_desc:0 "A well-laid out turret allows three crew members to efficiently operate the main armament and keep track of their surroundings." - tank_heavy_machine_gun:0 "Heavy Machine Gun" - tank_heavy_machine_gun_desc:0 "A machine gun provides decent anti-infantry capability for a low cost. Even with special armor-piercing ammunition, its anti-armor performance leaves a lot to be desired." - flamethrower:0 "Flamethrower" - flamethrower_desc:0 "A device to project a stream of burning liquid. While very useful in urban combat and against fortifications, it offers no anti-armor capability and has to be used by a specially-trained crew in a separate unit to be effective." - tank_auto_cannon:0 "Automatic Cannon" - tank_auto_cannon_desc:0 "Adapted from a fast-firing anti-air gun, this automatic cannon can lay down a hail of fire that is devastating to soft targets. The small caliber does limit its anti-armor performance." - tank_auto_cannon_2:0 "Improved Automatic Cannon" - tank_auto_cannon_2_desc:0 "Adapted from a fast-firing anti-air gun, this automatic cannon can lay down a hail of fire that is devastating to soft targets. The small caliber does limit its anti-armor performance." - tank_anti_air_cannon:0 "Basic Anti-Air Gun" - tank_anti_air_cannon_desc:0 "A fast-firing automatic gun designed to engage aircraft. It has limited potential as a fire-support weapon against ground targets." - tank_anti_air_cannon_2:0 "Improved Anti-Air Gun" - tank_anti_air_cannon_2_desc:0 "A fast-firing automatic gun designed to engage aircraft. It has limited potential as a fire-support weapon against ground targets." - tank_anti_air_cannon_3:0 "Advanced Anti-Air Gun" - tank_anti_air_cannon_3_desc:0 "A fast-firing automatic gun designed to engage aircraft. It has limited potential as a fire-support weapon against ground targets." - tank_medium_howitzer:0 "Medium Howitzer" - tank_medium_howitzer_desc:0 "A medium field howitzer adapted to be mounted in a vehicle. Its primary purpose is indirect fire support against soft targets, but it can be fired directly at a target if necessary. Carrying only a small amount of armor-percing ammunition, it is ill-suited for anti-tank work." - tank_medium_howitzer_2:0 "Improved Medium Howitzer" - tank_medium_howitzer_2_desc:0 "A medium field howitzer adapted to be mounted in a vehicle. Its primary purpose is indirect fire support against soft targets, but it can be fired directly at a target if necessary. Carrying only a small amount of armor-percing ammunition, it is ill-suited for anti-tank work." - tank_heavy_howitzer:0 "Heavy Howitzer" - tank_heavy_howitzer_desc:0 "A heavy field howitzer adapted to be mounted in a vehicle. Its primary purpose is indirect fire support against soft targets, but it can be fired directly at a target if necessary. Carrying only a small amount of armor-percing ammunition, it is ill-suited for anti-tank work." - tank_small_cannon:0 "Small Cannon" - tank_small_cannon_desc:0 "A small and cheap cannon, able to fire both anti-infantry and anti-armor rounds. Its small caliber limits its usefulness." - tank_small_cannon_2:0 "Improved Small Cannon" - tank_small_cannon_2_desc:0 "A small and cheap cannon, able to fire both anti-infantry and anti-armor rounds. Its small caliber limits its usefulness." - tank_medium_cannon:0 "Medium Cannon" - tank_medium_cannon_desc:0 "A general-purpose weapon well suited to a wide variety of tasks. It excells at neither anti-infantry nor anti-tank work, but it provides a vehicle with a lot of flexibility." - tank_medium_cannon_2:0 "Improved Medium Cannon" - tank_medium_cannon_2_desc:0 "A general-purpose weapon well suited to a wide variety of tasks. It excells at neither anti-infantry nor anti-tank work, but it provides a vehicle with a lot of flexibility." - tank_high_velocity_cannon:0 "Basic High-Velocity Cannon" - tank_high_velocity_cannon_desc:0 "A cannon specifically designed to achieve a high muzzle velocity. Using specialized ammunition, it has superb anti-armor characteristics, but its performance against soft targets suffers." - tank_high_velocity_cannon_2:0 "Improved High-Velocity Cannon" - tank_high_velocity_cannon_2_desc:0 "A cannon specifically designed to achieve a high muzzle velocity. Using specialized ammunition, it has superb anti-armor characteristics, but its performance against soft targets suffers." - tank_high_velocity_cannon_3:0 "Advanced High-Velocity Cannon" - tank_high_velocity_cannon_3_desc:0 "A cannon specifically designed to achieve a high muzzle velocity. Using specialized ammunition, it has superb anti-armor characteristics, but its performance against soft targets suffers." - tank_heavy_cannon:0 "Basic Heavy Cannon" - tank_heavy_cannon_desc:0 "A weapon that can fire a large shell. With exceptional armor penetration and decent performance against soft targets, its biggest drawbacks are the sheer size and cost, which make it too unwieldly to be mounted in most vehicles not specifically designed to carry it." - tank_heavy_cannon_2:0 "Improved Heavy Cannon" - tank_heavy_cannon_2_desc:0 "A weapon that can fire a large shell. With exceptional armor penetration and decent performance against soft targets, its biggest drawbacks are the sheer size and cost, which make it too unwieldly to be mounted in most vehicles not specifically designed to carry it." - tank_heavy_cannon_3:1 "Advanced Heavy Cannon" - tank_heavy_cannon_3_desc:0 "A weapon that can fire a large shell. With exceptional armor penetration and decent performance against soft targets, its biggest drawbacks are the sheer size and cost, which make it too unwieldly to be mounted in most vehicles not specifically designed to carry it." - tank_super_heavy_cannon:0 "Super-Heavy Cannon" - tank_super_heavy_cannon_desc:0 "An absurdly large weapon with unmatched performance. There are very few things that this weapon can not destroy, and none of them have any business shooting at a tank." - tank_close_support_gun:0 "Close Support Gun" - tank_close_support_gun_desc:0 "A small weapon designed to fire high-explosive shells against enemy field fortifications to help the infantry on the attack. While capable of engaging tanks, its short barrel and limited ammunition make it unable to deal with more powerful enemy tanks." - tank_radio_1:0 "Basic Radio" - tank_radio_1_desc:0 "A basic two-way radio allows tanks to coordinate their tactical maneuvers on a small scale." - tank_radio_2:0 "Improved Radio" - tank_radio_2_desc:0 "An improved radio allows commanders effective control over larger formations of tanks, permitting large-scale operational maneuvers." - tank_radio_3:0 "Advanced Radio" - tank_radio_3_desc:0 "With a more powerful transmitter and better reception, this radio allows communications over dozens of kilometers and in the face of enemy jamming." - amphibious_drive:0 "Amphibious Drive" - amphibious_drive_desc:0 "A set of floatation devices and a small screw allow this tank to quickly be rigged to traverse water, either from ship to shore or across a river." - secondary_turret_hmg:1 "Heavy Machine Gun" - secondary_turret_hmg_desc:0 "A heavy machine gun in a secondary turret. The placement of the turret limits its arc of fire, lowering the gun's overall effectiveness, but it does allow the tank to engage more targets. This is particularly useful when on the attack." - secondary_turret_small_cannon:1 "Small Cannon" - secondary_turret_small_cannon_desc:0 "A small cannon in a secondary turret. The placement of the turret limits its arc of fire, lowering the gun's overall effectiveness, but it does allow the tank to engage more targets. This is particularly useful when on the attack." - secondary_turret_close_support_gun:1 "Close Support Gun" - secondary_turret_close_support_gun_desc:0 "A close support gun in a secondary turret. The placement of the turret limits its arc of fire, lowering the gun's overall effectiveness, but it does allow the tank to engage more targets. This is particularly useful when on the attack." - sloped_armor:0 "Sloped Armor" - sloped_armor_desc:0 "Armor placed at an angle to an incoming shell has a much greater effective thickness than the same amount of armor placed vertically. It also increases the chance that the shell will simply bounce off harmlessly. However, it requires the entire tank to be designed around it, making the vehicle more difficult to assemble." - stabilizer:0 "Stabilizer" - stabilizer_desc:0 "A mechanical device to keep the gun pointing in the same direction when the tank is moving. While not advanced enough to allow accurate firing on the move, it does allow the gunner to fire accurately during a short stop, without having to re-acquire the target." - smoke_launchers:0 "Smoke Launchers" - smoke_launchers_desc:0 "A battery of pyrotechnic devices that can be triggered from inside the tank to create a thick cloud of smoke to hide the tank. Very useful when on the defensive or after driving into an ambush." - extra_ammo_storage:0 "Extra Ammunition Storage" - extra_ammo_storage_desc:0 "Additional racks of ready ammunition allow the tank to stay in the fight much longer without resupply. However, if the armor is penetrated, the results are likely to be catastrophic. This is particularly problematic when attacking." - wet_ammo_storage:0 "Wet Ammunition Storage" - wet_ammo_storage_desc:0 "Water jackets added to ammunition racks dramatically reduce the risk of the ammunition exploding after the tank is hit, which is greatly appreciated by the crews." - armor_tech_1_tt:0 "Enables Armor Upgrade values of 5 and above." - armor_tech_2_tt:0 "Enables Armor Upgrade values of 10 and above." - armor_tech_3_tt:0 "Enables Armor Upgrade values of 15 and above." - armor_tech_4_tt:0 "Enables Armor Upgrade values of 18 and above." - engine_tech_1_tt:0 "Enables Engine Upgrade values of 5 and above." - engine_tech_2_tt:0 "Enables Engine Upgrade values of 10 and above." - engine_tech_3_tt:0 "Enables Engine Upgrade values of 15 and above." - engine_tech_4_tt:0 "Enables Engine Upgrade values of 18 and above." - light_tank_chassis:0 "Light Tank" - medium_tank_chassis:0 "Medium Tank" - heavy_tank_chassis:0 "Heavy Tank" - light_tank_chassis_0:0 "Inter-War Light Tank Chassis" - light_tank_chassis_desc:0 "A small and compact chassis, ideal for a cheap and light vehicle for duties such as reconnaisance and fire support. Its limited load capacity makes it unsuited for carrying heavy armor or large guns." - light_tank_chassis_1:0 "Basic Light Tank Chassis" - basic_light_tank_chassis:0 "Basic Light Tank Chassis" - basic_light_tank_chassis_short:0 "1934 Light" - basic_light_tank_chassis_desc:0 "Technological advances have made the designs of the immediate post-war period effectively obsolete. The modern battlefield requires a new, clean design incorporating advances in metallurgy and interior layout." - light_tank_chassis_2:0 "Improved Light Tank Chassis" - improved_light_tank_chassis:0 "Improved Light Tank Chassis" - improved_light_tank_chassis_short:0 "1936 Light" - improved_light_tank_chassis_desc:0 "A further iteration based on the experiences gained with previous light tanks, this chassis allows for better reliability and maintenance." - light_tank_chassis_3:0 "Advanced Light Tank Chassis" - advanced_light_tank_chassis:0 "Advanced Light Tank Chassis" - advanced_light_tank_chassis_short:0 "1941 Light" - advanced_light_tank_chassis_desc:0 "With medium tanks increasingly taking center stage in the fight, light tanks have largely been relegated to supporting roles. A new chassis design is needed that takes the needs of these roles into account." - light_tank_amphibious_chassis_0:0 "Inter-War Light Tank Chassis (Amphibious)" - light_tank_amphibious_chassis_1:0 "Basic Light Tank Chassis (Amphibious)" - light_tank_amphibious_chassis_2:0 "Improved Light Tank Chassis (Amphibious)" - light_tank_amphibious_chassis_3:0 "Advanced Light Tank Chassis (Amphibious)" - light_tank_amphibious_equipment_0:0 "Inter-War Light Amphibious Tank" - light_tank_artillery_chassis_0:0 "Inter-War Light SP Artillery" - light_tank_artillery_chassis:0 "Light SP Artillery" - light_tank_artillery_chassis_desc:0 "A small and compact vehicle, primarily for fire support of advancing infantry." - light_tank_artillery_chassis_1:0 "Basic Light SP Artillery" - light_tank_artillery_chassis_2:0 "Improved Light SP Artillery" - light_tank_artillery_chassis_3:0 "Advanced Light SP Artillery" - light_tank_destroyer_chassis_0:0 "Inter-War Light Tank Destroyer" - light_tank_destroyer_chassis:0 "Light Tank Destroyer" - light_tank_destroyer_chassis_desc:0 "A small and compact vehicle, carrying a powerful gun to destroy enemy armor." - light_tank_destroyer_chassis_1:0 "Basic Light Tank Destroyer" - light_tank_destroyer_chassis_2:0 "Improved Light Tank Destroyer" - light_tank_destroyer_chassis_3:0 "Advanced Light Tank Destroyer" - light_tank_aa_chassis_0:0 "Inter-War Light SP Anti-Air" - light_tank_aa_chassis:0 "Light SP Anti-Air" - light_tank_aa_chassis_desc:0 "A small and compact vehicle, carrying an anti-air gun to defend against enemy planes." - light_tank_aa_chassis_1:0 "Basic Light SP Anti-Air" - light_tank_aa_chassis_2:0 "Improved Light SP Anti-Air" - light_tank_aa_chassis_3:0 "Advanced Light SP Anti-Air" - medium_tank_chassis_1:0 "Basic Medium Tank Chassis" - medium_tank_chassis_0:0 "Inter-War Medium Tank Chassis" - medium_tank_chassis_2:0 "Improved Medium Tank Chassis" - medium_tank_chassis_3:0 "Advanced Medium Tank Chassis" - medium_tank_amphibious_chassis_1:0 "Basic Medium Tank Chassis (Amphibious)" - medium_tank_amphibious_chassis_0:0 "Inter-War Medium Tank Chassis (Amphibious)" - medium_tank_amphibious_chassis_2:0 "Improved Medium Tank Chassis (Amphibious)" - medium_tank_amphibious_chassis_3:0 "Advanced Medium Tank Chassis (Amphibious)" - medium_tank_amphibious_equipment_0:0 "Inter-War Medium Amphibious Tank" - basic_medium_tank_chassis:0 "Basic Medium Tank Chassis" - basic_medium_tank_chassis_short:0 "1934 Medium" - basic_medium_tank_chassis_desc:0 "While light tanks have formed the backbone of mechanized formations in past years, it is becoming clear that their growth potential is nearly exhausted. In the future, we will need a bigger vehicle, which still retains a high level of mobility." - improved_medium_tank_chassis:0 "Improved Medium Tank Chassis" - improved_medium_tank_chassis_short:1 "1940 Medium" - improved_medium_tank_chassis_desc:0 "Building on the experiences of previous generation of medium tanks, it is clear that a new design with greater carrying capacity is needed to stay relevant." - advanced_medium_tank_chassis:0 "Advanced Medium Tank Chassis" - advanced_medium_tank_chassis_short:0 "1943 Medium" - advanced_medium_tank_chassis_desc:0 "The rapid growth of weight in weapon systems and armor strength requires an even bigger chassis, creating a vehicle the size of earlier heavy tanks." - medium_tank_chassis_desc:0 "A balanced, mid-sized chassis that offers a lot flexibility for building a wide variety of vehicles." - medium_tank_artillery_chassis_0:0 "Inter-War Medium SP Artillery" - medium_tank_artillery_chassis:0 "Medium SP Artillery" - medium_tank_artillery_chassis_desc:0 "A well-balanced vehicle, primarily for fire support of advancing infantry." - medium_tank_artillery_chassis_1:0 "Basic Medium SP Artillery" - medium_tank_artillery_chassis_2:0 "Improved Medium SP Artillery" - medium_tank_artillery_chassis_3:0 "Advanced Medium SP Artillery" - medium_tank_destroyer_chassis_0:0 "Inter-War Medium Tank Destroyer" - medium_tank_destroyer_chassis:0 "Medium Tank Destroyer" - medium_tank_destroyer_chassis_desc:0 "A well-balanced vehicle, carrying a powerful gun to destroy enemy armor." - medium_tank_destroyer_chassis_1:0 "Basic Medium Tank Destroyer" - medium_tank_destroyer_chassis_2:0 "Improved Medium Tank Destroyer" - medium_tank_destroyer_chassis_3:0 "Advanced Medium Tank Destroyer" - medium_tank_aa_chassis_0:0 "Inter-War Medium SP Anti-Air" - medium_tank_aa_chassis:0 "Medium SP Anti-Air" - medium_tank_aa_chassis_desc:0 "A well-balanced vehicle, carrying an anti-air gun to defend against enemy planes." - medium_tank_aa_chassis_1:0 "Basic Medium SP Anti-Air" - medium_tank_aa_chassis_2:0 "Improved Medium SP Anti-Air" - medium_tank_aa_chassis_3:0 "Advanced Medium SP Anti-Air" - heavy_tank_chassis_0:0 "Inter-War Heavy Tank Chassis" - heavy_tank_chassis_1:0 "Basic Heavy Tank Chassis" - heavy_tank_chassis_2:0 "Improved Heavy Tank Chassis" - heavy_tank_chassis_3:0 "Advanced Heavy Tank Chassis" - heavy_tank_amphibious_chassis_0:0 "Inter-War Heavy Tank Chassis (Amphibious)" - heavy_tank_amphibious_chassis_1:0 "Basic Heavy Tank Chassis (Amphibious)" - heavy_tank_amphibious_chassis_2:0 "Improved Heavy Tank Chassis (Amphibious)" - heavy_tank_amphibious_chassis_3:0 "Advanced Heavy Tank Chassis (Amphibious)" - heavy_tank_amphibious_equipment_0:0 "Inter-War Heavy Amphibious Tank" - basic_heavy_tank_chassis:0 "Basic Heavy Tank Chassis" - basic_heavy_tank_chassis_desc:0 "A thorough analysis of the Great War has shown that there is a need for a heavy vehicle to break through the enemy trench line and open up the way for lighter forces to exploit the breakthough. Such a vehicle should heavily armed and well armored, but doesn't have to be very fast." - basic_heavy_tank_chassis_short:0 "1934 Heavy" - improved_heavy_tank_chassis:0 "Improved Heavy Tank Chassis" - improved_heavy_tank_chassis_desc:0 "While the nature of warfare has changed, there is still a place for a heavy vehicle with thick armor to create a breakthrough in the enemy lines, or to shore up defenses against an enemy attack." - improved_heavy_tank_chassis_short:1 "1940 Heavy" - advanced_heavy_tank_chassis:0 "Advanced Heavy Tank Chassis" - advanced_heavy_tank_chassis_desc:0 "With the advances in armor and firepower, a modern tank needs to carry thick armor and a large gun to be effective. This necessitates a large vehicle." - advanced_heavy_tank_chassis_short:0 "1943 Heavy" - heavy_tank_chassis_desc:0 "A large chassis that can mount a heavy gun, thick armor, or both." - heavy_tank_artillery_chassis:0 "Heavy SP Artillery" - heavy_tank_artillery_chassis_0:0 "Inter-War Heavy SP Artillery" - heavy_tank_artillery_chassis_desc:0 "A large vehicle, primarily for fire support of advancing infantry." - heavy_tank_artillery_chassis_1:0 "Basic Heavy SP Artillery" - heavy_tank_artillery_chassis_2:0 "Improved Heavy SP Artillery" - heavy_tank_artillery_chassis_3:0 "Advanced Heavy SP Artillery" - heavy_tank_destroyer_chassis_0:0 "Inter-War Heavy Tank Destroyer" - heavy_tank_destroyer_chassis:0 "Heavy Tank Destroyer" - heavy_tank_destroyer_chassis_desc:0 "A large vehicle, carrying a powerful gun to destroy enemy armor." - heavy_tank_destroyer_chassis_1:0 "Basic Heavy Tank Destroyer" - heavy_tank_destroyer_chassis_2:0 "Improved Heavy Tank Destroyer" - heavy_tank_destroyer_chassis_3:0 "Advanced Heavy Tank Destroyer" - heavy_tank_aa_chassis_0:0 "Inter-War Heavy SP Anti-Air" - heavy_tank_aa_chassis:0 "Heavy SP Anti-Air" - heavy_tank_aa_chassis_desc:0 "A large vehicle, carrying an anti-air gun to defend against enemy planes." - heavy_tank_aa_chassis_1:0 "Basic Heavy SP Anti-Air" - heavy_tank_aa_chassis_2:0 "Improved Heavy SP Anti-Air" - heavy_tank_aa_chassis_3:0 "Advanced Heavy SP Anti-Air" - main_battle_tank_chassis:0 "Modern Tank Chassis" - modern_tank_chassis:0 "Modern Tank Chassis" - modern_tank_chassis_desc:0 "A modernized chassis that borrows heavily from previous medium tanks, but puts a much bigger emphasis on speed and maneuverability, while also allowing for more armor and bigger guns than usually carried on medium tanks. The result is a vehicle that can fill a wide variety of roles." - main_battle_tank_chassis_desc:0 "Experience has shown that the designs of light, medium, and heavy tank are converging more and more. heavy tanks have gotten more mobile, while light tanks are carrying heavier armament and armor to survive. there is therefore value in unifying all three designs into a single type, which will be a universal Main Battle Tank." - modern_tank_chassis_1:0 "Modern Tank Chassis" - modern_tank_artillery_chassis:0 "Modern SP Artillery" - modern_tank_artillery_chassis_desc:0 "A modern vehicle, designed to be a fully-functional artillery piece that can keep up with modern tanks and be protected against any threats found on the battlefield." - modern_tank_artillery_chassis_1:0 "Modern SP Artillery" - modern_tank_destroyer_chassis_desc:0 "A modern vehicle, intended to provide a fast response to enemy tank attacks, while having comparable protection levels." - modern_tank_destroyer_chassis_1:0 "Modern Tank Destroyer" - modern_tank_destroyer_chassis:0 "Modern Tank Destroyer" - modern_tank_aa_chassis_desc:0 "A modern vehicle, intended to provide mobile and well-protected defense against enemy air attack." - modern_tank_aa_chassis_1:0 "Modern SP Anti-Air" - modern_tank_aa_chassis:0 "Modern SP Anti-Air" - super_heavy_tank_chassis:0 "Super-Heavy Tank Chassis" - super_heavy_tank_chassis_desc:0 "A gigantic vehicle, capable of mounting the heaviest armor and the biggest gun, but consequently fairly slow and unreliable." - super_heavy_tank_chassis_1:0 "Super-Heavy Tank Chassis" - super_heavy_tank_artillery_chassis_desc:0 "A gigantic vehicle, capable of mounting the heaviest armor and the biggest gun, but consequently fairly slow and unreliable." - super_heavy_tank_artillery_chassis_1:0 "Super-Heavy SP Artillery" - super_heavy_tank_artillery_chassis:0 "Super-Heavy SP Artillery" - super_heavy_tank_destroyer_chassis_desc:0 "A gigantic vehicle, capable of mounting the heaviest armor and the biggest gun, but consequently fairly slow and unreliable." - super_heavy_tank_destroyer_chassis_1:0 "Super-Heavy Tank Destroyer" - super_heavy_tank_destroyer_chassis:0 "Super-Heavy Tank Destroyer" - super_heavy_tank_aa_chassis_desc:0 "A gigantic vehicle, capable of mounting the heaviest armor and the biggest gun, but consequently fairly slow and unreliable." - super_heavy_tank_aa_chassis_1:0 "Super-Heavy SP Anti-Air" - super_heavy_tank_aa_chassis:0 "Super-Heavy SP Anti-Air" - light_tank_flame_chassis_0:0 "Inter-War Light Flame Tank" - light_tank_flame_chassis_desc:0 "A small vehicle, carrying a flamethrower in its turret to attack fortifications and houses." - light_tank_flame_chassis_1:0 "Basic Light Flame Tank" - light_tank_flame_chassis_2:0 "Improved Light Flame Tank" - light_tank_flame_chassis_3:0 "Advanced Light Flame Tank" - medium_tank_flame_chassis_0:0 "Inter-War Medium Flame Tank" - medium_tank_flame_chassis_desc:0 "A mid-sized vehicle, carrying a flamethrower in its turret to attack fortifications and houses." - medium_tank_flame_chassis_1:0 "Basic Medium Flame Tank" - medium_tank_flame_chassis_2:0 "Improved Medium Flame Tank" - medium_tank_flame_chassis_3:0 "Advanced Medium Flame Tank" - heavy_tank_flame_chassis_0:0 "Inter-War Heavy Flame Tank" - heavy_tank_flame_chassis_desc:0 "A large vehicle, carrying a flamethrower in its turret to attack fortifications and houses." - heavy_tank_flame_chassis_1:0 "Basic Heavy Flame Tank" - heavy_tank_flame_chassis_2:0 "Improved Heavy Flame Tank" - heavy_tank_flame_chassis_3:0 "Advanced Heavy Flame Tank" - light_tank_flame_chassis:0 "Light Flame Tank" - medium_tank_flame_chassis:0 "Medium Flame Tank" - heavy_tank_flame_chassis:0 "Heavy Flame Tank" - amphibious_tank_chassis:0 "Amphibious Tank Chassis" - amphibious_tank_chassis_desc:0 "A small tank hull specifically designed to float. To achieve this, strict limits have to be set on the size of the weapon and the thickness of the armor the vehicle carries." - amphibious_tank_chassis_1:0 "Amphibious Tank Chassis" - gwtank_chassis:0 "Inter-War Tank Development" - gwtank_chassis_desc:0 "The tank has proven itself a powerful weapon in the Great War. While development has slowed in the intervening years, it is no doubt going to play a major role in the wars to come." - armor_tech_1:0 "Basic Armor Protection" - armor_tech_1_desc:0 "Tanks during the Great War only had to contend with enemy small arms. As such, they got away with fairly thin armor. A new generation of anti-tank weaponry has made the battlefield a much more dangerous place for a tank, and much heavier protection is needed." - armor_tech_2:0 "Improved Armor Protection" - armor_tech_2_desc:0 "With heavier and heavier anti-tank weapons being fielded around the world, the next generation of tanks will require even better protection." - armor_tech_3:0 "Advanced Armor Protection" - armor_tech_3_desc:0 "While the limit of deployed anti-tank guns has likely been reached, a new generation of tanks will carry more advanced weaponry, which is able to pierce any current level of protection at long range." - armor_tech_4:0 "Modern Armor Protection" - armor_tech_4_desc:0 "During the war, the threats faced by tanks have multiplied, from enemy tanks, anti-tank guns, dedicated tank destroyers, all the way to modern infantry weapons firing shaped charges that can penetrate even heavy armor. We must develop new protection methods to keep our own tanks alive in the face of these threats." - engine_tech_1:0 "Basic Engine" - engine_tech_1_desc:0 "Where the tanks of the Great War were slow, lumbering beasts, the modern tank relies very much on speed and mobility to achieve victory." - engine_tech_2:0 "Improved Engine" - engine_tech_2_desc:0 "With bigger guns and heavier armor, the new generation of tanks requires a more powerful engine to remain mobile." - engine_tech_3:0 "Advanced Engine" - engine_tech_3_desc:0 "Mechanized warfare is a form of combat that requires fast decision making and fast movement of troops and supplies. If our tanks are to carry modern weapons and enough armor to survive on the battlefield, they require powerful engines to keep up with the motorized infantry." - engine_tech_4:0 "Modern Engine" - engine_tech_4_desc:0 "The numerous new additions to tanks made necessary by modern warfare have increased the weight of the vehicle substantially. To move all that mass around, we require engines that have a lot of power behind them." - DESIGNER_CHASSIS_BASE:0 "Chassis: " - DESIGNER_FROM_MODULES:0 "Modules: " - DESIGNER_UNSAVED_CHANGES:0 "Unsaved changes: " - tank_rocket_launcher:0 "Rocket Launcher" - tank_rocket_launcher_desc:0 "A multi-barrelled launcher for unguided, high-explosive rockets. The high volume of fire gives it excellent performance against soft targets, but even direct hits do little against armored targets." - tank_rocket_launcher_2:0 "Improved Rocket Launcher" - tank_rocket_launcher_2_desc:0 "While there are a number of improvements to accuracy, the main advantage of this improved rocket launcher is that it can hold more rockets to fire at the enemy." - tank_wheeled_suspension:0 "Wheeled Suspension" - tank_wheeled_suspension_desc:0 "Derived from a truck chassis, this suspension is very limited in its carrying capacity and has limited cross-country performance, but has the advantage of being very cheap to make." - tank_half_track_suspension:0 "Half-track Suspension" - tank_half_track_suspension_desc:0 "A hybrid between a fully-tracked vehicle and a regular wheeled suspension, this setup has a pair of wheels up front for steering and a tracked rear axle to improve cross-country performance. While limited in its carrying capacity, it is still cheaper than a fully-tracked design." - squeezebore_adaptor:0 "Squeeze-bore Adaptor" - squeezebore_adaptor_desc:0 "A special adaptor at the end of the gun lowers the diameter of the barrel and squeezes a shell down to a smaller caliber. This significantly increases muzzle velocity and thereby the penetration power of the gun. It does require special ammunition made from rare materials." - armor_skirts:0 "Armor Skirts" - armor_skirts_desc:0 "A set of thin metal plates mounted on the side of the vehicle, giving additional protection against anti-tank rifles and shaped charges." - dozer_blade:0 "Dozer Blade" - dozer_blade_desc:0 "A dozer blade allows the vehicle to quickly build a fighting position in the field without the support of engineers." - auto_loader:0 "Auto Loader" - auto_loader_desc:0 "An auomatic mechanism that loads shells and allows the tank to keep a high rate of fire for a prolonged period of time." - easy_maintenance:0 "Easy Maintenance" - easy_maintenance_desc:0 "Hatches around the vehicle give access to many different components of the vehicle, and allow the crew to perform even complex maintenance fairly easily." - additional_machine_guns:0 "Additional Machineguns" - additional_machine_guns_desc:0 "A set of machineguns in sponsons and special pintle mounts give the vehicle improved defense against close-in infantry attack." - - GER_light_tank_flame_equipment_0:0 "Versuchsflammpanzer" - GER_medium_tank_flame_equipment_0:0 "Versuchsflammpanzer (Mittelschwer)" - GER_heavy_tank_flame_equipment_0:0 "Versuchsflammpanzer (schwer)" - GER_light_tank_flame_equipment_1:0 "Flammpanzer I" - GER_light_tank_flame_equipment_2:0 "Flammpanzer II" - GER_light_tank_flame_equipment_3:0 "Flammpanzer Leopard" - GER_medium_tank_flame_equipment_1:0 "Flammpanzer III" - GER_medium_tank_flame_equipment_2:0 "Flammpanzer IV" - GER_medium_tank_flame_equipment_3:0 "Flammpanzer Panther" - GER_heavy_tank_flame_equipment_1:0 "Flammpanzer (Schwer)" - GER_heavy_tank_flame_equipment_2:0 "Flammpanzer Tiger" - GER_heavy_tank_flame_equipment_3:0 "Flammpanzer Tiger II" - GER_light_tank_amphibious_equipment_0:0 "Versuchsschwimmpanzer" - GER_medium_tank_amphibious_equipment_0:0 "Versuchschwimmpanzer (Mittelschwer)" - GER_heavy_tank_amphibious_equipment_0:0 "Versuchsschwimmpanzer (schwer)" - GER_light_tank_amphibious_equipment_1:0 "Schwimmpanzer I" - GER_light_tank_amphibious_equipment_2:0 "Schwimmpanzer II" - GER_light_tank_amphibious_equipment_3:0 "Schwimmpanzer Leopard" - GER_medium_tank_amphibious_equipment_1:0 "Schwimmpanzer III" - GER_medium_tank_amphibious_equipment_2:0 "Schwimmpanzer IV" - GER_medium_tank_amphibious_equipment_3:0 "Schwimmpanzer Panther" - GER_heavy_tank_amphibious_equipment_1:0 "Schwimmpanzer (Schwer)" - GER_heavy_tank_amphibious_equipment_2:0 "Schwimmpanzer Tiger" - GER_heavy_tank_amphibious_equipment_3:0 "Schwimmpanzer Tiger II" - light_tank_equipment_0:0 "IW Light Tank" - medium_tank_equipment_0:0 "IW Medium Tank" - heavy_tank_equipment_0:0 "IW Heavy Tank" - light_tank_flame_equipment_0:0 "IW Light Flame Tank" - medium_tank_flame_equipment_0:0 "IW Medium Flame Tank" - heavy_tank_flame_equipment_0:0 "IW Heavy Flame Tank" - light_tank_aa_equipment_0:0 "IW Light AA Tank" - medium_tank_aa_equipment_0:0 "IW Medium AA Tank" - heavy_tank_aa_equipment_0:0 "IW Heavy AA Tank" - light_tank_destroyer_equipment_0:0 "IW Light Tank Destroyer" - medium_tank_destroyer_equipment_0:0 "IW Medium Tank Destroyer" - heavy_tank_destroyer_equipment_0:0 "IW Heavy Tank Destroyer" - light_tank_artillery_equipment_0:0 "IW Light SP Artillery" - medium_tank_artillery_equipment_0:0 "IW Medium SP Artillery" - heavy_tank_artillery_equipment_0:0 "IW Heavy SP Artillery" - - - GER_heavy_tank_equipment_0:0 "Versuchspanzerkampfwagen (schwer)" - GER_light_tank_equipment_0:0 "Leichttraktor" - GER_medium_tank_equipment_0:0 "Mittlerer Traktor" - - EQUIPMENT_AMPHIBIOUS:0 "Amphibious Tank" - - light_flame_tank:0 "Light Flame Tank Company" - light_flame_tank_desc:0 "A company of light, flamethrower-equipped vehicles to provide support in assaulting cities and fortifications." - medium_flame_tank:0 "Medium Flame Tank Company" - medium_flame_tank_desc:0 "A company of mid-sized, flamethrower-equipped vehicles to provide support in assaulting cities and fortifications." - heavy_flame_tank:0 "Heavy Flame Tank Company" - heavy_flame_tank_desc:0 "A company of heavy, flamethrower-equipped vehicles to provide support in assaulting cities and fortifications." - - - light_tank_amphibious_chassis_desc:0 "A light tank equipped with floatation devices and a propeller." - medium_tank_amphibious_chassis_desc:0 "A medium tank equipped with floatation devices and a propeller." - heavy_tank_amphibious_chassis_desc:0 "A heavy tank equipped with floatation devices and a propeller." diff --git a/localisation/english/tfv_events_l_english.yml b/localisation/english/tfv_events_l_english.yml deleted file mode 100644 index ebcec18eb..000000000 --- a/localisation/english/tfv_events_l_english.yml +++ /dev/null @@ -1 +0,0 @@ -#prevents bleeding in from the vanilla game \ No newline at end of file diff --git a/localisation/english/wtt_events_l_english.yml b/localisation/english/wtt_events_l_english.yml deleted file mode 100644 index 1388c0419..000000000 --- a/localisation/english/wtt_events_l_english.yml +++ /dev/null @@ -1,1125 +0,0 @@ -l_english: - generic.8.t:0 "Masters of the Atom" - generic.8.d:0 "We have used the world's first nuclear weapon, firmly placing us in the lead of the current arms race. Our immense efforts have paid off, and for now the world will have no choice but to marvel at our power. They might some day match us, but we have ensured they will never outmatch us." - generic.8.a:0 "Pound our enemies into dust!" - generic.9.t:0 "In the Shadow of Others" - generic.9.d:0 "Others have used the world's first nuclear weapon, placing them firmly in the lead of the current arms race. Despite our best efforts, we are left with no defense and no means of retaliation. Utterly outmatched, we have no choice but to redouble our efforts and bridge the gap before they can unleash much more of this devastation." - generic.9.a:0 "The program must get all we can spare." - generic.10.t:0 "Powerful Friends" - generic.10.d:0 "Our allies have used the world's first nuclear weapon, firmly placing our alliance in the lead of the current arms race. Though we have been outmatched, the weapon is mastered by our ally, ensuring our ability to retaliate should any enemy master the atom, themselves." - generic.10.a:0 "An acceptable outcome." - wtt_denmark.1.t:0 "Icelandic Independence" - wtt_denmark.1.d:0 "With the severance of contact after the invasion, the Icelandic Parliament has taken control of the nation's own foreign affairs. This is understood to be a temporary measure, until the end of the occupation." - wtt_denmark.1.a:0 "Good luck to them." - wtt_britain.24.t:0 "The MacDonald Proposal" - wtt_britain.24.d:0 "With the current war putting a strain on British convoys, our Eastern neighbours have become increasingly anxious for the use of our air and naval bases, from which they hope to expand their protective coverage of their convoy routes. A British envoy by the name of Malcolm MacDonald has now arrived to propose the return of Northern Ireland to sovereign Irish control, in return for our immediate entry into the war on the side of the United Kingdom." - wtt_britain.24.a:0 "An excellent idea." - wtt_britain.24.b:0 "The prize is not worth the cost." - wtt_britain.25.t:0 "British Demand French Fleet" - wtt_britain.25.d:0 "British fleets have appeared outside our fleet's main harbors, and we have received an ultimatum demanding the immediate surrender of our navy. If we do not sail our ships to British ports immediately, the British admiral has threatened to open fire." - wtt_britain.25.a:0 "We have no other choice..." - wtt_britain.25.b:0 "We shall never let any other nation take our fleet!" - wtt_britain.26.t:0 "French Surrender Fleet" - wtt_britain.26.d:0 "The French have made the wise decision to sail their ships to our ports. We now have complete control over the French fleet." - wtt_britain.26.a:0 "At least we kept it out of the hands of the Germans." - wtt_britain.27.t:0 "French Reject Ultimatum" - wtt_britain.27.d:0 "The French have rejected our demands. We are now left with the an unenviable choice of backing down or turning on our erstwhile allies..." - wtt_britain.27.a:0 "We cannot allow the French fleet to serve German interests!" - wtt_britain.27.b:0 "This is too unpalatable. We must back down." - wtt_britain.28.t:0 "Ireland Accepts MacDonald Proposal" - wtt_britain.28.d:0 "The Irish Government has accepted our proposal, and have joined our cause in return for Northern Ireland." - wtt_britain.29.t:0 "Ireland Rejects MacDonald Proposal" - wtt_britain.29.d:0 "The Irish Government has rejected our proposal, refusing to join our fight for Democracy." - wtt_britain.29.a:0 "Who will help them when the Germans come for them?" - wtt_britain.30.t:0 "American Emergency Arms Deliveries" - wtt_britain.30.d:0 "The American government, with the gracious support of the American Committee for Defense of British Homes, has sent us an emergency shipment of old rifles, equipment, and some artillery pieces. It is too varied an assortment to be of true use for our army, but they will no doubt go a long way to hastily equipping the Home Guard garrissons." - wtt_britain.30.a:0 "They have saved us from invasion!" - wtt_germany.1.t:0 "Wehrmacht Officers Challenge Hitler" - wtt_germany.1.d:0 "Latent dissatisfaction with Hitler's rule has come to a head with the current crisis, caused by the administration's move to remilitarize the Rhineland. A number of Wehrmacht generals have rallied behind the well-known Field Marshal August von Mackensen, who has put in motion plans aiming to depose Hitler, and to remove the Nazi party from Germany.\n\nWith the split in the German high command becoming clearly apparent even abroad, foreign powers have elected not to protest against the remilitarization, more concerned with the growing internal German instability. The aging Field Marshal has moved quickly, already establishing a provisional government, to which scores have flocked in their opposition to the Nazi government.\n\nThe military coup is already well on its way." - wtt_germany.1.a:0 "Purge this Nazi scum from our lands!" - wtt_germany.2.t:0 "German Expatriates Join the Cause" - wtt_germany.2.d:0 "After the recent harsh treatment and forced expatriation in their home country, many of our displaced German comrades have flocked to our environs. With some leadership, we have managed to create a number of divisions from these eager recruits, and they now stand ready to fight our enemies!" - wtt_germany.3.t:0 "Germany Lifts Exile of Wilhelm II" - wtt_germany.3.d:0 "Germany has invited Wilhelm II to return to his fatherland as Kaiser. With recent tumultuous events, this may aid the Germans in establishing peace and stability to their nation. The eyes of the world are upon us, however, as many have not forgotten the terrific conflict the old Kaiser plunged us into a mere two decades ago." - wtt_germany.3.a:0 "We must allow him to return and lead his people." - wtt_germany.3.b:0 "We must stop him - we cannot risk another Great War." - wtt_germany.4.t:0 "Kaiser Returns to Germany" - wtt_germany.4.d:0 "In the midst of extatic celebrations, Wilhelm II has returned as Kaiser to the German Empire! The Netherlands is owed a debt of gratitude for allowing him safe refuge these past decades, and for refusing his extradition to our former enemies on multiple occasions. Though the nation has suffered much in the recent civil war, it is hoped that the Kaiser's return will bring further stability and unity." - wtt_germany.4.a:0 "He shall undoubtedly lead the nation well." - wtt_germany.5.t:0 "Netherlands Prevents Return of the Kaiser" - wtt_germany.5.d:0 "The dastardly Netherlands, having so long nobly offered Wilhelm II refuge, have now blocked the Kaiser's attempts at crossing the border to Germany, and have escorted him back to his residence, Huis Doorn. The Dutch cite concerns for the stability of the continent as their reasons for denying the Kaiser's return to the German throne." - wtt_germany.5.a:0 "We shall give them some more immediate concerns!" - wtt_germany.5.b:1 "Perhaps they have a point... We have other candidates." - wtt_germany.5_tt:0 "The old Kaiser may well be able to aid his son in his rule.\n" - wtt_germany.6.t:0 "Wilhelm II Freed" - wtt_germany.6.d:0 "Our forces, after clearing the area surrounding Huis Doorn of Dutch forces, found the Kaiser in good health and returned him to Germany in motor convoy. Wilhelm II triumphantly crossed the border only a few hours ago, and solemnly accepted the responsibilities of Kaiser of the German Empire upon his arrival in Berlin." - wtt_germany.6.a:0 "None shall stop us." - GER_fascism_civil_war_tt:0 "The fascist supporters start a civil war.\n" - wtt_germany.7.t:0 "Unchecked Economic Dependency on [From.GetName]" - wtt_germany.7.d:0 "With the gradual spiral deeper into [From.GetNameDef]'s sphere of influence, our economy has become more and more dependent on that of our ally. When, today, the Germans at last moved to take further control over our economy, we were powerless to stop them. As a result, German control over our foreign policy has reached unprecedented levels." - wtt_germany.7.a:0 "We must make do with the situation... For now." - wtt_germany.8.t:0 "Germany Offers Support for Monarchist Coup" - wtt_germany.8.d:1 "[From.GetNameDefCap] has approached pro-monarchy and anti-fascist elements of the Italian government and the underground with plans for the assassination of Mussolini and the institution of Vittorio Emanuele III as leader of the nation. The Germans ensure us they can handle the assassination; all we have to do is affirm our willingness to create a replacement government, and to pledge our future military support to German endeavours." - wtt_germany.8.a:0 "We must look to the Monarchy in the time ahead." - wtt_germany.8.b:0 "Preposterous! We will never abandon our ways!" - wtt_germany.9.t:0 "Italians Accept Coup Proposal" - wtt_germany.9.d:0 "Elements in the Italian government and underground have accepted our proposal for a coup. They are making preparations for a swift siezure of power for the King, as soon as the assassination has happened." - wtt_germany.9.a:0 "We can set our plans in motion." - wtt_germany.10.t:0 "Italians Reject Coup Proposal" - wtt_germany.10.d:0 "The elements of the Italian government and underground we contacted have told us, in not too gentle terms, that they are uninterested in our proposal for a coup. They have threatened to reveal our plans to the Italian government if we dare make the same offer again." - wtt_germany.10.a:0 "How unfortunate." - wtt_germany.11.t:0 "German Assassination of Mussolini" - wtt_germany.11.d:1 "The German plan has been put in action and Mussolini was shot in his car in the streets of Rome today. King Vittorio Emanuele III has taken the reins of the nation, and has pledged to join the Central Powers alongside [From.GetNameDef]." - wtt_germany.11.a:0 "We must show our gratitude." - wtt_germany.12.t:0 "Mussolini Assassination Succeeds" - wtt_germany.12.d:1 "Our plan has been executed flawlessly, and Vittorio Emanuele III has taken up the mantle of leadership of his nation. His first act was to sign a treaty ensuring Italian entry into the Central Powers alliance." - wtt_germany.12.a:0 "The monarchies shall rise again!" - wtt_germany.13.t:0 "Reunification of Austria-Hungary" - wtt_germany.13.d:0 "With our support, [From.GetOldName] has taken the lead in the reunification of the Austro-Hungarian empire. Treaties between the involved parties were signed this morning, undoing two decades of separatist sentiment. The new unified government immediately pledged their military support to our cause, becoming a member of the Central Powers." - wtt_germany.13.a:0 "Our old ally has returned to our side." - wtt_germany.14.t:0 "Germany Offers Guarantee for Territory" - wtt_germany.14.d:1 "[From.GetNameDefCap] has approached us with an offer that they say may benefit both parties. In light of the current political situation, and the threat on our Eastern border, the Germans propose to issue a guarantee that they will come to our military aid in the event that we come to war with [SOV.GetNameDef]. In return, they only ask for the return of their lost territories of Danzig and Poznan." - wtt_germany.14.a:0 "Their military might is more use to us than land." - wtt_germany.14.b:0 "We will never give up our lands!" - wtt_germany.15.t:0 "Poland Accepts Offer" - wtt_germany.15.d:1 "The Poles have decided to accept our offer, and have made arrangements to transfer their border provinces to us. They have put their faith in us, and urge us to stand ready in case of [SOV.GetAdjective] aggression.." - wtt_germany.15.a:0 "This blight of Versailles undone at last!" - wtt_germany.16.t:0 "Poland Rejects Offer" - wtt_germany.16.d:0 "The Poles have decided to reject our offer. In powerful language they have made it clear that they shall never relinquish their territory willingly, and would rather face any enemy alone if this is the price for help." - wtt_germany.16.a:0 "We will never relinquish our claims!" - wtt_germany.16.b:0 "Perhaps we must come to terms with it." - wtt_germany.17.t:0 "German Communists Flee to France" - wtt_germany.17.d:0 "The German government has cracked down on communism, and has banished them abroad. As a result we are now receiving a large influx of communist ideologues from our neighbour..." - wtt_germany.17.a:0 "If only this doesn't destabilize the country too much..." - wtt_germany.18.t:0 "Nazi Leadership Captured" - wtt_germany.18.d:1 "At long last we have freed our country from the grip of our enemies, and those loyal citizens who rose up to support our cause may now finally return to their homes. As a nation, we may begin the long and arduous process of rebuilding our nation. The country's leadership, in turn, is free to begin looking ahead at what might come in the future: democracy, or a return to the old monarchy.\n\nOne last thing remains to be taken care of, however. With the end of the civil war, our troops have managed to capture a large group of the Nazi leadership. Now, there only remains the decision of what to do with this unsavory part of our recent history." - wtt_germany.18.a:0 "Hang them!" - wtt_germany.18.b:0 "Imprison them for life, they might come in useful in the future." - wtt_germany.19.t:1 "[GER.GetName] Speaks Out Against [SOV.GetName]" - wtt_germany.19.d:0 "Recent German rhetoric aimed against us has become increasingly harmful to our reputation in Europe. Slanderous accusations of our supposed 'aggression' are beginning to cause fear and misunderstanding of our intentions." - wtt_germany.19.a:0 "Start a series of huge military exercises to intimidate them all!" - GER_soviet_military_exercises:0 "Military Exercises" - wtt_germany.19.b:1 "We must salvage our reputation and smooth relations." - GER_soviet_smoothes_relationships:0 "Smoothed Relationships" - wtt_germany.19.c:0 "Do they think we care what they say of us?" - wtt_germany.20.t:0 "Germany Creates Central European Alliance" - wtt_germany.20.d:0 "Continuing to embark on their slanderous campaign against us, the Germans have now announced the creation of a new alliance. There is little doubt it is aimed against us and that they mean to interfere with our sphere of influence." - wtt_germany.20.a:0 "They better stay our of our sphere of influence!" - GER_soviet_reiterated_claims:0 "Reiterated Claims" - wtt_germany.20.b:0 "We must not give them any excuse to escalate further." - wtt_germany.21.t:0 "Germans Invite Baltics" - wtt_germany.22.t:0 "Germans Invite Poland" - wtt_germany.23.t:0 "Germans Invite Finland" - wtt_germany.21.d:0 "The Germans have offered membership to a nation in our immediate sphere of influence. The threat to the motherland is clear!" - wtt_germany.21.a:0 "We must strike to secure the rest!" - GER_soviet_securing_sphere:0 "Securing Sphere of Influence" - wtt_germany.21.b:0 "We cannot afford to antagonize the West." - wtt_germany.24.t:1 "The Great [GER.GetGreatRedMenaceName] Menace" - wtt_germany.24.d:1 "Through both official and unofficial channels, the Germans have made it clear that [GER.GetGreatRedMenaceEventDesc1]. They have urged us to remember that we are not alone in enduring [GER.GetGreatRedMenaceEventDesc2], and that, if only the continent unites, we can beat down the Bear." - SOV_GREAT_RED_MENACE_EVENT_DESC_1_COMMUNIST:0 "[SOV.GetNameDef] is, and has been, the greatest threat to the stability of Europe since its inception two decades ago" - SOV_GREAT_RED_MENACE_EVENT_DESC_1_EXILES:0 "[SOV.GetAdjective] imperialism is, and has been, a major threat to the stability of Europe all throughout recent history" - SOV_GREAT_RED_MENACE_EVENT_DESC_2_COMMUNIST:0 "the threat of communism" - SOV_GREAT_RED_MENACE_EVENT_DESC_2_EXILES:0 "this threat from the East" - wtt_germany.24.a:0 "Let us hope they are right." - wtt_germany.25.t:0 "Soviet Union Smooths Relations" - wtt_germany.25.d:0 "The Soviet Union has made a concerted effort to alleviating the concerns of European nations. With a public announcement they have claimed they do not have any hostile intentions, and hope that their restrained reaction to the belligerent German rhetoric will speak for them." - wtt_germany.25.a:0 "That remains to be seen." - wtt_germany.26.t:0 "Wilhelm II Dies" - wtt_germany.26.d:0 "Last night Wilhelm II, our beloved Kaiser, passed away peacefully in his sleep. Despite his long exile, providence had seen fit to allow his return to the fatherland well before his death, and ever since his return he had led our nation well. His son, Friedrich Wilhelm, has now taken up the reins of the nation, and after his coronation will become known as Wilhelm III." - wtt_germany.26.a:0 "Long live the Kaiser!" - wtt_germany.27.t:0 "August Von Mackensen Dies" - wtt_germany.27.d:0 "Last night August von Mackensen, our most esteemed field marshal, passed away peacefully in his sleep. His celebrated exploits in the Great War and in ousting the fascist oppressor from our homeland, will long be remembered. The exiled Kaiser's son, Friedrich Wilhelm, has filled the power vacuum of the nation, and after his coronation will become known as Wilhelm III, ruling the Empire as the first Kaiser since the 1918 abdication of his father." - wtt_germany.28.t:0 "Germany Lifts Exile of Wilhelm II" - wtt_germany.28.d:0 "The German Empire has lifted the exile of Wilhelm II, and has now approached the Netherlands for the return of the old Kaiser. It seems that, despite numerous extradition appeals to the Dutch government to hold him accountable for starting the Great War, the warmongerer will return to take the reins of the German Empire." - wtt_germany.28.d.2:0 "The German Empire has lifted the exile of Wilhelm II, and has now approached the Netherlands for the return of the old Kaiser. In the face of Dutch refusal to allow his return, they have now escalated this to a military conflict!" - germany.60.c:0 "They shall not stand alone! Rally the British to war!" - wtt_germany.29.d:0 "The German Empire has lifted the exile of Wilhelm II, and has now approached the Netherlands for the return of the old Kaiser. It seems that, despite numerous extradition appeals to the Dutch government to hold him accountable for starting the Great War, the warmongerer will return to take the reins of the German Empire.\n\nThe French have already decided that this is unacceptable, and seem intent on issuing an ultimatum backed by military force. Popular opinion in Britain is against a war, but if we refuse to stand by the French our alliance with them will be dissolved." - wtt_germany.29.d.2:0 "The German Empire has lifted the exile of Wilhelm II, and has now approached the Netherlands for the return of the old Kaiser. In the face of Dutch refusal to allow his return, they have now escalated this to a military conflict!\n\nThe French have already decided that this is unacceptable, and seem intent on issuing an ultimatum backed by military force. Popular opinion in Britain is against a war, but if we refuse to stand by the French our alliance with them will be dissolved." - germany.61.c:0 "We must come to the aid of the Dutch!" - wtt_germany.30.d:0 "The German Empire has lifted the exile of Wilhelm II, and has now approached the Netherlands for the return of the old Kaiser. It seems that, despite numerous extradition appeals to the Dutch government to hold him accountable for starting the Great War, the warmongerer will return to take the reins of the German Empire.\n\nThe French seem content to limit their response to this outrage to diplomatic objections, and public opinion in Britain is firmly against a war." - wtt_germany.31.d:0 "The British are refusing to support us against Germany, claiming that the question of German monarchy is an internal one. If we go to war with the Germans, it looks like we will be on our own.\n\nPublic opinion in France is against a war, but Germany will only grow stronger, and the return of the Kaiser may well elicit renewed imperialist sentiment. Issuing an ultimatum would be less threatening without Britain on our side. Should we proceed against them alone?" - wtt_germany.32.d:0 "Though popular support for a war is lacking in Britain, the British government has recognized the threat posed by the Germans and they have offered us their full support. We will issue a final ultimatum to Germany to prevent a return of the warmongerer Kaiser. If they refuse, it is time for our forces to drive deep into Germany and put an end to their tyrannical regime!" - wtt_germany.33.d:0 "The British and French have refused to accept the return of our Kaiser, calling it an 'outrage' that the supposed instigator of the Great War is allowed to return to his throne. They are mobilizing their forces against us and have issued an ultimatum that our forces back down at once and return the Kaiser to his exile, or our nations are at war." - wtt_germany.33.a:0 "We cannot back down! Long live the Kaiser!" - wtt_germany.34.d:0 "The British have seen reason and accepted the return of the Kaiser, but the mad French are refusing to back down! Claiming that this incident constitutes a direct threat against the security of their nation, they are mobilizing their forces and may sweep in across the border at any moment! We are at war!" - wtt_germany.35.d:0 "Despite our clarification that the return of Wilhelm II to the German throne would be viewed as an act of war, Germany has refused to back down and return their Kaiser into exile, ignoring our warning. This means that despite our best efforts to maintain peace, war has once again broken out in Europe." - wtt_germany.38.t:0 "Germans Demand Return of Qingdao" - wtt_germany.38.desc:0 "The German Empire has spewed more and more rhetoric lately, urging for a return to colonialism. They have now, through diplomatic channels, issued a demand for the return of their old enclave in Qingdao. Perhaps we can use this to come to a lucrative arrangement..." - wtt_germany.38.a:0 "Demand the continued support of Von Falkenhausen in return." - wtt_germany.38.b:0 "Perhaps they will be useful to have in the area." - wtt_germany.38.c:0 "We will never again give up our sovereign territory!" - wtt_germany.39.t:0 "China Offers Qingdao Trade" - wtt_germany.39.desc:0 "Chinese officials have contacted us with an offer of a potential trade, which they say will satisfy both parties. They propose to return Qingdao to rightful German hands, in return for a guarantee that we will not recall Von Falkenhausen's mission." - wtt_germany.39.a:0 "We can agree to that." - wtt_germany.39.b:0 "No, we must keep our options open." - wtt_germany.40.t:0 "[From.GetNameDefCap] Rejects Qingdao Demand" - wtt_germany.40.desc:0 "[From.GetNameDefCap] has utterly rejected our demands for the return of Qingdao. We will have no choice but to seek its return at a later date." - wtt_germany.40.a:0 "We can be patient." - wtt_germany.41.t:0 "Germany Accepts Qingdao Trade" - wtt_germany.41.desc:0 "The German Empire has accepted our proposal for a trade for Qingdao. They have guaranteed us the continued support of Von Falkenhausen." - wtt_germany.42.t:0 "Germany Rejects Qingdao Trade" - wtt_germany.42.desc:0 "The German Empire has rejected our proposal for a trade for Qingdao. They must not have desired their enclave very badly." - wtt_germany.43.t:0 "Germans Demand Return of Qingdao" - wtt_germany.43.desc:0 "The German Empire has spewed more and more rhetoric lately, urging for a return to colonialism. Despite the nature of their loss of Qingdao - our seizure of it in 1914 - the Germans have now decided to open diplomatic negotiations, requesting the return of their old enclave in Qingdao. Perhaps we can use this to come to a lucrative arrangement..." - wtt_germany.43.a:0 "Demand the Germans withdraw Von Falkenhausen in return." - wtt_germany.43.b:0 "They will never set foot in the Far East again!" - wtt_germany.44.t:0 "Japan Offers Qingdao Trade" - wtt_germany.44.desc:0 "Japanese officials have contacted us with an offer of a potential trade, which they say will satisfy both parties. They propose to return Qingdao to rightful German hands, in return for the immediate withdrawal of Von Falkenhausen's mission in China." - wtt_germany.46.desc:0 "The German Empire has accepted our proposal for a trade for Qingdao. They have immediately withdrawn the mission of Von Falkenhausen to China." - wtt_germany.48.t:0 "[From.GetNameDefCap] Accepts Demands" - wtt_germany.48.desc:0 "[From.GetNameDefCap] has accepted our demands, and arranged for the immediate return of Qingdao to German hands!" - wtt_germany.49.t:0 "Nazi Expulsion Takes Heavy Toll on [nazi_state_withdrawn.GetName]" - wtt_germany.49.desc:0 "We have finally managed to secure control over [nazi_state_withdrawn.GetName], but fighting has been severe. The Nazis grow ever more fanatical and desperate as we advance, often fighting until the surrounding area lies in ruins. There have also been reports of scorched-earth tactics, in accordance with Hitler's 'Nerobefehl'.\n\nWe can undoubtedly expect further destruction on this scale until we end this war." - wtt_germany.49.a:0 "A small price to rid our fatherland of them." - wtt_germany.50.t:0 "Hitler Found Dead" - wtt_germany.50.desc:0 "With the capture of Berlin, our troops discovered the corpse of Hitler in a bunker in the city. Choosing death over seeing anti-fascist elements take over the country, the leader evidently took his own life rather than risk capture.\n\nIn his stead, Heinrich Himmler has now stepped up to lead the Nazis, and he has already affirmed that the government will not abate in their fight against 'anti-German treason'." - wtt_germany.50.a:0 "It is the beginning of the end for the Nazis." - wtt_germany.51.t:0 "Reinstate the Captured Nazi Leadership?" - wtt_germany.51.desc:0 "The war has become so protracted and devastating that now all adult Germans have been called upon to serve. Though they may not fit in with our ideological views, the captured Nazi leadership does possess skills that may prove useful to us in this time of need.\n\nWe could make them an offer to regain their freedom after the war, in return for lending their skills to our cause now." - wtt_germany.51.a:0 "Yes, partly reinstate the Nazi leadership." - reinstate_nazi_leadership_TT:0 "Fascist-only advisors are once more eligible for service.\n" - wtt_germany.51.b:0 "No, they are fine where they are." - wtt_germany.51.c:0 "We cannot allow them to regain freedom should the war go badly... Hang them!" - wtt_germany.52.t:0 "Democratic Civil War in [From.From.GetName]" - wtt_germany.52.desc:0 "Democratic elements in [From.From.GetName] have launched a civil war to re-establish free elections and return power to the people. They may well require our help, and their success will ensure a future ally for our cause." - wtt_germany.52.a:0 "We will stand by democracy!" - wtt_germany.52.b:0 "They will have to solve their own problems." - wtt_germany.53.t:0 "Austrian Pro-German Sentiment Soars" - wtt_germany.53.desc:0 "German sentiment in our southern neighbor Austria has increased remarkably now that we have been allies for some time. It would not be outside the realm of possibility that a referendum calling for unification with Germany might meet with the Austrian people's approval. Should we urge the Austrian government to hold one?" - wtt_germany.53.a:0 "Yes, the Lesser German solution was a mistake." - wtt_germany.53.b:0 "No, the Greater German solution would be a mistake." - wtt_germany.54.t:0 "German Government Urges Referendum for Unification" - wtt_germany.54.desc:0 "The German government has approached us with a proposal for unification, should the Austrian people wish it. They urge us to hold a referendum so that we may find out." - wtt_germany.54.a:0 "Campaign in favor of unification." - wtt_germany.54.b:0 "Campaign against unification." - wtt_germany.55.t:0 "Austrian People Votes for Unification" - wtt_germany.55.desc:0 "The Austrian people have voted in favor of unification with their northern brethren. Integration of the Austrian states and their military will commence immediately." - wtt_germany.55.a:0 "A great day for the German Question!" - wtt_germany.56.t:0 "The German Territories" - wtt_germany.56.desc:0 "Our war with the Soviet Union is not proceeding well, and we risk losing everything. To our West, Germany has undergone rapid changes the last few years, but is now a stalwart defender of democratic values. Arranging a quick return of the old German Territories of Danzig and Poznan would undoubtedly save millions from oppression under the Soviet boot." - wtt_germany.56.a:0 "Rather Germany than the Soviets!" - wtt_germany.56.b:0 "Never! What is Polish shall fall Polish!" - wtt_germany.57.t:0 "Poland Offers Return of German Territories" - wtt_germany.57.desc:0 "As the Polish war with the Soviet Union is not going well, their government has reached out to us through secret channels, offering the rapid return of our old territories of Danzig and Poznan. They argue that their people will undoubtedly fare better under democratic German rule, than under the oppressive Soviet boot." - wtt_germany.57.a:0 "Such guile! We will keep them safe." - wtt_germany.57.b:0 "No, we cannot risk Soviet retaliation." - wtt_germany.58.t:0 "Austrian People Rejects Unification" - wtt_germany.58.desc:0 "The Austrian people has rejected our calls for unification, preferring to continue Austrian independence at least for a little while longer." - wtt_germany.58.a:0 "We must respect their wishes." - wtt_germany.59.t:0 "Germany Accepts Danzig and Poznan" - wtt_germany.59.desc:0 "The German government has decided to accept their old territories, and has solemnly vowed to stand for the protection of the region's Polish citizens." - wtt_germany.59.a:0 "At least they will be safe." - wtt_germany.60.t:0 "Germany Rejects Danzig and Poznan" - wtt_germany.60.desc:0 "The German government has informed us that they are unable to accept our offer. They fear Soviet retaliation, and so feel they cannot take the risk." - wtt_germany.60.a:0 "Who will help them when all have fallen to the Reds?" - wtt_germany.62.t:0 "Companies Demand MEFO Payment" - wtt_germany.62.desc:0 "With the end of the recent war, the companies we have issued MEFO bills to are now pushing for us to issue payments. They claim there is no longer any necessity to withhold payments 'for the good of the fatherland'." - wtt_germany.62.a:0 "Very well." - wtt_germany.63.t:0 "[GER.GetName] Reintegrates Alsace-Lorraine" - wtt_germany.63.desc:0 "The [GER.GetAdjective] government has issued legislation stipulating the reintegration of Alsace-Lorraine and Luxemburg into the [GER.GetName]. Mass drafting of our population has already begun..." - wtt_germany.63.a:0 "The bastards! This isn't over!" - wtt_germany.64.t:0 "[GER.GetName] Reintegrates Luxemburg" - wtt_germany.64.a:0 "What can we do?" - wtt_germany.65.t:0 "[From.GetName] Requests War Participation" - wtt_germany.65.desc:0 "[From.GetNameDefCap] has informed us that they require our land to march their forces to the Soviet enemy. They remind us that we are under their protection against the communists, and that we therefore owe them our assistance in their current war." - wtt_germany.65.a:0 "They are correct - we will join their war." - wtt_germany.65.b:0 "Who do they think they are?! Never!" - wtt_germany.66.t:0 "[From.GetName] Accepts Demands" - wtt_germany.66.desc:0 "[From.GetNameDefCap] has decided to join us in our war against [SOV.GetNameDef], which has the added benefit of allowing our forces passage through their country." - wtt_germany.67.t:0 "[From.GetName] Rejects Demands" - wtt_germany.67.desc:0 "[From.GetNameDefCap] has rebuffed our demands for war participation, and continues to close their borders to our troops. If the Poles are not willing to grant us access for our forces, then we shall simply have to go over them." - wtt_germany.67.a:0 "They brought it on themselves." - wtt_germany.68.t:0 "[From.GetName] Proposes Imperial Reintegration" - wtt_germany.68.desc:0 "The [From.GetAdjective] government has approached us with a proposal for reintegration of the old Austro-Hungarian Empire. Since pro-imperial sentiment is quite high in our respective nations, they claim that it would be in the best interests of everyone to unite our nations." - wtt_germany.68.a:0 "An excellent idea! We shall accept." - wtt_germany.68.b:0 "Join them willingly? Never!" - wtt_germany.69.t:0 "[From.GetName] Accepts Integration" - wtt_germany.69.desc:0 "The [From.GetAdjective] government has responded to our proposal for reintegration of the old Austro-Hungarian Empire. They acknowledge the benefits of this move, and have stated their willingness to integrate their nation with ours, should all parties accept." - wtt_germany.70.t:0 "[From.GetName] Rejects Integration" - wtt_germany.70.desc:0 "The [From.GetAdjective] government has responded to our proposal for reintegration of the old Austro-Hungarian Empire. In no uncertain terms, they have indicated that they will never willingly accept our leadership in such a venture." - wtt_germany.71.t:0 "The Re-formation of the Austro-Hungarian Empire" - wtt_germany.71.desc:0 "Both our neighboring Austro-Hungarian successor states have accepted the proposed re-integration of their lands into our nation, and thereby re-forming into the Austro-Hungarian Empire. The signing of the treaty of re-unification has been greeted by extatic masses in the streets, and the [GER.GetAdjective] government has eagerly welcomed us back into their alliance." - wtt_germany.71.a:0 "A new era for Austria-Hungary dawns." - wtt_germany.72.t:0 "[From.GetName] Proposes Economic Integration" - wtt_germany.72.desc:0 "As we are already closely allied, [From.GetNameDef] has come with a proposal to aid us in the expansion of our military economy, by integrating our economies more fully. This would greatly aid our military growth, but it would also make us subordinate to them in matters of foreign policy." - wtt_germany.72.a:0 "A great idea - our fates were intertwined anyway." - wtt_germany.72_tt:0 "§RWe will lose control over any subjects we might have.§!\n" - wtt_germany.72.b:0 "We think not; our sovereignty is too valuable." - wtt_germany.73.t:0 "[From.GetName] Accepts Economic Integration" - wtt_germany.73.desc:0 "The [From.GetAdjective] government informs us that they accept our proposal for the integration of our war economies. They eagerly await our guidance so that they may model their military on our template of success." - wtt_germany.73.a:0 "Under our tutelage their armies will swell." - wtt_germany.74.t:0 "[From.GetName] Rejects Economic Integration" - wtt_germany.74.desc:0 "The [From.GetAdjective] government informs us that they reject our proposal for the integration of our war economies. They value their sovereignty more than the usefulness of their armies..." - wtt_germany.74.a:0 "They reject greatness itself!" - wtt_germany.999.t:0 "[From.GetLeader] Requests Reinstatement of Royal Titles" - wtt_germany.999.desc:0 "On behalf of Kaiser [From.GetLeader], the [From.GetAdjective] government has requested that we revert the deprivation of British peerages and royal titles from German royal and princely families, as allowed by the Titles Deprivation Act 1917. They argue that this would show the world how the British and German royal and princely families have already returned to their pre-war good relations, and thus this would serve as a symbol of future Anglo-German friendship." - wtt_germany.999.a:0 "This is a great idea!" - wtt_germany.999.b:0 "We think not." - wtt_germany.1000.t:0 "[From.GetAdjective] Government Accepts Request" - wtt_germany.1000.desc:0 "The [From.GetAdjective] government has decided to support our request for the reinstatement of British peerages and royal titles to German royal and princely families. They propose a grand 'royal ceremony of the century', to which all German royalty is invited to personally be returned the titles that were wrongfully taken from them two decades ago.\n\nIt is proposed by Imperial advisors that the entire extended royal family make a grand entrance using the very pinnacle of German technology. The state-of-the-art Hindenburg airship would suit the occasion perfectly." - wtt_germany.1000.a:0 "An excellent idea! We shall send a liaison." - wtt_germany.1000.a_tt:1 "Princess Victoria Louise is sent ahead to aid in the preparations of this grand ceremony. This will tax our government's resources somewhat.\n" - wtt_germany.1000.b:0 "An excellent idea! We shall all travel together." - wtt_germany.1000.b_tt:0 "The entire extended royal family will travel aboard the Hindenburg to the ceremony. This will increase the Imperial Family's prestige in the eyes of our allies and our people, strengthening our government's position.\n" - wtt_germany.1001.t:0 "Hindenburg Aflame in London" - wtt_germany.1001.desc:1 "In a terrible tragedy, the Hindenburg was destroyed today while attempting to dock in London. For reasons not yet determined, the airship was engulfed in flames and crashed to the ground, claiming the lives of all passengers and crew aboard - including virtually all members of the extended German Imperial Family.\n\nThe only survivor is the Princess Victoria Louise, who was sent ahead to aid in the preparations of the ceremony. The Princess, the third to bear the name 'Victoria' after her grandmother, German Empress Victoria, and her great-grandmother Queen Victoria, has therefore become the only remaining heir to the throne. Still shaken from having lost her family, she has now nevertheless ascended to the throne as Kaiserin Victoria I of the German Empire." - wtt_germany.1001.a:0 "The Kaiser is dead... Long live the Kaiserin!" - wtt_germany.1002.desc:0 "In a terrible tragedy, the Hindenburg was destroyed today while attempting to dock in London. For reasons not yet determined, the airship was engulfed in flames and crashed to the ground, claiming the lives of all passengers and crew aboard - including all members of the extended German Imperial Family.\n\nWith the utter elimination of the Imperial Family, the government has assumed direct control, but it seems unlikely that this will see the return of democracy in the short term." - wtt_germany.1002.a:0 "A tragedy!" - wtt_germany.1003.t:0 "[From.GetAdjective] Government Rejects Request" - wtt_germany.1003.desc:0 "The [From.GetAdjective] government, after a lengthy session in parliament, has decided to reject our request for reinstatement of British peerages and royal titles to German royal and princely families." - wtt_germany.1003.a:0 "That is most unfortunate..." - wtt_news.1000.desc:0 "In a terrible tragedy, the Hindenburg was destroyed today while attempting to dock in London. For reasons not yet determined, the airship was engulfed in flames and crashed to the ground, claiming the lives of all passengers and crew aboard - including virtually all members of the extended German Imperial Family.\n\nThe only survivor is the Princess Victoria Louise, who was sent ahead to aid in the preparations of the ceremony. The princess, the third royal to bear the name 'Victoria' after her grandmother, German Empress Victoria, and her great-grandmother Queen Victoria, has therefore become the only remaining heir to the throne. Still shaken from having lost her family, she has now nevertheless ascended to the throne as Kaiserin Victoria I of the German Empire." - wtt_news.1000.a:0 "A terrible tragidy... With unexpected results." - wtt_news.1001.desc:0 "In a terrible tragedy, the Hindenburg was destroyed today while attempting to dock in London. For reasons not yet determined, the airship was engulfed in flames and crashed to the ground, claiming the lives of all passengers and crew aboard - including all members of the extended German Imperial Family.\n\nWith the utter decimation of the Imperial Family, the government has assumed direct control, but it seems unlikely that this will see the return of democracy in the short term." - wtt_news.1001.a:0 "Such a terrible tragedy!" - wtt_news.1.t:0 "Germany Embroiled in Civil War" - wtt_news.1.desc:0 "A sudden Wehrmacht coup, led by the famed Field Marshal August von Mackensen, has triggered a civil war in Germany early this morning. Fascists, Royalists, and Democrats alike have taken up arms against their former countrymen, and military units have been removed from the borders to see to the internal threat.\n\nThe fascists, under orders of Hitler, have already vowed to destroy the nation rather than see it fall to 'treasonous Germans'." - wtt_news.1.a:0 "There is no turning back now." - wtt_news.1.b:0 "Betrayed by the military! We cannot suffer the same." - wtt_news.1.c:0 "Let us hope peace will soon return to Europe..." - wtt_news.2.t:0 "[From.GetNameDefCap] Blocks Return of Wilhelm II" - wtt_news.2.desc:0 "Not long after the German Empire lifted the exile on Wilhelm II in a surprise announcement yesterday morning, Dutch authorities blocked the old Kaiser's motorcade before it passed the German border, and forced it to return to his residence of Huis Doorn.\n\nAn official Dutch communiqué cites concerns for destabilizing the continent should Wilhelm II be allowed to assume the German throne once more, and the Dutch government has therefore taken it upon themselves to place the old Kaiser in house arrest.\n\nA German response to the crisis has yet to be made, but public outcry has included the demand for military force to be used to see to the Kaiser's return.\n" - wtt_news.2.a:0 "How dare they?!" - wtt_news.2.b:0 "They had better know what they are doing..." - wtt_news.2.c:0 "Someone had to take a stand." - wtt_news.3.t:0 "Wilhelm II Returns to the German Empire" - wtt_news.3.desc:0 "In a surprise announcement yesterday morning, the German government officially lifted the exile on Wilhelm II. Later in the day, the old Kaiser's motorcade passed the Dutch-German border, and upon his return to Berlin he was ceremoniously reinstated as Kaiser of the German Empire.\n\nThe Kaiser has already vowed to see Germany returned to its old greatness, but it remains to be seen which direction the nation will take with its diplomacy." - wtt_news.3.a:0 "Long live the Kaiser!" - wtt_news.3.b:0 "A return to the start of the century?" - wtt_news.3.c:0 "We have done our part in keeping him safe." - wtt_news.3.d:0 "We should have pushed the Dutch harder for his extradition!" - wtt_news.4.t:0 "Wilhelm II Freed from Dutch House Arrest" - wtt_news.4.desc:0 "Despite vain Dutch attempts to resist the German advance, the government saw no choice but to capitulate in the face of overwhelming German force. German troops freed the old Kaiser from his house arrest at Huis Doorn, and has since his return to Berlin been ceremoniously reinstated as Kaiser of the German Empire.\n\nThe Kaiser has already vowed to see Germany returned to its old greatness, but it remains to be seen which direction the nation will take with its diplomacy." - wtt_news.4.a:0 "None shall stop the German Empire!" - wtt_news.4.b:0 "It was a foolish gesture of the Dutch." - wtt_news.4.c:0 "Perhaps this was not such a good idea after all..." - wtt_news.5.t:0 "Mussolini Assassinated" - wtt_news.5.desc:1 "Reports from Rome indicate Il Duce was shot and killed in broad daylight earlier today, in the streets of the city. Concurrently, elements in the government have made moves to seize power from the Italian fascists. A wave of arrests was made, and military units cordoned off government buildings and streets, instating a curfew.\n\nSpokesmen of the coup government have announced their loyalty to Vittorio Emanuele III, and in his first act as leader of Italy the King signed an alliance treaty with the German Empire." - wtt_news.5.a:0 "Everything went perfectly." - wtt_news.5.b:0 "Long live the King!" - wtt_news.5.c:0 "The Germans must have had a hand in this..." - wtt_news.6.t:0 "Austria-Hungary Reformed" - wtt_news.6.desc:1 "The Danubian successor states to the Austro-Hungarian Empire have recently undergone a wave of pro-Imperial sentiment, and, under the leadership of [From.GetOldNameDef], have now elected to unify their respective countries once more into Austria-Hungary.\n\nThe new Austro-Hungarian government immediately took steps to sign a formal treaty of alliance with the German Empire, openly giving their support to the German anti-British and anti-French foreign policy." - wtt_news.6.a:0 "And we didn't have to fire a shot." - wtt_news.6.b:0 "Unified once more!" - wtt_news.6.c:0 "A new power block in Europe? Concerning." - wtt_news.7.t:0 "Poland Returns Danzig" - wtt_news.7.desc:0 "The Polish government has accepted a German proposal for the return of Danzig in exchange for military guarantees. A treaty has been drawn up, assuring the Poles that the Germans will come to their aid in the event of any hostilities committed against them.\n\nThough the price has been high, once more entirely cutting off the Poles from the sea, it may well have been worth it in light of the communist threat in the East." - wtt_news.7.a:0 "'Danzig or war'? Hah! Diplomacy prevails again." - wtt_news.7.b:0 "Let us hope the cost was worth it." - wtt_news.7.c:0 "The Germans meddle in our sphere of influence..." - wtt_news.7.d:0 "A beneficial deal for both? We'll see." - wtt_news.8.t:0 "German Civil War Ends" - wtt_news.8.desc:0 "The civil war that has wracked Germany has now come to an end. The fighting was extraordinarily intense, with fanatical resistance by the Nazis causing devastation on a scale reminiscent of the Great War.\n\nIt appears Hitler is dead, and the Nazi leadership imprisoned or executed. The provisional government has now announced that it is necessary to secure their hold over the state and ensure the return of stability to the nation, before there can be any thought of embarking on a process of constitutional reforms." - wtt_news.8.a:0 "Let the rebuilding begin." - wtt_news.8.b:0 "Let us hope the new regime is more accommodating..." - wtt_news.9.t:0 "Soviets Announce Large-Scale Exercises" - wtt_news.9.desc:0 "In response to what they call 'increasingly hostile German rhetoric', the Soviet military has announced a series of large-scale military exercises to be held this year.\n\nIt is hoped the heightened state of readiness will discourage the Germans from 'continuing on their slanderous tirade', according to spokesmen of the Soviet Government." - wtt_news.9.a:0 "They played right into our hands!" - wtt_news.9.b:0 "That will surely get them thinking." - wtt_news.9.c:0 "Let us hope the Germans don't fail us..." - wtt_news.9.d:0 "They are not helping defuse the situation..." - wtt_news.10.t:0 "Soviets Ramp Up Military Build-Up" - wtt_news.10.desc:0 "In response to the recent German announcement to create a Central European Alliance against Soviet aggression, the Soviet government has passed measures to see to the drastic speed-up of military production.\n\nA spokesman of the Kremlin made it clear, in no uncertain terms, that the Soviet Union cannot sit by and watch this threat unfold at their borders. Measures to counter it must be, and have been taken at once." - wtt_news.10.a:0 "They continue to unwittingly help our cause!" - wtt_news.10.b:0 "Surely they won't dare try anything even more foolish!" - wtt_news.10.c:0 "An alliance has been formed, at least." - wtt_news.10.d:0 "This is escalating rapidly..." - wtt_news.11.t:0 "Soviets Move to Secure Sphere" - wtt_news.11.desc:0 "With the invitation of one of their border states to the [GER.GetFactionName], the Soviet government has warned in no unclear terms against further interference in the affairs of 'their sphere of influence'.\n\nUncomfirmed reports have indicated a mobilization of the Soviet military forces, possibly preparing for war." - wtt_news.11.a:0 "Have we finally pushed them far enough?" - wtt_news.11.b:0 "We must secure our borders!" - wtt_news.11.c:0 "Together we can stand against them!" - wtt_news.11.d:0 "Is this the spark?" - wtt_news.11.e:0 "We must prepare for war!" - wtt_news.12.t:0 "Protest Against the Kaiser Leads to War" - wtt_news.12.desc:0 "In response to the German decision to allow the return of Wilhelm II, [FRA.GetNameDef] and [Eng.GetNameDef] have declared war on [GER.GetNameDef]. The French and British cite the 'flagrant German obstinacy' in allowing a 'known war criminal' to become head of state once again as the cause of this escalation.\n\nSpokesmen of their respective governments argue that it is utterly immoral to allow the 'key instigator' of the Great War to assume the German Crown once again, and that the German government has ignored all warnings. 'We had no other choice'." - wtt_news.12.a:0 "They presume to tell us who can be our leader?!" - wtt_news.12.b:0 "They forced our hand!" - wtt_news.12.c:0 "And so we are back to 1914." - wtt_news.13.t:0 "The Wilhelm III Compromise" - wtt_news.13.desc:0 "In response to vehement Anglo-French opposition to the return of Wilhelm II as Kaiser, the German government has proposed a compromise wherein Wilhelm II will continue to live in exile, but his son will assume the German throne as Wilhelm III.\n\nHaving been accepted by [ENG.GetNameDef] and [FRA.GetNameDef], it is hoped this will lead to enduring peace between the great European powers." - wtt_news.13.a:0 "We had no other choice." - wtt_news.13.b:0 "Thankfully the Germans saw reason." - wtt_news.13.c:0 "Peace has been maintained..." - wtt_news.14.desc:0 "In response to the German decision to allow the return of Wilhelm II, and in spite of lacking British support, [FRA.GetNameDef] has declared war on [GER.GetNameDef]. The French cite the 'flagrant German obstinacy' in allowing a 'known war criminal' to become head of state once again as the cause of this escalation.\n\nSpokesmen of the French government argue that it is utterly immoral to allow the 'key instigator' of the Great War to assume the German Crown once again, and that the German government has ignored all warnings. 'We had no other choice'." - wtt_news.14.c:0 "Foolish, obstinate Frenchmen!" - wtt_news.14.d:0 "But what will the British do?" - wtt_news.15.desc:0 "In response to vehement French opposition to the return of Wilhelm II as Kaiser, the German government has proposed a compromise wherein Wilhelm II will continue to live in exile, but his son will assume the German throne as Wilhelm III.\n\nHaving been accepted by [FRA.GetNameDef], it is hoped this will lead to enduring peace between the great continental European powers." - wtt_news.15.c:0 "Thankfully the Germans were more reasonable than the French..." - wtt_news.16.t:0 "China Restores German Rule to Tsingtao" - wtt_news.16.desc:0 "The Chinese government has decided to accede to recent German demands for the return of their old enclave in Qingdao.\n\nEffective immediately, German control has been reinstated inside the city limits, and the German Government has renamed it to its old German name of Tsingtao." - wtt_news.16.a:0 "We shall see our return to colonial glory, yet." - wtt_news.16.b:0 "It was but a small price to pay." - wtt_news.16.c:0 "We took it from them before, we can do so again!" - wtt_news.16.d:0 "German colonialism, once more?" - wtt_news.17.t:0 "Japan Restores German Rule to Tsingtao" - wtt_news.17.desc:0 "The Japanese government has decided to accede to recent German demands for the return of their old enclave in Qingdao.\n\nEffective immediately, German control has been reinstated inside the city limits, and the German Government has renamed it to its old German name of Tsingtao." - wtt_news.17.b:0 "How dare they surrender -our- territory?!" - wtt_news.17.c:0 "Consider us even for 1914." - wtt_news.18.t:0 "Austria Votes to Join Germany" - wtt_news.18.desc:0 "Since the close allied cooperation of [AUS.GetNameDef] and [GER.GetNameDef] began, pro-unification sentiment has risen dramatically in Austria. A plebiscite held yesterday saw the Austrian people vote overwhelmingly in favor of unification with their northern neighbours.\n\nIntegration of the Austrian state has been pushed forward immediately, and the old state was abolished this morning." - wtt_news.18.a:0 "For a Greater Germany." - wtt_news.18.b:0 "It was what they wished." - wtt_news.19.t:0 "Poland Returns Danzig and Poznan" - wtt_news.19.desc:0 "In face of the continued Soviet onslaught, the Polish government this morning announced the immediate return of the old German territories of Danzig and Poznan to [GER.GetNameDef].\n\nDespite utter silence on the part of the Polish or German governments on the reasons why, experts agree it most likely is an attempt to keep these territories out of Soviet hands, in the face of imminent Polish military collapse." - wtt_news.19.a:0 "We shall protect them with our lives." - wtt_news.19.b:0 "It was the best option..." - wtt_news.19.c:0 "Devious and underhanded diplomatic weaseling!" - wtt_news.19.d:0 "A remarkably sly diplomatic arrangement..." - wtt_news.20.t:0 "Germany Announces Anti-Soviet Pact" - wtt_news.20.desc:1 "In light of increased perceived Soviet aggression, the [GER.GetName] has offered "states under immediate threat from communism" a chance to form an alliance against the [SOU.GetName]. Any country in the alliance will be committed to fighting a war against the [SOU.GetName], should there come a time when a member is attacked." - wtt_news.21.t:0 "[From.GetName] Speaks Out Against Soviet Union" - wtt_news.21.desc:0 "The German government has stepped up its rhetoric against the Soviet Union, warning that Europe's Eastern Neighbor is a "Great Red Menace" that looms over the continent. Whether it is fear-mongering or has a basis in fact is disputed, but it certainly seems like the Germans are aiming to unite the continent against the East." - wtt_news.21.a:0 "The world must know of the Soviet threat!" - wtt_news.21.b:0 "How dare they slander us like that?!" - wtt_news.21.d:0 "We shall see how the Soviets receive this." - wtt_news.22.t:0 "[From.GetName] Announces Central European Alliance" - wtt_news.22.desc:1 "Germany has continued on their recent anti-Soviet rhetoric, and has now developed a concrete plan to curb Soviet influence in the rest of the continent. A new alliance, the Central European Alliance, has been formed and, with time, will hopefully be able to provide its members with protection against what the Germans call "unbridled Soviet aggression"." - wtt_news.22.a:0 "We will lead Free Europe against the threat of communism!" - wtt_news.22.b:0 "They increasingly threaten our position..." - wtt_news.22.c:0 "At last, the Germans are taking steps." - wtt_news.22.d:0 "It's unlikely the Soviets will take this lying down..." - wtt_news.23.t:0 "Vichy France Annexed" - wtt_news.23.desc:0 "A German operation to annex Vichy France, launched earlier this week, has since been completed successfully. German forces were able to take control of the naval base at Toulon before orders to scuttle the French fleet could be sent out. As such, the entire French fleet has fallen into German hands, intact." - wtt_news.23.a:0 "A great success!" - wtt_news.23.b:0 "They failed in their duty..." - wtt_news.23.c:0 "The Germans are ruthless." - wtt_news.24.t:0 "French Scuttle Fleet" - wtt_news.24.desc:0 "A German operation to annex Vichy France, launched earlier this week, has since been completed successfully. However, German forces were unable to take control of the naval base at Toulon before orders to scuttle the French fleet could be sent out. As such, the entire French fleet has been scuttled, in order to keep it out of German hands." - wtt_news.24.a:0 "A disappointment, but it is of no consequence." - wtt_news.24.b:0 "They kept their word to the end." - wtt_news.24.c:0 "A final act of French defiance." - wtt_burma_road.1.t:0 "Burma Road closed" - wtt_burma_road.1.desc:0 "[occupying_country.GetAdjective] forces attacking into [state_occupied.GetName] have reached the Burma road and cut the trail in several places. No further supplies can reach us through this path." - wtt_burma_road.1.a:0 "This will not make things any easier." - wtt_burma_road.2.desc:0 "The [From.GetAdjective] Government has decided to no longer allow traffic through the Burma road. All convoys on the road have been halted and ordered to return. No further supplies can reach us through this path." - wtt_burma_road.2.desc_war_with_from:0 "[From.GetAdjective] forces have advanced rapidly up the Burma road and overrun several vital bridges and crossings. The road is closed to all traffic now and no further supplies can reach us through this route." - wtt_burma_road.3.t:0 "[From.GetNameDefCap] Reopens Part of the Burma Road" - wtt_burma_road.3.desc:0 "Following the successful recapture of much of the Burma Road, the [From.GetAdjective] authorities have allowed traffic to resume along the trail. While remnants of enemy forces make the trip even more dangerous than before, supplies are once again flowing." - wtt_burma_road.3.a:0 "A good first step." - wtt_burma_road.4.t:0 "[From.GetNameDefCap] Reopens the Burma Road" - wtt_burma_road.4.desc:0 "The first supply convoy through the reopened Burma road has reached Yunnan today. While it will take time until traffic flows smoothly again, supplies are once again reaching us." - wtt_burma_road.4.a:0 "A much needed relief." - wtt_ledo_road.1.t:0 "Ledo Road closed" - wtt_ledo_road.1.desc:0 "[occupying_country.GetAdjective] forces attacking into [state_occupied.GetName] have reached the Ledo road and cut the trail in several places. No further supplies can reach us through this path." - wtt_ledo_road.2.desc:0 "The [From.GetAdjective] Government has decided to no longer allow traffic through the Ledo road. All convoys on the road have been halted and ordered to return. No further supplies can reach us through this path." - wtt_ledo_road.2.desc_war_with_from:0 "[From.GetAdjective] forces have advanced rapidly up the Ledo road and overrun several vital bridges and crossings. The road is closed to all traffic now and no further supplies can reach us through this route." - wtt_ledo_road.3.t:0 "[From.GetNameDefCap] Reopens Part of the Ledo Road" - wtt_ledo_road.3.desc:0 "Following the successful recapture of much of the Ledo Road, the [From.GetAdjective] authorities have allowed traffic to resume along the trail. While remnants of enemy forces make the trip even more dangerous than before, supplies are once again flowing." - wtt_ledo_road.3.a:0 "A good first step." - wtt_ledo_road.4.t:0 "[From.GetNameDefCap] Reopens the Ledo Road" - wtt_ledo_road.4.desc:0 "he first supply convoy through the reopened Ledo road has reached Yunnan today. While it will take time until traffic flows smoothly again, supplies are once again reaching us." - wtt_ledo_road.4.a:0 "Great news!" - wtt_the_hump.1.t:0 "Hump Airlift Suspended" - wtt_the_hump.1.desc:0 "[occupying_country.GetAdjective] forces have overrun several airfields in [state_occupied.GetName], forcing the local air transport wings flying the Himalaya Route to evacuate. With the threat of enemy fighter activity increasing and the longer ranges making it impossible to reach the target on a single load of fuel, the airlift has been suspended. No further supplies can reach us through this route." - wtt_the_hump.2.desc:0 "The [From.GetAdjective] Government has ordered all flights over the Himalayas to cease, effective immediately. Despite immediate protests, they have not shown any indication that they might reconsider their approach." - wtt_the_hump.2.desc_war_with_from:0 "[From.GetAdjective] troops have captured the airfields used in the Hump Airlift, making it impossible to supply us by air. No more supplies can be expected from this path." - wtt_the_hump.3.t:0 "[From.GetNameDefCap] Restarts the Hump Airlift" - wtt_the_hump.3.desc:0 "The first [From.GetAdjective] planes have begun to arrive, carrying vital supplies over the Himalayas. While enemy action still poses a threat to the planes, supplies have begun flowing again." - wtt_the_hump.3.a:0 "A good first step." - wtt_the_hump.4.t:0 "[From.GetNameDefCap] Restarts the Hump Airlift" - wtt_the_hump.4.desc:0 "The airlift over the Himalayas is operating at full capacity again, with a tightly controlled schedule of daily flights bringing large amounts of desperately needed supplies." - wtt_the_hump.4.a:0 "Gifts from the sky!" - wtt_hanoi_route.1.t:0 "Hanoi Route closed" - wtt_hanoi_route.1.desc:0 "Cargo ships carrying supplies for our army have been turned away from Hanoi harbor as the route north towards the Chinese border has been closed by [GetVietnamOwner]. \n\nNo further supplies can move through this route." - wtt_hanoi_route.2.desc:0 "Local [From.GetAdjective] authorities have received orders to block any further unloading of war material in Hanoi for transport towards the Chinese border. Armed guards have been posted at the docks to prevent any crews from breaking the blockade. The [From.GetAdjective] Coast guard is turning away any ships still at sea. \n\nNo further supplies can be expected through this channel." - wtt_hanoi_route.2.desc_war_with_from:0 "[From.GetAdjective] forces occupying Hanoi have seized a number of cargo vessels carry supplies for us. Ships still at sea have turned around and are fleeing for neutral harbors.\n\nNo further supplies can be expected through this route." - CHI_vietnam_JAP:0 "the Japanese Army" - CHI_vietnam_FRA:0 "the French authorities" - wtt_china.1.t:0 "China Demands Subjugation" - wtt_china.1.desc:0 "It appears that [From.GetLeader] has made the decision to finally spread his authority to the far areas of China. A representative from the Central Government has arrived, demanding that we follow the orders of [From.GetLeader] or be replaced by a more obedient government." - wtt_china.1.a:0 "Together we stand!" - wtt_china.1.b:0 "Let him try." - wtt_china.2.t:0 "[From.GetLeader] Submits" - wtt_china.2.desc:0 "[From.GetLeader] has sent the messenger back with a personal note, promising to strictly obey our commands and coordinate with our government." - wtt_china.2.a:0 "Good Man." - wtt_china.3.t:0 "[From.GetLeader] Refuses" - wtt_china.3.desc:0 "[From.GetLeader] has returned our note, claiming that the Central Government has no legal authority to replace a provincial governor. It was accompanied by a detailed report stating the combat-readiness of his troops." - wtt_china.3.a:0 "We will see about that." - wtt_china.10.t:0 "China Demands Subjugation" - wtt_china.10.desc:0 "The government of [From.GetLeader] has sent a fiery message, noting a number of policy decisions we have made over the last few months, which they consider to run counter to the national interests of [From.GetNameDef]. Unless we align our policies more closely with the [From.GetAdjective] government, they will take "such measures as they deem necessary."" - wtt_china.10.a:0 "We have no choice." - wtt_china.10.b:0 "We will fight!" - wtt_china.11.t:0 "[From.GetNameDefCap] Submits" - wtt_china.11.desc:0 "The [From.GetAdjective] government has responded to our note and promised to consult us in all further decisions. Our ambassador to [From.GetNameDef] has been promoted to Special Representative and has been tasked with ensuring the [From.GetAdjective] don't stray too far." - wtt_china.11.a:0 "Great!" - wtt_china.12.t:0 "[From.GetNameDefCap] Defiant" - wtt_china.12.desc:0 "Our diplomatic note to [From.GetNameDef] has apparently been leaked to the press, which is now in an uproar. Even the international news papers have written very unfavorable editorials, calling our reasonable requests of consultation "meddling in internal affairs", "a dangerous precedent" and even "naked imperialism". \n\nNeedless to say, the [From.GetAdjective] government has refused to discuss the matter any further and has indicated that bringing it up again would lead to suspension of diplomatic contacts entirely." - wtt_china.12.a:0 "Measures will have to be taken." - wtt_infiltration.1.t:0 "Counter-infiltration Sweep" - wtt_infiltration.2.t:0 "Communist Cell Discovered in [infiltrated_state.GetName]" - wtt_infiltration.2.desc:0 "Investigations by our authorities have uncovered a communist base area in [infiltrated_state.GetName]. The full force of our military should be brought to bear on these bandits as soon as possible. Any delay may allow them to expand their base of operations and make rooting them out much harder." - wtt_infiltration.2.a:0 "Send in the troops." - wtt_infiltration.3.t:0 "Communists contained" - wtt_infiltration.3.desc:0 "During our latest raids on known communist hideouts our agents came up empty handed. We know that communists infiltrators are still active in our country, but it appears that there are no cells operating that we did not know about before." - wtt_infiltration.3.a:0 "Let us eradicate the ones we found!" - wtt_infiltration.4.t:0 "Communist Infiltration defeated?" - wtt_infiltration.4.desc:0 "Reports of a wide-spread communist infiltration seems to have been grossly exaggerated. Raids on a number of known hideouts and communist activists have turned up nothing. This either means that the Communists have been unable to organize any cells, or that we have crushed the ones they managed to create. We must remain vigilant, however, as they will no doubt try to lull us in a sense of security before begining their efforts anew." - wtt_infiltration.4.a:0 "Hopefully we got rid of them all." - wtt_infiltration.5.t:0 "[infiltrated_state.GetName] Base Area Discovered" - wtt_infiltration.5.desc:0 "Nationalist patrols have closed in on our Base Area in [infiltrated_state.GetName]. If they are willing to spend the resources, they may well stamp it out in a concerted military operation." - wtt_infiltration.5.a:0 "Let's hope it won't come to that." - wtt_infiltration.6.t:0 "[infiltrated_state.GetName] Base Area Attacked" - wtt_infiltration.6.desc:1 "Enemy forces have begun their attack on our Base Area in [infiltrated_state.GetName]. No messages have been received from our comrades in the state, but the enemy press is reporting the conclusion of the "[infiltrated_state.GetName] Encirclement and Erradication Campaign". We must assume the worst." - wtt_infiltration.6.a:0 "The revolution has suffered a setback." - wtt_infiltration.10.t:0 "Communist Uprising" - wtt_infiltration.10.desc:0 "Things are afoot in the Communist Party. Our intelligence serives have intercepted a number of couriers moving between base areas, carrying secret orders talking about "The Revolutionary Counterstroke" being prepared in secret bases all across the country. Soldiers and supplies are being gathered for a major operation - perhaps even a nation-wide uprising. We must make preparations immediately." - wtt_infiltration.10.a:0 "Prepare to fight for China!" - wtt_infiltration.21.t:0 "Communist Cell Discovered in [infiltrated_state.GetName]" - wtt_infiltration.21.desc:0 "Acting on information gathered by the intelligence service, our patrols have uncovered a major Communist Base Area. We should strike at once, before they can get more organized and resist our attempts to remove them." - wtt_infiltration.21.a:0 "Speed is of the essence." - wtt_infiltration.23.t:0 "Communist threat receeding?" - wtt_infiltration.23.desc:0 "A series of raids on known Communist hideouts has uncovered little news about the extent of the Communist infiltration. Extensive interrogation of the arrested Communists revealed nothing we did not know before. \n\nIt would appear as if our intelligence service has a fairly good handle on the issue." - wtt_infiltration.23.a:0 "We should mop up the few cells we know about." - wtt_infiltration.24.a:0 "Hopefully we got rid of them all." - wtt_infiltration.24.t:0 "Communist threat defeated" - wtt_infiltration.24.desc:0 "It seems as if the Communists have been dealt severe blows and setbacks over the last few months. Our agents have intercepted a growing number of messages from Communist Party Headquarters, asking local leaders about their status - often after arresting said leaders and lying in wait for the couriers. For the moment, it appears like the Communists are on the back foot, their organisation on the state level disrupted to the point of ineffectiveness. \n\nWe must remain vigilant, however, for as long as the Communist Party exists in any form, it may yet decide to renew its efforts." - CHI_xian_warlords_upset:0 "This will upset the warlords. They may decide to leave your faction, refuse your attempts to control them and will remember this slight in the future." - wtt_xian_incident.1.t:0 "An invitation from [From.GetLeader]" - wtt_xian_incident.1.desc:0 "[From.GetLeader] has sent a formal invitation to [CHI.GetLeader] to meet in Xi'an to discuss the current situation and future steps in the conflict against the Communists.\n\nRefusing this invitation will be seen as a personal slight by [From.GetLeader] and will no doubt be noticed by the other warlords." - wtt_xian_incident.1.a:0 "Go" - wtt_xian_incident.1.b:0 "Don't Go" - wtt_xian_incident.2.t:0 "[From.GetLeader] arrives in Xi'an" - wtt_xian_incident.2.desc:0 "Traveling with only a small escort, [From.GetLeader] has come to Xi'an to discuss the situation with us. He no doubt expects us to renew our commitment against the communists to wipe them out. With the Japanese army on our doorstep, we will have to make things clear to him." - wtt_xian_incident.2.a:0 "Ask him to ally with the Communists." - wtt_xian_incident.3.t:0 "[From.GetLeader] refuses to meet." - wtt_xian_incident.3.desc:0 "Citing a nasty cold, [CHI.GetLeader] has 'reluctantly' turned down our invitation. Whether this means that he plans to take more direct control of our lands in the immediate future or that someone leaked our plans to him remains to be seen." - wtt_xian_incident.3.a:0 "Maybe he really has a cold?" - wtt_xian_incident.4.t:0 "[From.GetLeader] proposes an alliance with the Communists" - wtt_xian_incident.4.desc:0 "At the Xi'an meeting, [From.GetLeader] has made a surprising suggestion: He believes that we should forge an alliance with the communists to be able to face the Japanese threat as a united front." - wtt_xian_incident.4.a:0 "Perhaps he is right." - wtt_xian_incident.4.b:0 "We still remember how the last one went." - wtt_xian_incident.5.t:0 "[CHI.GetLeader] proposes an alliance." - wtt_xian_incident.5.desc:0 "It seems that the Nationalist camp has finally grown tired of trying to wipe us from the map. At a meeting in Xi'an, [CHI.GetLeader] has apparently agreed to explore the possibility of an alliance with us against the Japanese.\n\nWe should carefully weigh our options." - wtt_xian_incident.5.a:0 "The Japanese are the bigger threat." - wtt_xian_incident.5.b:0 "No deals with the Nationalists!" - wtt_xian_incident.6.t:0 "[From.GetLeader] refuses to ally with the Communists" - wtt_xian_incident.6.desc:0 "Despite our arguments and demands to stop this needless war, [From.GetLeader] has refused to entertain the notion of a United Front with the Communists. It is clear that more decisive measures will need to be taken. Should we arrest him and turn him over to the Communists?" - wtt_xian_incident.6.a:0 "It is our only option." - wtt_xian_incident.6.b:0 "That could easily spiral out of control." - wtt_xian_incident.7.t:0 "[CHI.GetLeader] arrested in [CHI_xian_instigator.GetNameDef]!" - wtt_xian_incident.7.desc_a:1 "[CHI_xian_instigator.GetLeader] has sent a message saying that he has arrested [CHI.GetLeader] and is willing to turn him over to us. \n\nThis may be the best chance we will ever have to execute this enemy of the people!" - wtt_xian_incident.7.desc_b:0 "[From.GetLeader] has refused our proposal to execute [CHI.GetLeader]. Instead, we are supposed to make an alliance with the Nationalists, as apparently we are not yet ready to lead the revolution and defend ourselves against the Japanese at the same time." - wtt_xian_incident.7.a:0 "Ask the Soviets for approval." - wtt_xian_incident.7.b:0 "Off with his head!" - wtt_xian_incident.7.c:0 "We should ally with him against the Japanese." - wtt_xian_incident.7.d:0 "Killing him now would lead to a war we can not win. Let him go." - wtt_xian_incident.8.t:0 "[From.GetLeader] has arrested [CHI.GetLeader]!" - wtt_xian_incident.8.desc:0 "We have intercepted a message from [From.GetLeader], saying that he has [CHI.GetLeader] in custody and wants to turn him over to the Communists. Given the level of hatred they have for him, it is unlikely that he would survive this for long. \n\nIf we want to avoid seeing [CHI.GetLeader] put on a show trial by [PRC.GetLeader] and executed, we must act swiftly and decisively!" - wtt_xian_incident.8.a:0 "Send in the troops!" - wtt_xian_incident.8.b:0 "They wouldn't harm him. Let's wait." - wtt_xian_incident.9.t:0 "[CHI.GetLeader] arrested in [CHI_xian_instigator.GetNameDef]!" - wtt_xian_incident.9.desc:0 "[PRC.GetLeader] has sent a message stating that the Communists have the unique opportunity to put [CHI.GetLeader] on trial for his crimes against the people and the revolution. Executing him would be a huge victory for the communist party in their struggle for leadership in China. \n\nHowever, it would also weaken the Nationalists in a critical moment, perhaps allowing the Japanese to make further progress in China." - wtt_xian_incident.9.a:0 "Another bourgeois enemy meets his end." - wtt_xian_incident.9.b:0 "He is still needed." - wtt_xian_incident.10.t:0 "[PRC.GetLeader] proposes an alliance" - wtt_xian_incident.10.desc:0 "Rather than the expected show trial and subsequent execution, the Communists have instead signalled that they would prefer a formal alliance against the Japanese. \n\nThey are clearly stalling for time, knowing that another good push would see them wiped out. If they actually wanted [CHI.GetLeader] dead, he would already have been executed.\n\nHowever, some people in our government wonder why the Communists would push for an alliance now - perhaps they know something we don't?" - wtt_xian_incident.10.a:0 "As long as they follow our orders." - wtt_xian_incident.10.b:0 "No deals with the Communists!" - wtt_china_shared.1.t:0 "[From.GetNameDefCap] offers support" - wtt_china_shared.1.desc:0 "[From.GetLeader] has arrived at our capital to discuss our situation. Meeting with independence activists as well as the government, he stated that our independence is a vital national interest of [From.GetNameDef], and they are willing to support any attempt to move towards greater independence." - wtt_china_shared.1.a:0 "Their help is more than welcome." - wtt_china_shared.1.b:0 "We are quite happy with our current situation." - wtt_china_shared.2.t:0 "[From.GetNameDefCap] accepts our support" - wtt_china_shared.2.desc:0 "In a private conversation, government officals from [From.GetNameDef] have expressed great interest in what we can do to support an independent state. Funds have been made available for groups advocating greater independence, and we have begun organising a "Provisional Free [From.GetAdjective] Government in Exile"." - wtt_china_shared.2.a:0 "Their fight is our fight." - wtt_china_shared.3.t:0 "[From.GetNameDefCap] refuses our support" - wtt_china_shared.3.desc:0 "In a stern note, [From.GetLeader] has informed us that his government would not tolerate any interference with internal [From.GetAdjective] matters. Diplomatic protocol forbids declaring [From.From.GetLeader] a persona non grata and forbid him entry, but practically our entire delegation has been banned from returning to [From.GetNameDef] instead." - wtt_china_shared.3.a:0 "Shame." - wtt_china_shared.4.t:0 "Independence movement in [From.GetNameDef] gathers strength" - wtt_china_shared.4.desc:0 "It appears that [From.From.GetLeader]'s recent visit to [From.GetNameDef] was not just an exchange of niceties over tea. Recently, the previously separate and splittered independence movements in the country have started to coordinate in a much better fashion. It almost appears as if someone is helping them organise from abroad." - wtt_china_shared.4.a:0 "Unsettling." - wtt_china_shared.10.t:0 "The Flying Tigers" - wtt_china_shared.10.desc_a:0 "Soong Mei-Ling, Wife of Chiang Kai-Shek and one of his most trusted advisers, has travelled to Washington to lobby for increased support to China in its struggle against Japan. The Chinese Air Force is in desperate need of modern planes and skilled pilots to fly them.\n\nSoong's appeal has resonated with the gernal public, and a number of our pilots have resigned from the service to sign up at a Chinese company to provide "Training and Instruction" to Chinese pilots.\n\nWith the issue of pilots resolved, Soong Mei-Ling has approached us with a request to allow the transfer of about 150 of our most modern fighters to reequip the Chinese Air Force." - wtt_china_shared.10.desc_b:0 "The war in China has taken its toll on the Chinese Air Force. Outnumbered and outgunned by their opponents, they have fought gallantly to contest the skies over China. \n\nDespite the bravery of their pilots, the [From.GetAdjective] Air Force is desperately searching for new planes and pilots to replace its losses. A delegation sent by [From.GetLeader] has arrived in Washington to negotiate the transfer of about 150 modern fighters and allowing a similar number of pilots to go to China to fly those planes." - wtt_china_shared.10.a:0 "We must support them in any way we can." - wtt_china_shared.10.b:0 "We must not allow ourselves to be drawn into this conflict." - wtt_china_shared.11.t:0 "The Soviet Volunteer Group" - wtt_china_shared.11.desc_a:0 "The continued fighting in China has created a need to provide air support for our comrades in the [From.GetAdjective] Red Army. [From.GetLeader] has approached us about sending a volunteer group of pilots and planes. He requests about 50 bombers and 100 fighters to provide escort to them. \n\nThis may provide useful experience for our pilots and allow us to test our newest designs in action." - wtt_china_shared.11.desc_b:0 "With the war in China continuing, the [From.GetAdjective] Air Force has been stretched thin trying to defend the airspace over [From.GetNameDef] and provide air support for the fighting troops. [From.GetLeader] has launched a personal appeal to [SOV.GetLeader] to send support in the form of a combined force of about 50 medium bombers and 100 fighters.\n\nThis may prove a useful opportunity to test our most modern equipment under combat conditions." - wtt_china_shared.11.a:0 "We must support them in any way we can." - wtt_china_shared.11.b:0 "They will have to make do with what they have." - wtt_china_shared.12.t:0 "A new general for [From.GetNameDef]" - wtt_china_shared.12.desc:0 "[From.GetLeader] has sent a letter to [USA.GetLeader], suggesting that we send one of our Generals to serve as a Chief of Staff for the [From.GetAdjective] Army. \n\nDoing so would earn us the personal gratitude of [From.GetLeader] and may provide valuable experience for our general as well as help the forces of [From.GetLeader] win the war.\n\nWhich one of our Generals should we send?" - wtt_china_shared.12.a:0 "Send Joseph Stillwell" - wtt_china_shared.12.b:0 "They will have to fend for themselves." - wtt_china_shared.12.c:0 "Send Douglas MacArthur" - wtt_china_shared.12.d:0 "Send Dwight Eisenhower" - wtt_china_shared.13.t:0 "[CHI_USA_General.GetName] Comes to China" - wtt_china_shared.13.desc:0 "[From.GetLeader] has accepted our request for assistance and has ordered [CHI_USA_General.GetName] to report for duty here in China as soon as possible.\n\nThe General is not supposed to be a mere advisor to [Root.GetLeader] but to command troops in the field as well, giving him some first hand experience in fighting in a modern war." - wtt_china_shared.13.a:0 "A valuable addition." - wtt_china_shared.14.t:0 "No help from [From.GetNameDef]" - wtt_china_shared.14.desc:0 "Our request to [From.GetLeader] has fallen on deaf ears. While several high-ranking officers in the US Army have indicated that they would be willing to take the assignment, the Secretary of War and President [From.GetLeader] have both vetoed the idea as impractical and not in the national interest." - wtt_china_shared.14.a:0 "Are they cowards, fools, or both?" - wtt_prc.1.t:0 "[From.GetLeader] suggests an alliance" - wtt_prc.1.desc:0 "After years of ineffective conflict, and with the threat of Japan looming in the background, the communists have approached us with the offer to create a joint government. Our armies would fight side by side, and we will coordinate on our policies.\n\nThe motive behind this sudden change of heart in the communists is less clear, and some in the government believe that is merely the first stage in a plan to take over the country." - wtt_prc.1.a:0 "We must unite against our enemies." - wtt_prc.1.b:0 "We won't fall for this cheap trick." - wtt_prc.2.t:0 "[From.GetLeader] refuses Alliance." - wtt_prc.2.desc:0 "After long deliberation, [From.GetLeader] has decided to turn away our delegation. Our sources inside the government report that he sees communist plots everywhere and believes that we are trying to take over the government and steal the country away from him." - wtt_prc.2.a:0 "How paranoid." - wtt_prc.10.t:0 "[From.GetNameDefCap] demands our Cooperation" - wtt_prc.10.desc:0 "Following the creation of the Government of National Defense, [From.GetNameDef] has made it clear that he does not tolerate any "excessive independence and insubordination". With war against Japan becoming more and more likely, anyone not standing with the Government of National Defense will be treated as a potentially enemy, and [From.GetLeader] openly said that he would not wait until a war breaks out to make a move against the warlords that refuse to bend the knee." - wtt_prc.10.a:0 "We take our chances with the Government." - wtt_prc.10.b:0 "That blustering idiot is clearly bluffing." - wtt_prc.11.t:0 "[From.GetNameDefCap] joins the Government of National Defense" - wtt_prc.11.desc:0 "[From.GetLeader] has seen reason and decided to join our Alliance. His forces will now support us in the battles to come." - wtt_prc.12.t:0 "[From.GetNameDefCap] refuses" - wtt_prc.12.desc:0 "For reasons passing understanding, [From.GetLeader] has refused to cooperate with us on even the most basic matters. He claims that we are nothing but a group of bandits that will be erradicated soon enough, and has called on other warlords to join him in opposition." - wtt_prc.12.a:0 "He will be brought to heel." - PRC_provoke_japan_korea:0 "Korea" - PRC_provoke_japan_manchuria:0 "Manchuria" - wtt_prc.20.t:0 "Chinese Provocation" - wtt_prc.20.desc:0 "New details have emerged about the latest attack on our soil. While none of the perpetrators have been caught so far, evidence clearly suggests that it was a deliberate provocation by the Chinese. \n\nThe Chinese government has been suspiciously slow in condemning the attack, and Chinese newspapers have hailed it as a heroic act of defiance against "Japanese Imperialism".\n\nThe Cabinet has assembled to discuss matters and propose measures to deal with the blatant assault." - wtt_prc.20.a:0 "Demand an apology." - wtt_prc.20.b:0 "Mobilize the troops and prepare to go to war." - wtt_prc.21.t:0 "Arms Factory Sabotaged" - wtt_prc.21.desc:0 "Reports have come in from one of our factories in [JAP.GetManchuriaPuppet], reporting that a major fire broke out last night. Local firefighters are still tackling the blaze, but are confident that they will have the fire under control by the end of the day. The damage to the factory appears to be significant, as the fire appears to have started in the storage area for highly flammable chemicals.\n\nMilitary Intelligence has started a thorough investigation to find out how the fire could break out despite the strictest safety measures. First leads indicate arson as a strong possibility." - wtt_prc.21.a:0 "Who would do such a thing?" - wtt_prc.22.t:0 "Civilian Factory Sabotaged" - wtt_prc.23.t:0 "Bridge Blown" - wtt_prc.23.desc:0 "Sometime during the last night, a major railway bridge in [JAP.GetManchuriaPuppet] collapsed under the weight of a passing ammunition train. Rescue and recovery efforts have been made difficult by the secondary exposions from the ammunition. The crew of the train is still missing, presumed dead.\n\nMilitary Intelligence has dispatched a team to investigate the site as soon as it is safe to do so, to find out how a sturdy bridge could collapse with no warning signs.\n\nLocal witnesses report seeing a small group in the valley below the bridge on the day before the collapse. Their whereabouts are currently unknown." - wtt_prc.24.t:0 "Patrol Ambushed" - wtt_prc.24.desc:0 "One of our patrols in [JAP.GetManchuriaPuppet] has failed to report in. A search party working along the patrol's path found a battlefield, with signs that the patrol was surprised and annihilated in brutal hand-to-hand fighting.\n\nWhether the attackers suffered any casualties is currently unknown, but the only corpses found belong to Japanese Army soldiers.\n\nThey almost appear to have been left deliberately, perhaps to send a message." - wtt_japan.1.t:0 "[From.GetNameDefCap] Wants Overlordship of Our Colonies" - wtt_japan.1.desc:1 "Seizing the opportunity granted by our weakness, the [From.GetAdjective] have offered to 'help' us with 'maintaining order' in our colonies. They argue that, with the fall of our mainland, we have no possibility of maintaining our hold.\n\nIt is clearly a ploy to wrestle control of our colonies away from us, but what choice do we have?" - wtt_japan.1.a:0 "It is time to accept Japanese dominance in the East." - wtt_japan.1.b:0 "They'll have to take them by force!" - wtt_japan.2.t:0 "[From.GetNameDefCap] Grants Overlordship of Colonies" - wtt_japan.2.desc:0 "[From.GetNameDefCap] have carefully considered our offer to 'maintain order' in their colonies, and have decided to accept. They have effectively transferred total control over to us." - wtt_japan.2.a:0 "A wise decision." - wtt_japan.3.t:0 "[From.GetNameDefCap] Refuses Overlordship of Colonies" - wtt_japan.3.desc:0 "[From.GetNameDefCap] have carefully considered our offer to 'maintain order' in their colonies, and have decided to reject it." - wtt_japan.3.a:0 "We shall see how that pans out for them." - wtt_japan.11.t:0 "Non-Aggression Pact with [From.GetNameDef]" - wtt_japan.11.desc:0 "Despite tensions between [From.GetAdjective] and [Root.GetNameDef] increasing until recently, the [From.GetAdjective] have now opened negotiations for a Non-Aggression Pact. The advantages to us are clear, but what should concern us is the advantages it will give to the [From.GetAdjective], and whether we will live to regret this move." - wtt_japan.11.a:0 "We must have peace... for now." - wtt_japan.11.b:0 "Denying them any advantage takes precedence!" - wtt_japan.12.t:0 "[From.GetNameDefCap] Accepts Non-Aggression Pact" - wtt_japan.12.desc:0 "[From.GetNameDefCap] has formally accepted our offer of a Non-Aggression Pact." - wtt_japan.12.a:0 "They play right into our hands." - wtt_japan.13.t:0 "[From.GetNameDefCap] Refuses Non-Aggression Pact" - wtt_japan.13.desc:0 "For whatever reason, [From.GetNameDef] has rejected our offer of a Non-Aggression Pact." - wtt_japan.13.a:0 "Are they plotting against us?" - wtt_japan.21.t:0 "Exchange of [From.GetAdjective] Generals" - wtt_japan.21.desc:0 "The [From.GetAdjective] have decided to recall their left-leaning civil servants and generals, and have instead sent us their right-leaning generals and civil servants in unofficial exile." - wtt_japan.21.a:0 "It would seem something's afoot in [From.GetNameDef]..." - wtt_japan.22.t:0 "[Root.GetAdjective] Generals Exchanged" - wtt_japan.22.desc:0 "The process of exchanging our right-leaning generals and civil servants for the left-leaning ones we had previously sent into unofficial exile in [From.GetNameDef] has now beeen completed." - wtt_japan.22.a:0 "This will strengthen our hold over [Root.GetNameDef]." - wtt_japan.31.t:0 "Fate of the Imperial Family" - wtt_japan.31.desc:0 "The time has come to see to the fate of the Emperor and his family. Hereditary social status has no place in the Japan we are building. What shall become of them?" - wtt_japan.31.a:0 "Exile them!" - wtt_japan.31.b:0 "Have their heads!" - wtt_japan.32.t:0 "Exiled Imperial Family" - wtt_japan.32.desc:0 "[From.GetNameDefCap] has exiled the imperial family, bestowing a great boon upon us in doing so! He has now arrived in [Root.GetNameDef], and despite his exile his influence with the people and the troops is still great." - wtt_japan.32.a:0 "We must be worthy of being his home!" - wtt_japan.101.t:0 "The Manchurian Reunification" - wtt_japan.101.desc:0 "With their recent victory against [MAN.GetName], the Japanese government has now acknowledged Chinese ties to the region, and has, as of immediately, transferred all control to us. With this gesture of goodwill, they offer us an alliance." - wtt_japan.101.a:0 "Perhaps the Japanese can indeed be dealt with." - wtt_japan.101.b:0 "We will accept Manchuria, but not their kindness." - wtt_japan.102.desc:0 "[From.GetNameDefCap] thanks us for the return of Manchuria, and have accepted our offer of an alliance." - wtt_japan.103.desc:0 "[From.GetNameDefCap] thanks us for the return of Manchuria, but have rejected our offer of an alliance." - wtt_japan.104.t:0 "Phillipine Sovereignty" - wtt_japan.104.desc:0 "[From.GetNameDefCap] has made overt and public statements that they 'are no longer able to sit by and watch' as a nation in their sphere of interest continues to exist under Western boot. They now demand that we speed up our decolonization timeline and grant the Phillipines full sovereignty immediately." - wtt_japan.104.a:0 "They are right. They deserve their freedom." - wtt_japan.104.b:0 "The Phillipines will remain American!" - wtt_japan.105.desc:0 "[From.GetNameDefCap] has responded to our demands for full Phillipine independence, and the American government has now made immediate arrangements to granting their Pacific subject full sovereignty." - wtt_japan.105.a:0 "At least they are sensible." - wtt_japan.106.desc:0 "[From.GetNameDefCap] has responded to our demands for full Phillipine independence, reiterating the 'vital American interests' the Phillipines represent in the region." - wtt_japan.106.a:0 "And they call themselves the 'defenders of Freedom'?" - wtt_japan.107.desc:0 "[From.GetNameDefCap] has responded to Japanese demands for our full independence, and the American government has now made immediate arrangements to grant us full sovereignty!" - wtt_japan.107.a:0 "Praise the Japanese!" - wtt_japan.108.t:0 "Young Officer Coup" - wtt_japan.108.desc:0 "A group of young officers has succeeded in assassinating various government officials, as well as the prime minister. They have occupied Tokyo city and have secured control of the Imperial Palace, announcing their intent to purge the government of 'corrupt officials' and 'ideological threats', reinstating the Emperor as the sole ruler of the nation.\n\nTheir actions had an unexpectedly large following in the military, where intended counter-operations were forestalled by mass arrests and assassinations of elements loyal to the old government. Faced with the sudden and overwhelming nature of events, as well as rebel control of the palace, the Emperor has made no move to denounce the rebels.\n\nOrganized government resistance seems already to crumble, and the rebels are expected at any time to announce the establishment of total Imperial control to all areas of domestic, foreign, and military policy." - wtt_japan.108.a:0 "Tennōheika Banzai!" - wtt_japan.109.t:0 "Japan Proposes Tripartite Pact" - wtt_japan.109.desc:0 "[From.GetNameDefCap] has sent out feelers to ascertain our interest in a three-powers pact between ourselves, the [JAP_initiator.GetAdjective], and the [ITA_fascism.GetAdjective]s. The [JAP_initiator.GetAdjective] argue that it is imperative that we support each other in light of increasingly hostile global opinion directed against our efforts." - wtt_japan.109.a:0 "An excellent idea. We shall sign the Pact." - wtt_japan.109.b:0 "No, we must not risk antagonizing the world." - wtt_japan.110.desc:0 "[JAP_initiator.GetNameDefCap] has sent out feelers to ascertain our interest in a three-powers pact between ourselves, the [JAP_initiator.GetAdjective], and the [GER_fascism.GetAdjective]s. The [JAP_initiator.GetAdjective] argue that it is imperative that we support each other in light of increasingly hostile global opinion directed against our efforts. The [GER_fascism.GetAdjective]s have already affirmed their support for the idea." - wtt_japan.111.t:0 "Tripartite Pact Signed" - wtt_japan.111.desc:0 "The [GER_fascism.GetAdjective] and [ITA_fascism.GetAdjective] governments have agreed to sign the proposed Tripartite Pact, pledging to stand by our side in the event of war." - wtt_japan.112.t:0 "[From.GetNameDefCap] Rejects Tripartite Pact" - wtt_japan.112.desc:0 "The [From.GetAdjective] government has rejected the proposed Tripartite Pact, preferring to continue alone." - wtt_japan.113.t:0 "[From.GetNameDefCap] Signs Tripartite Pact" - wtt_japan.113.desc:0 "The [ITA_fascism.GetAdjective] government has agreed to sign the proposed Tripartite Pact, pledging to stand by our side in the event of war." - wtt_japan.114.t:0 "Democratic Elements Stage Coup" - wtt_japan.114.desc:0 "Democratic elements in the government have instigated a surprise take-over of the country, after the military threatened to once again curb the people's hard-gained democratic rights. With a surprising alacrity, a significant portion of the military has taken up arms in defense of the people and their rights to liberty.\n\nThis split in the military has allowed for the people's representatives to seize power in the legislative and executive branches. While the fighting has only just begun, it is unlikely that the present government can be unseated easily." - wtt_japan.114.a:0 "Never again shall the military rule us!" - wtt_japan.115.t:0 "[From.GetName] Attacks Soviet Union" - wtt_japan.115.desc:0 "[From.GetNameDefCap] has unilaterally attacked the Soviet Union, despite our non-aggression pact with them. We are left with no alternatives but to either honor our alliance and support the [From.GetAdjective] attack, or to honor our non-aggression pact with the Soviets and denounce the attack." - wtt_japan.115.a:0 "We will join our allies!" - wtt_japan.115.b:0 "Our deals cannot be broken... Yet." - wtt_japan.116.t:0 "[From.GetName] Joins War" - wtt_japan.116.desc:0 "[From.GetNameDefCap] has decided to join our war against the Soviets, despite their former non-aggression pact with them." - wtt_japan.116.a:0 "As they should." - wtt_japan.117.t:0 "[From.GetName] Denounces Our War" - wtt_japan.117.desc:0 "[From.GetNameDefCap] has decided to honor their non-aggression pact with the Soviets, despite their commitment to us as our allies. They have denounced our aggression, in a seeming attempt to salvage the diplomatic situation with their fellow pact member." - wtt_japan.117.a:0 "That is most unfortunate." - wtt_japan.118.t:0 "[From.GetName] Requests Assistance" - wtt_japan.118.desc:0 "[From.GetNameDefCap] is currently embroiled in a destructive civil war, and is having trouble matching their enemy's military strength. Their transitionary government has now approached our representatives with an offer to trade the Southern Sakhalin peninsula for the military assistance they so sorely need.\n\nThis may be a way to easily get some land in return for some volunteer divisions." - wtt_japan.118.a:0 "An excellent idea!" - wtt_japan_118_TT:0 "These volunteers will be returned to the manpower pool if §Y[From.GetName]§! wins the civil war." - wtt_japan.118.b:0 "This is not a good trade for us." - wtt_japan.119.t:0 "[From.GetName] Accepts Trade" - wtt_japan.119.desc:0 "[From.GetNameDefCap] has accepted our offer to trade the South Sakhalin Peninsula for military support. They have dispatched a few divisions of 'volunteers' to aid us in our fight!" - wtt_japan.119.a:0 "They will come in very useful!" - wtt_japan.119.TT:0 "Gain 8 units with §Y12 infantry§! and §Y3 support§! battalions." - wtt_japan.120.t:0 "[From.GetName] Rejects Trade" - wtt_japan.120.desc:0 "[From.GetNameDefCap] has informed us that they have rejected our offer to trade the South Sakhalin Peninsula for military support." - wtt_japan.120.a:0 "We are on our own..." - wtt_japan.121.t:0 "[From.GetName] Takes Tokyo" - wtt_japan.121.desc:0 "[From.GetNameDefCap] has taken the Japanese capital, and the fascist [From.From.GetAdjective] government has fallen. If we wish to act, we must do so immediately. It is imperative that we move swiftly and secure control over the outlying Japanese islands and take command of the remaining fascist elements, if we are to contain the communist threat." - wtt_japan.121.a:0 "Enact this plan." - wtt_japan.121.b:0 "This is not of interest to us at this time." - wtt_japan.122.t:0 "Fascists flee to Manchuria" - wtt_japan.122.desc:0 "With the capture of Tokyo, the fascist government has fallen and their remaining supporters and military units have fled to [MAN.GetName], which has taken control of the outlying islands and Korean and Chinese possessions.\n\nThe civil war is effectively over, but the truce is tenuous, at best, as the fascists have not been decisively defeated." - wtt_japan.122.a:0 "We will deal with them later." - wtt_japan.123.t:0 "Fascist Resistance Collapses" - wtt_japan.123.desc:0 "With the capture of Tokyo, the fascist government has utterly collapsed. Their remaining supporters and military units have nothing to rally around, and have begun to disperse, allowing easy capture of the remaining and outlying territories." - wtt_japan.123.a:0 "The war is won." - wtt_japan.124.t:0 "Volunteers Return Home" - wtt_japan.124.desc:0 "With the communist victory in Japan, our surviving volunteers have now returned home." - wtt_japan.125.t:0 "Soviets Return Manchuria" - wtt_japan.125.desc:0 "Having liberated Manchuria from the Japanese, and having rid it of the deposed Qing emperor, [From.GetNameDef] now has offered us the return of Manchuria, claiming it should return to rightful [Root.GetAdjective] hands." - wtt_japan.126.t:0 "[From.GetName] Offers Peace" - wtt_japan.126.desc:2 "[From.GetAdjective] officials have approached us with a peace offer. They will leave the continent altogether, in return for an immediate cessation of hostilities." - wtt_japan.126.a:0 "The war has been won." - wtt_japan.126.b:0 "We will only be satisfied with total victory!" - wtt_japan.127.t:0 "[From.GetName] Accepts Peace" - wtt_japan.127.desc:1 "[From.GetNameDef] has accepted our peace offer, and has ceased hostilities in return for our continental possessions." - wtt_japan.127.a:0 "They have bested us... For now." - wtt_japan.128.t:0 "[From.GetName] Rejects Peace" - wtt_japan.128.desc:0 "[From.GetNameDef] has rejected our peace offer, vowing to pursue the war until they obtain an unconditional surrender." - wtt_japan.128.a:0 "Then we will fight to the last!" - wtt_japan.40.t:0 "[From.GetLeader] Demands Manchuria" - wtt_japan.40.desc:0 "A few days ago, the government of [From.GetNameDef] began a concerted effort to apply pressure on us. Lead articles in newspapers demanded that we return Manchuria to [From.GetAdjective] control. This is not a mere propaganda move for internal consumption, as representatives of [From.GetLeader] have sounded us out through diplomatic backchannels to secure an agreement about the future of the Manchurian territories.\n\nToday, [From.GetLeader] himself weighed in on the matter, demanding a full return of Manchuria to [From.GetNameDef] as soon as possible. Otherwise his government would have to reconsider our current cooperation." - wtt_japan.40.a:0 "It belongs to them." - wtt_japan.40.b:0 "They are not yet ready to rule themselves." - wtt_japan.41.t:0 "Military Aid from [From.GetNameDef]" - wtt_japan.41.desc:0 "The Imperial Japanese Headquarters have decided on a fundamental shift in the strategic outlook. In a conference with the Emperor, the Army Minister presented a new plan that assumes that war with the Soviet union will break out in the near future. To prepare for this war, the Imperial Japanese Army has decided that our military must be able to defend parts of the front. For this purpose, a large amount of only slightly outdated equipment has been made available." - wtt_japan.41.a:0 "How nice of them." - wtt_news.25.t:0 "[JAP.GetNameDefCap] Assumes Control Over [From.GetAdjective] Colonies" - wtt_news.25.desc:0 "In light of [From.GetNameDef]'s current weakness, it is perhaps no surprise the [JAP.GetAdjective] have increased pressure for control over the [From.GetAdjective] east asian holdings. This morning, however, officials from the [From.GetAdjective] government made a surprise announcement that control of the [From.GetAdjective] colonies would be transferred to [JAP.GetNameDef], effective immediately." - wtt_news.25.a:0 "Asia for the Asians!" - wtt_news.25.b:0 "A sad day for Europe..." - wtt_news.25.c:0 "Is it the end of colonialism?" - wtt_news.26.t:0 "Phillipine Independence" - wtt_news.26.desc:0 "As a result of [JAP.GetAdjective] pressure, the [From.GetAdjective] government has now announced the immediate cessation of [From.GetAdjective] colonial rule of the archipelago. As of today, full sovereignty has been granted to [PHI.GetNameDef]." - wtt_news.26.b:0 "We were going to decolonize anyway." - wtt_news.26.c:0 "A joyous day!" - wtt_news.27.t:0 "Japanese Young Officer Coup" - wtt_news.27.desc:0 "A group of young officers has succeeded in toppling the government and reinstating the Emperor as the supreme ruler of the Japanese nation. It appears this was a reaction to perceived threats of wide-spread government corruption and adherents to hostile ideologies.\n\nAlready referring to the nation even more consistently in Imperial terms, the officers have announced purges will continue until 'all unsavory elements have been removed from the military and the government'. Emperor Hirohito, himself, has released a brief statement assuming the leadership offered to him by the rebels, and made clear overtures of reconciliation with China and the Western colonial powers in the Pacific." - wtt_news.27.a:0 "Banzai!" - wtt_news.27.b:0 "Troubling news... They have made no such overtures to us..." - wtt_news.27.c:0 "Does this guarantee peace in the Pacific?" - wtt_news.27.d:1 "A sudden turn of events." - wtt_news.30.t:0 "Chiang Kai-Shek Executed" - wtt_news.30.desc:0 "Following his arrest by [CHI_xian_instigator.GetLeader], Chiang Kai-Shek has reportedly been killed by a Communist firing squad earlier this morning. After a quick trial for crimes against the people and the party, [PRC.GetLeader] pronounced the death sentence for Chiang Kai-Shek. Even a direct intervention by the representative of the Soviet Government was not enough to save his life.\n\n[SOV.GetLeader] is reportedly furious about the "betrayal" by [PRC.GetLeader] and has ordered the arrest of of the Chinese Comintern delegation.\n\nNew Nationalist Leader [CHI.GetLeader] has vowed that the death of Chiang will be avenged and the Communists "exterminated"." - wtt_news.30.a:0 "He got what he deserved." - wtt_news.30.b:0 "They made a murder and called it justice!" - wtt_news.30.c:0 "This will have consequences." - wtt_news.30.d:0 "China will destabilize even further." - wtt_news.31.t:0 "Chiang Kai-Shek Executed" - wtt_news.31.desc:0 "Following his arrest by [CHI_xian_instigator.GetLeader], Chiang Kai-Shek has reportedly been killed by a communist firing squad earlier this morning. After a quick trial for crimes against the people and the party, high treason, and counter-revolutionary activities, [PRC.GetLeader] pronounced the death sentence for Chiang Kai-Shek. The Soviet Representative acted as the prosecutor in the trial, fuelling speculation that [SOV.GetLeader] secretly approved the decision. \nNew Nationalist Leader [CHI.GetLeader] has vowed that the death of Chiang will be avenged and the Communists "exterminated"." - wtt_news.31.c:0 "We made the right decision." - wtt_news.32.t:0 "Chiang Kai-Shek released from House Arrest" - wtt_news.32.desc:0 "After being arrested by [CHI_xian_instigator.GetLeader] and turned over to the communists, [CHI.GetLeader] has reportedly returned home following extensive negotiations. Reports are still sketchy, but evidence suggests that [PRC.GetLeader] offered an alliance against the Japanese. Both sides have denied any such rumors, with [PRC.GetLeader] saying that he would rather see the country burned to ashes than to make common cause with the Nationalists, a sentiment that [CHI.GetLeader] quickly returned." - wtt_news.32.a:0 "What designs do they have on us?" - wtt_news.32.c:0 "Like squabbling children..." - wtt_news.32.d:0 "Japan will use this to their advantage." - wtt_news.32.e:0 "We could use this to our advantage." - wtt_news.33.t:0 "[PRC.GetLeader] denounces Nationalist Treason" - wtt_news.33.desc:0 "Following a meeting between [CHI.GetLeader] and [PRC.GetLeader], the later has decried what he calls "a blatant and transparent attempt to co-opt the Red Army for Nationalist and counter-revolutionary purposes." [CHI.GetLeader] has refused to comment on the issue, saying only that the Nationalist armies stand ready to defend China from any attacker. \n\nReportedly, the two leaders discussed the possibility of forming a United Front against Japan.\n\nWhether this breakdown leads to a renewal of the conflict between the two parties remains to be seen." - wtt_news.33.b:0 "Why did we ever think they would change?" - wtt_news.34.t:0 "Flying Tigers formed" - wtt_news.34.desc:0 "Following a Chinese appeal for American pilots and mechanics to join a volunteer outfit, US President [USA.GetLeader] has officially approved the transfer of more than a hundred modern fighter planes to the Chinese Air Force. Pilots in the US Army, Navy or Marine Corps are also given leave to join this unit.\n\nThe first ships carrying the new fighters are supposed to leave as soon as the necessary equipment is assembled. Congressional leaders have expresseed concern that skirting the edges of international law like this will invite repercussions." - wtt_news.34.a:0 "Good Hunting!" - wtt_news.34.b:0 "They are most welcome." - wtt_news.34.c:0 "Volunteers? More like Mercenaries!" - wtt_news.34.d:0 "The end of US isolation?" - wtt_news.35.t:0 "The Shanghai Incident" - wtt_news.35.desc:1 "Tensions between China and Japan have risen sharply after a clash in Shanghai last night. \n\nReports by western observers indicate that a brawl broke out between Chinese Police and a group of Japanese sailors, in which both sides suffered some injuries. When a Japanese patrol arrived to investigate, Chinese Army units had already blocked off all access to the site and arrested the Japanese sailors, who are to be charged with attempted murder.\n\nThe Japanese government has issued a sharp warning that, unless the sailors are released at once, measures would be taken to secure their freedom." - wtt_news.35.a:0 "Outrageous!" - wtt_news.35.b:0 "All according to plan." - wtt_news.35.c:0 "War is in the air." - wtt_news.35.d:0 "This seems premeditated." - wtt_news.36.t:0 "Chiang Kai-Shek Dead in Plane Crash" - wtt_news.36.desc:0 "Tragedy struck [CHI.GetNameDef] earlier today as a plane carrying Chiang Kai-Shek exploded in mid-air mere moments after take-off. Rescue crews are still combing through the wreckage, but few still hold out hope that they will find any survivors from amongst the crew and passengers.\n\nBoth the Generalissimo and his wife are presumed dead.\n\nNew Chinese leader [CHI.GetLeader] has promised a full investigation into the causes of the catastrophe. Rumors abound of a plot to kill the Generalissimo, seen by many as an obstacle in uniting the various factions inside China." - wtt_news.36.a:0 "One less problem to worry about." - wtt_news.36.b:0 "This was no accident." - wtt_news.36.d:0 "Tragic." - wtt_news.37.t:0 "People's Republic of China declared" - wtt_news.37.desc:0 "In a triumphant speech, [PRC.GetLeader] declared that "the Chinese people have stood up" and delivered the Communists to victory in the Chinese Civil War. With the Nationalists in full retreat, the Communist Party has at last secured victory after decades of strife. Henceforth, what was previously a small rebel group hiding in remote mountain villages will become a full-fledged government in a People's Republic of China." - wtt_news.37.a:0 "A great day." - wtt_news.37.b:0 "A mere formality." - wtt_news.37.d:0 "They will never amount to anything." - wtt_news.38.t:0 "[PRC.GetLeader] wins internal power struggle" - wtt_news.38.desc:0 "The fights between the internal factions inside the Communist Party of China seem to have died down, with [PRC.GetLeader] emerging as the paramount leader. Mao Tse-Tung and the more moderate factions have lost considerable influence, as the Soviet-backed [PRC.GetLeader] has managed to outmaneuver them both. What, if any, role [SOV.GetLeader] had in this episode is subject of much speculation." - wtt_news.38.a:0 "May he lead us to victory!" - wtt_news.38.b:0 "Insignificant." - wtt_news.38.c:0 "A useful ally." - wtt_news.38.d:0 "He inherits a difficult position." - wtt_news.39.t:0 "The China Pacification Campaign" - wtt_news.39.desc:0 "Following a series of incidents described as "blatant provocations", the Japanese government has declared that a state of "armed conflict" exists in China. They claim that the central government of [CHI.GetLeader] has shown an unwillingness or inability to properly prosecute those responsible. Accordingly, they have announced that a "peacekeeping" force of Japanese troops has been dispatched to the country to restore order and prevent further attacks." - wtt_news.39.a:0 "As planned." - wtt_news.39.b:0 "Who did this?" - wtt_news.39.c:0 "What did we do!?" - wtt_news.39.d:0 "A transparent excuse." - wtt_news.39.e:0 "They will learn the error of their ways." - wtt_warlord.1.t:0 "[From.GetNameDefCap] Offers Subjugation" - wtt_warlord.1.desc:0 "With the central government in China utterly unable to provide for the safety of its people from bandits and communists, [From.GetLeader] has finally understood his position and reached out to us in an attempt to secure his position. He would fully cooperate with us and allow our troops free passage. In return, he only asks that we station some troops to protect his territory and remember his contribution when we are finished with reorganizing China." - wtt_warlord.1.a:0 "Finally, someone reasonable!" - wtt_warlord.1.b:0 "We have no place for them in our plans." - wtt_warlord.2.t:0 "[From.GetNameDefCap] Accepts" - wtt_warlord.2.desc:0 "The [From.GetAdjective] government has accepted our proposal. In return for their protection, we are to "strongly consider" the advice we are given on how to conduct ourselves. A [From.GetAdjective] government official has arrived to coordinate our policies." - wtt_warlord.2.a:0 "A small price for our survival." - wtt_warlord.3.t:0 "[From.GetNameDefCap] Refuses" - wtt_warlord.3.desc:0 "The [From.GetAdjective] government has returned our note with a flat refusal to discuss it, saying that we lack the authority to negotiate with a proper national government." - wtt_warlord.3.a:0 "We will grow strong and show them." - wtt_britain_lease_azores.1.t:0 "[From.GetNameDefCap] Requests lease of the Azores" - wtt_britain_lease_azores.1.desc:0 "The [From.GetAdjective] have approached us with a request to lease the Azores for the duration of the war. The strategic location of the islands makes them an important base from which to guard the sea lanes across the Atlantic. The islands would be returned after the end of hostilities." - wtt_britain_lease_azores.1.a:0 "Better than dragging us into the war..." - wtt_britain_lease_azores.1.b:0 "Where is the benefit for us?" - wtt_britain_lease_azores.2.t:0 "[From.GetNameDefCap] Accepts" - wtt_britain_lease_azores.2.desc:0 "The [From.GetAdjective] government has approved our request and given us full control over the Azores, with the understanding that we are now responsible for defending them from any attack. A small advance party has already arrived on the islands to set up a base of operations." - wtt_britain_lease_azores.2.a:0 "This will prove useful." - wtt_britain_lease_azores.3.t:0 "[From.GetNameDefCap] Refuses" - wtt_britain_lease_azores.3.desc:0 "Citing their declared stance of neutrality and the laws of warfare, the government of [From.GetLeader] has denied our request for basing rights in the Azores. Unless we find a way to get them into the war on our side, the islands remain blocked for us." - wtt_britain_lease_azores.3.a:0 "We will remember this." - wtt_britain_lease_azores.4.t:0 "Azores Lease Over" - wtt_britain_lease_azores.4.desc:0 "With hostilities in Europe at an end, the [POR.GetAdjective] government has reminded us that the lease of the Azores was only made for the duration of the war. The time has come to return control over the islands back to them." - wtt_britain_lease_azores.4.a:0 "The British always pay their debts." - wtt_britain_lease_azores.5.t:0 "Britain exits the Azores" - wtt_britain_lease_azores.5.desc:0 "With the war in Europe at an end, [From.GetNameDef] has honored our agreement and returned the Azores to us. We have already sent a group of administrators to take back control." - wtt_britain_lease_azores.5.a:0 "The best possible outcome." - wtt_soviet_hold_city_t_success:0 "[state.GetName] Stands" - wtt_soviet_hold_city_d_success:0 "Despite the enemy onslaught, the defenders of [state.GetName] have stood firm and held the enemy at bay. The invaders have bled themselves white on the defenses, paying a hefty price for every centimeter of ground taken. The tales of the Heroes of [state.GetName] will be remembered for generations to come!" - wtt_soviet_hold_city_o_success:0 "[state.GetName] shall remain ours!" - wtt_soviet_hold_city_t_fail:0 "[state.GetName] Falls" - wtt_soviet_hold_city_d_fail:0 "Mobilizing all available forces, the [controller.GetAdjective] invaders smashed our defenses outside [state.GetName]. [controller.GetAdjective] forces have entered the city. While our defenders are engaging the enemy in vicious street battles, the city is expected to fall within days." - decisions.1.t:0 "Lower Army Command Loyalty" - decisions.1.desc:0 "Certain officers in the lower echelons of the military have expressed 'alternative' views on the country's leadership. To limit suspicion, we should limit our efforts to approaching only one potential supporter, and we should spare no resources in buying their loyalty." - decisions.1.a:0 "Anyone will do, we just need someone to lead our armies." - decisions.1.b:0 "We need someone who at least knows what they're doing." - decisions.1.c:0 "Quality is paramount, we should not compromise on cost." - decisions.1.d:0 "Only the very best will suffice." - decisions.2.t:0 "Upper Army Command Loyalty" - decisions.2.desc:0 "Certain officers in the upper echelons of the military have expressed 'alternative' views on the country's leadership. To limit suspicion, we should limit our efforts to approaching only one potential supporter, and we should spare no resources in buying their loyalty." - wtt_soviet_hold_city_o_fail:0 "A minor setback." - wtt_news.40.t:0 "Suez Canal Blown" - wtt_news.40.desc_eng:0 "In response to hostile forces closing in on the Suez Canal, and risking losing the vital commerce artery to the enemy, [From.GetNameDef] has instead chosen to blown the canal to ensure its use is denied to them. Through a combination of blockships, demolitions, and mining, the destruction is quite complete, and will likely take months of extensive industrial effort to repair." - wtt_news.40.desc_not_eng:0 "In what can only be described as a daring and brilliant military operation, [From.GetNameDef] has succeeded in severing the vital commerce artery that is the Suez Canal. Through a combination of blockships, demolitions, and mining, the destruction is quite complete, and will likely take months of extensive industrial effort to repair." - wtt_news.40.a:0 "A calamity!" - wtt_news.40.b:0 "We could not let the enemy use it." - wtt_news.40.c:0 "We shall not underestimate their resolve again." - wtt_news.40.d:0 "We have cut the cord with their Empire!" - wtt_news.40.e:0 "A magnificent blow against the British!" - wtt_news.40.f:0 "They made the right call." - wtt_news.40.g:0 "A great blow against our ally..." - wtt_news.40.h:0 "This will impact the entire world..." - wtt_news.41.t:0 "Panama Canal Blown" - wtt_news.41.desc_usa:0 "In response to their inability to defend the Panama Canal, and risking losing the vital military communications artery to the enemy, [From.GetNameDef] has instead chosen to blown the canal to ensure its use is denied to them. Through a combination of blockships, demolitions, and mining, the destruction is quite complete, and will likely take months of extensive industrial effort to repair." - wtt_news.41.desc_not_usa:0 "In what can only be described as a daring and brilliant military operation, [From.GetNameDef] has succeeded in severing the vital military communications artery that is the Panama Canal. Through a combination of blockships, demolitions, and mining, the destruction is quite complete, and will likely take months of extensive industrial effort to repair." - wtt_news.41.a:0 "A calamity!" - wtt_news.41.b:0 "We could not let the enemy use it." - wtt_news.41.c:0 "We shall not underestimate their resolve again." - wtt_news.41.d:0 "Their navy is cut off on the far side!" - wtt_news.41.e:0 "A magnificent blow against the Americans!" - wtt_news.41.f:0 "They made the right call." - wtt_news.41.g:0 "A great blow against our ally..." - wtt_news.41.h:0 "Pacific and Atlantic are divided once again." - wtt_news.42.t:0 "Suez Canal Repaired" - wtt_news.42.desc:0 "With a tremendous industrial effort [From.GetNameDef] has managed to repair the Suez Canal. This morning saw the re-opening of the vital commerce artery into the Mediterranean, after over half a year of intensive repair work." - wtt_news.42.a:0 "We have restored the link to our Empire." - wtt_news.42.b:0 "A necessary investment for our nation." - wtt_news.42.c:0 "This will aid our efforts greatly." - wtt_news.42.d:0 "They have undone the setback..." - wtt_news.42.e:0 "The effects will be felt by all." - wtt_news.43.t:0 "Panama Canal Repaired" - wtt_news.43.desc:0 "With a tremendous industrial effort [From.GetNameDef] has managed to repair the Panama Canal. This morning saw the re-opening of the vital military link between the Atlantic and the Pacific, after over a year of intensive repair work." - wtt_news.43.a:0 "We have restored the vital link between our oceans." - wtt_news.43.b:0 "We may once again move from Pacific to Atlantic." - wtt_news.43.c:0 "This will aid our efforts greatly." - wtt_news.43.d:0 "They have undone the setback..." - wtt_news.43.e:0 "The effects will be felt by all." - wtt_news.44.t:0 "[MAN.GetLeader] claims the Mandate of Heaven" - wtt_news.44.desc:0 "Wearing richly decorated robes befitting an Emperor of China, [MAN.GetLeader], Son of Heaven, Lord of Ten Thousand Years, Emperor of the Great Qing Dynasty, has taken the Dragon Throne in an unusual second Coronation ceremony and now resides inside the Forbidden City as his ancestors did. Referencing the old customs, [MAN.GetLeader] claims that the victory of his forces in the Chinese Civil War proves that he has a Manadate from heaven to lead China.\n\nWhether he intents to spread his rule until it encompasses 'All under Heaven', as previous Emperors claimed, remains to be seen." - wtt_news.44.a:0 "The Son of Heaven returns." - wtt_news.44.b:0 "A wrong put right." - wtt_news.44.c:0 "Who does he think he is?" - wtt_news.44.d:0 "Quite the comeback." - wtt_news.44.e:0 "Preposterous!" - wtt_news.45.t:0 "[new_leader.GetLeader] takes National Leadership in China" - wtt_news.45.desc:1 "Following an extensive Power Struggle between [old_leader.GetLeader] and [new_leader.GetLeader], the former has finally conceeded defeat and met with [new_leader.GetLeader] in his residence. After a mere two hours of negotiations, [old_leader.GetLeader] has evidently accepted a proposal to transfer power to [new_leader.GetLeader] and step down as Premier of the Republic. \n\nGroups of supporters of the two leaders had previously gathered outside the house, prompting fears of violent clashes between the two sides depending on the outcome.\n\nHowever, no violence has been reported and it appears that the transition of power has been fairly smooth." - wtt_news.45.a:0 "Politics. Politics never change." - wtt_news.45.b:0 "A stunning success." - wtt_news.45.c:0 "Preferable to violence." - wtt_news.45.d:0 "They may just have averted a Civil War." - wtt_news.46.t:0 "[From.GetLeader] proclaims One China Policy" - wtt_news.46.desc:0 "Speaking before a group of supporters, [From.GetLeader] today announced a major shift in his government. Previously, [From.GetLeader] was willing to tolerate that some parts of China were largly independent. This is now over. From today forward, [From.GetNameDef] will consider all of China to be their responsibility as the sole government of China. Anyone found refusing orders from the only legitimate Chinese government is to be considered a rebel or a traitor, and will be dealt with accordingly. \n\nIt remains to be seen, however, if the [From.GetLeader] Government can make good on the threat or if it will remain a mere propaganda move designed to shore up support in the population." - wtt_news.46.a:0 "A direct threat." - wtt_news.46.b:0 "We will unite all of China!" - wtt_news.46.d:0 "Better men have failed." - wtt_news.47.t:0 "[From.GetNameDefCap] Claims Indochina" - wtt_news.47.desc:0 "The government of [From.GetLeader] has declared that the current situation in Indochina presents a clear and present danger to [From.GetAdjective] security. No government in the world, the official statement read, would accept a dagger aimed squarely at its soft underbelly in this manner. Unless the region is pacified or [671.Controller.GetAdjective] authorities replaced with governors more willing to work with [From.GetNameDef], the threat to [From.GetAdjective] interests would continue.\n\nWhile a spokesman for [From.GetLeader] stressed that the [From.GetAdjective] Government would try to seek a peaceful solution, the military option was not ruled out." - wtt_news.47.a:0 "Someone had to." - wtt_news.47.b:0 "Come and take them!" - wtt_news.47.c:0 "Surely nothing bad will come of this." - wtt_news.47.d:0 "Don't make us come over there!" - wtt_news.48.t:0 "The Manchurian War of Independence" - wtt_news.48.desc:0 "Following a period of internal power struggles between the Japanese administrators and the government of [MAN.GetLeader], the fight for supremacy in Manchuria has finally reached a boiling point. \n\nReportedly, the confrontation was set off by an incident in the Imperial Household, in which a Japanese General supposedly insulted the Emperor of Manchukuo by demanding that he bow.\n\nOutraged, [MAN.GetLeader] replied that "The Son of Heaven does not bow" and struck the General with his cane, before ordering his military to remove all Japanese soldiers from Chinese soil immediately." - wtt_news.48.a:0 "The puppy roars?" - wtt_news.48.b:0 "We will claim our destiny!" - wtt_news.48.c:0 "That little traitor!" - wtt_news.48.d:0 "The Dragon strikes the...Sun?" - wtt_news.50.t:0 "Hitler Assassinated" - wtt_news.50.desc:0 "German radio announced today that traitorous elements of the military have attempted a coup. Following an explosion at the Führer Headquarters which killed Hitler and injured several others, army units attacked a number of SS offices and units. \n\nWhile [GER.GetLeader] claims he has full control of the country and its military, reports are still coming in of firefights between loyalists and rebel forces all over the country.\n\nRumor has it that other leading members of the Nazi party are planning their own grab for power in the chaos." - wtt_news.50.a:0 "Vile treachery!" - wtt_news.50.b:0 "The situation has not improved." - wtt_news.50.c:0 "Good riddance!" - wtt_news.50.d:0 "He pushed them too far." - wtt_news.51.t:0 "Assassination attempt on [GER.GetLeader]" - wtt_news.51.desc:0 "German radio announced today that traitorous elements of the military have attempted a coup. Following an explosion at the Führer Headquarters which miraculously only slightly injured Hitler and wounded several others, army units attempted to seize control of several government offices in Berlin. \n\nNews of [GER.GetLeader]'s survival spread quickly, and most units under control of the putschists have since returned to their barracks.\n\nA number of high-ranking German officers commited suicide in the wake of the failed attempt rather than face the indignity of a trial in front of the infamous "People's Court"." - wtt_news.51.c:0 "The beginning of the end?" - wtt_news.52.desc:0 "German radio announced today that [GER.GetLeader] has taken over the government. Following an exchange of gunfire in the Führerbunker, during which the Führer was mortally wounded, SS units moved quickly to seize all major roads and railway junctions leading out of Berlin. Meanwhile, Luftwaffe and Heer units have reportedly been ordered to converge on Berlin to restore order." - -### ## ### # # ## ### # ### # # ## ### ### ## # # ## -# # # # # ## ## # # # # # # ## # # # # # # # ## # # -## # # ### # # # #### ### # ## # ## #### # # # # # ## # -# # # # # # # # # # # # # # # # # # # # # # # # -# ## # # # # # # ### ### ### # # # # # ### ## # # ## - - wtt_news.53.t:0 "Unification of Scandinavia" - wtt_news.53.desc:0 "Through force of arms, [From.GetOldName] has united the Scandinavian peoples under its rule, and its government is now integrating the newly-conquered territories. In an attempt to rally the people behind the state, there has been an increase in pan-nationalist propaganda with clear support from the government.\n\nAs a side-effect, proponents of Scandinavian unification have already begun citing historical parallels, and point out how the current state of affairs can be seen as simply a natural continuation of earlier attempts at unifying the region. The [From.GetOldAdjective] government has eagerly jumped on the bandwagon of this line of thinking, and has now officially proclaimed a 'restoration of the Kalmar Union', renaming the country to '[From.GetNameDef]'." - wtt_news.53.a:0 "A glorious day for all Scandinavians!" - wtt_news.53.b:0 "Scandinavia is stronger together." - wtt_news.53.c:0 "It will not last long!" - wtt_news.54.t:0 "Unification of the Nordics" - wtt_news.54.desc:0 "With the conquest of all of the nations belonging to the Nordic region, the [From.GetOldAdjective] government has now begun increasing moves towards integration of the newly-conquered territories. As a result, in an attempt to rally the people behind the state, there has been an increase in pan-nationalist propaganda with clear support from the government.\n\nA [From.GetOldAdjective] official was quoted as saying "The Nordic countries have always felt a strong kinship to each other. It is only natural that they should be unified, and that our peoples should coexist side by side, as one." It would appear the government has resolved to use this kinship as a way of unifying the people, and have now proclaimed "true Nordic unity", renaming the country to '[From.GetNameDef]'." - wtt_news.54.a:0 "The unified North will stand strong!" - wtt_news.54.b:0 "The North may well prove problematic to their neighbours..." - wtt_news.55.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.55.desc:0 "Having retaken all of the lands belonging to the old Gran Colombia, the [From.GetOldAdjective] government has now begun increasing moves towards integration of the newly-conquered territories. As a result, in an attempt to rally the people behind the state, there has been an increase in pan-nationalist propaganda with clear support from the government.\n\n[From.GetOldAdjective] officials have repeatedly stated their belief that all of northern South America should look at their shared history and use that kinship as a foundation for a unified state. Now, the [From.GetOldAdjective] government has taken one step further and proclaimed the "revival of Bolívar's legacy", renaming the country to '[From.GetNameDef]'." - wtt_news.55.a:1 "The dream of a unified Latin America awaits!" - wtt_news.55.b:0 "The birth of a new American superpower?" - wtt_news.56.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.56.desc:0 "Having secured all of the Austro-Hungarian Imperial lands, the [From.GetOldAdjective] government, as representatives of the last remaining successor state, has now begun with re-integrating these territories. Government-directed propaganda has flared up, extolling the "glorydays of the Empire" in a clear effort to rally the population behind the wide-spread national reforms and a return to imperial norms.\n\nAs a part of these, the [From.GetOldAdjective] government has announced the restoration of [From.GetNameDef], and has changed the nation's official name to reflect this." - wtt_news.56.a:0 "Indivisibiliter ac inseparabiliter!" - wtt_news.56.b:0 "The Dual Monarchy rises again." - wtt_news.57.t:1 "[From.GetNameDefCap]'s rebirth" - wtt_news.57.desc:0 "As Poland and Lithuania are once more governed by a single state, the [From.GetOldAdjective] government has begun drawing on history for its propaganda in an effort to unite the people behind its policies. 'Historical experts' bombard the population with the various ways in which a united Poland and Lithuania could stand against the threats on their borders, recounting tales from the height of power of the Polish-Lithuanian Commonwealth. The approach seems to be having some effect on redirecting the people's outrage, and on focusing their thoughts on the glorydays of old.\n\nToday, the [From.GetOldAdjective] government has taken this one step further and proclaimed the restoration of the Commonwealth, re-naming the country to '[From.GetNameDef]'." - wtt_news.57.a:0 "If God is with us, then who is against us?" - wtt_news.57.b:0 "Will it survive partition this time?" - wtt_news.58.t:0 "Reunification of the Low Countries" - wtt_news.58.desc:0 "With the [From.GetOldAdjective] conquest of the other Low Countries, their government has quite vocally defended its actions. They now claim to be the immediate and lawful successors to the United Kingdom of the Netherlands, and have repudiated the Treaty of London of 1839 with the claim that it was, at the time, criminally forced upon their government by outside forces. Thus, as the nation never ceased to be, [From.GetOldNameDef] has merely reasserted control over land that already belonged to them.\n\nFollowing through on their words, the [From.GetOldAdjective] government has renamed the country to '[From.GetNameDef]', and large propaganda efforts are already under way in an attempt at unifying the people, using current global crises as an external threat to rally against." - wtt_news.58.a:0 "United again, as intended in 1815..." - wtt_news.58.b:0 "Yes... This does all seems to be an internal affair..." - wtt_news.59.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.59.desc:0 "With the [From.GetOldAdjective] conquest of the other Central American states, their government has quite vocally defended its actions internationally. Considering itself the lawful successor to the Federal Republic of Central America, it has branded the nations that seceded in the late 1830s as illegal separatist governments, and consistently refers to the recent fighting as their rightful attempts at 'reasserting control' over these territories.\n\nFollowing through on their words, the [From.GetOldAdjective] government has renamed the country to '[From.GetNameDef]', and large propaganda efforts are already under way in an attempt at unifying the people, using current global crises as an external threat to rally against." - wtt_news.59.a:0 "A necessary first step to ascending the world stage." - wtt_news.59.b:0 "Another United States of the Americas arises." - wtt_news.60.t:0 "Unification of the Baltics" - wtt_news.60.desc:0 "With the conquest of all of lands belonging to the Baltic states, the [From.GetOldAdjective] government has now begun increasing moves towards integration of the newly-conquered territories. As a result, in an attempt to rally the people behind the state, there has been an increase in pan-nationalist propaganda with clear support from the government.\n\nA [From.GetOldAdjective] official was quoted as saying "The Baltic countries have always felt a strong kinship to each other. It is only natural that they should be unified, especially in light of the threats on our borders. Only by standing together can our peoples remain independent and free." They have therefore now proclaimed "true Baltic unity", renaming the country to '[From.GetNameDef]'." - wtt_news.60.a:0 "It is necessary for our survival." - wtt_news.60.b:0 "But will the new state be strong enough?" - wtt_news.61.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.61.desc:0 "Having secured all of the pre-war Ottoman lands, the [From.GetOldAdjective] government, as representatives of the Ottoman successor state, has now begun with re-integrating these territories. Government-directed propaganda has flared up, denouncing the partitions of the Allies in the Great War, and extolling the "glorydays of the Empire" in a clear effort to rally the population of newly-conquered lands behind the wide-spread national reforms and a return to imperial norms.\n\nAs a part of these, the [From.GetOldAdjective] government has announced the restoration of [From.GetNameDef], and has changed the nation's official name to reflect this." - wtt_news.61.a:0 "We have undone the partitions at last!" - wtt_news.61.b:0 "The Eternal State has risen again..." - wtt_news.62.t:0 "Unification of Europe" - wtt_news.62.desc:0 "The main powers of continental Europe lay conquered before [From.GetOldNameDef], and for the first time the recent dreams of a united Europe seem attainable. A variety of 'experts', presumably on the government payroll, have already begun repeatedly citing the current political situation as the only way to "prevent future European conflict".\n\nIn further efforts to give the outward appearance of a "nation for all Europeans", government reforms on the national and the local level are being pushed through at an impressive rate, and as a part of those it was announced today that the country shall henceforth be known as '[From.GetNameDef]', so that "all Europeans may feel welcome in it"." - wtt_news.62.a:0 "Is this an end to all European war?" - wtt_news.62.b:0 "Let us see if they can pull it off." - wtt_news.63.t:0 "Rise of [From.GetNameDef]" - wtt_news.63.desc:0 "As the [From.GetOldAdjective] nation grows into its neighbours, government attempts at creating historical continuity have become more and more apparent, evidently in an attempt to unify the people. The achievements of the Great Zimbabwean Empire have been strongly romanticized, but incessant propaganda seems to be having an effect on public opinion.\n\nToday, the [From.GetOldAdjective] government has taken this one step further and re-named the country to '[From.GetNameDef]', an announcement that was greeted by exuberant crowds in the streets of the major cities." - wtt_news.63.a:0 "An Africa for Africans!" - wtt_news.63.b:0 "Is this the end of colonial Africa?" - wtt_news.64.t:0 "Rise of [From.GetNameDef]" - wtt_news.64.desc:0 "The [From.GetOldAdjective] military advance seems utterly unstoppable, and the idea that many sneered at in recent years - the creation of a new Roman Empire - now seems entirely within the Italians' grasp. Most continental European powers that could oppose them have been virtually eliminated, leaving the Italians free to enforce their will upon the conquered peoples.\n\nIn addition to beginning integration of what they have already begun referring to as "reconquered Roman Territories", the Italian government has now announced the rebirth of the Roman Empire, renaming the nation to '[From.GetNameDef]'." - wtt_news.64.a:0 "Roma Invicta!" - wtt_news.64.b:0 "They cannot be serious!" - wtt_news.65.t:0 "Rise of [From.GetNameDef]" - wtt_news.65.desc:0 "As the [From.GetOldAdjective] advance continues, the historical parallels have not gone unnoticed by those versed in Persian history. Notable public figures have already begun comparing this expansion to the times of Cyrus the Great, and nationalist pride is rising throughout [From.GetOldAdjective] society.\n\nAs government control is expanded over the new territorial acquisitions, and as the government rides this wave of high public approval, it has now been confirmed by officials that the nation will be officially renamed to '[From.GetNameDef]'." - wtt_news.65.a:0 "Our strength continues to grow!" - wtt_news.65.b:0 "Will it bring peace and stability to the region?" - wtt_news.66.t:0 "Rise of [From.GetNameDef]" - wtt_news.66.desc:0 "[From.GetOldAdjectiveCap] ascendancy has perplexed many military experts across the globe, but the results speak for themselves. In but a few years, the Greeks have utterly dominated the Balkans, reconquered Istanbul, and crushed any organized Turkish resistance in Anatolia. It seems that the ultimate conclusion of over five centuries of Greco-Turkish conflict has now been reached.\n\nTo further bolster national pride, the [From.GetOldAdjectiveCap] government has utilized historical continuity, and styled their military achievements as a 'Byzantine reconquest against the Turkic invader'. As part of this propaganda, and in the midst of an extravagant ceremonial parade in newly-renamed Constantinople, it was announced that [From.GetOldNameDef] has changed its official name to '[From.GetNameDef]'." - wtt_news.66.a:0 "Let the reconquest begin." - wtt_news.66.b:0 "A miraculous reversal of fortune..." - wtt_news.67.t:0 "Unification of Arabia" - wtt_news.67.desc:0 "With the [From.GetOldAdjective] conquest of most of what constitutes the Arab world, the government has seized upon a renewed wave of Pan-Arabism spreading through the region. As international disagreements have been 'solved' through the outright removal of obstinate foreign governments through military means, Arab unification has seemed within easy reach, and the [From.GetOldAdjective] government has already shown its willingness to pursue this goal.\n\nWhether merely to 'ride the wave' of this public goodwill, to appeal as a home to all Arabs, or simply to facilitate regional integration, [From.GetOldAdjective] officials have now confirmed that the nation's official name shall be changed to '[From.GetNameDef]'." - wtt_news.67.a:0 "Zaydan's dream has been achieved." - wtt_news.67.b:0 "Will this lead to a lasting peace in the region?" - wtt_news.68.t:0 "Rise of [From.GetNameDef]" - wtt_news.68.desc:0 "As the [From.GetOldAdjective] nation grows into its neighbours, government attempts at creating historical continuity have become more and more apparent, evidently in an attempt to unify the people. The achievements of the Majapahit Empire have been strongly romanticized, but incessant propaganda seems to be having an effect on public opinion.\n\nToday, the [From.GetOldAdjective] government has taken this one step further and re-named the country to '[From.GetNameDef]' in homage to the region's history, hoping that it is something everyone in the region can relate to." - wtt_news.68.a:0 "This is the end of Asian colonialism!" - wtt_news.68.b:0 "They have seized their own destiny." - wtt_news.69.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.69.desc:0 "As the [From.GetOldAdjective] nation grows into its neighbours, the government has re-evaluated their departure from the Rattanakosin name. As their present borders more and more resemble those from the kingdom's historical high-point, the achievements of the Rattanakosin Kingdom have been increasingly used to influence public opinion.\n\nToday, the [From.GetOldAdjective] government has taken this one step further and officially re-named the country to '[From.GetNameDef]' in an attempt to draw legitimacy from history." - wtt_news.69.a:0 "We have reasserted our hegemony." - wtt_news.69.b:0 "Are the colonial Empires crumbling?" - wtt_news.70.t:0 "Rebirth of [From.GetNameDef]" - wtt_news.70.desc:0 "Under the rulership of Kaiserin Victoria, [From.GetOldNameDef] has greatly expanded their borders, surpassing even those of the old Holy Roman Empire. All continental foes that would challenge her rule have been brought to their knees by the [From.GetOldAdjective] military machine, leaving her unopposed to pursue her policies further.\n\nNow, the Kaiserin has decreed that the current opportunity shall be seized, and that the nation shall become the spiritual successor of the Holy Roman Empire. To represent this, the nation has now been officially renamed, and with it she has at last achieved the political unification of the region that has eluded the Emperors for centuries." - wtt_news.70.a:0 "Aquila Elegit Iovis Omnia Vincit!" - wtt_news.70.b:0 "Her splendor and glory cannot be denied!" - - -# # ## ### # ## ### ### # # ## ### ### ## -# # # # # # # # # # # # # # # # # # # # # # -# # # #### ### # # # ### # # # # # ### ### # -# # # # # # # # # # # # # # # # # # # # # # - # # # # # # ### ## # # ### # ## # # # ## - #Ask soviet for support - wtt_warlord_vs_prc.1.t:0 "[warlord.GetLeader] pleads for support" - wtt_warlord_vs_prc.1.desc:1 "A delegation from [warlord.GetLeader] has arrived in Moscow to sound us out about possible support in an internal party power struggle. They claim that [communist_china.GetLeader] is not sufficiently commited to the cause of communism and may, in fact, harbor reactionary thoughts and betray the revolution in its most critical phase.\n\n[warlord.GetLeader] instead proposes that we back him, promising eternal and undying loyalty to the communist cause in general and [SOU.GetLeader] in particular." - wtt_warlord_vs_prc.1.a:0 "A loyal puppet may prove useful." - wtt_warlord_vs_prc.1.a_tooltip:0 "This will lead to a war with §H[communist_china.GetNameDef]§! if they refuse.\n" - wtt_warlord_vs_prc.1.b:0 "We have no use for such blatant opportunism." - #soviet support new warlord and tells communist_china that they are done. - wtt_warlord_vs_prc.2.t:0 "A message from [soviet.GetLeader]" - wtt_warlord_vs_prc.2.desc:0 "The representative of the [SOV.GetAdjective] government has informed us that [SOV.GetLeader] harbours grave doubts about the accuracy of [communist_china.GetLeader]'s interpretation of Marxist theory. In this critical phase of the class struggle in China, we must not deviate from the correct application of Marxist-Leninist teachings. It appears that Moscow believes that [warlord.GetLeader] has a better understanding of what is needed to advance the Communist cause in China. As far as Moscow is concerned, the party would do well to accept [warlord.GetLeader] as the new chairman, or suffer the displeasure of [SOV.GetLeader]." - wtt_warlord_vs_prc.2.a:0 "Send [communist_china.GetLeader] to Moscow to straighten this out." - wtt_warlord_vs_prc.2.b:0 "We will never bow to traitors!" - #soviet tells Warlord no support - wtt_warlord_vs_prc.3.t:0 "[SOV.GetLeader] Refuses" - wtt_warlord_vs_prc.3.desc:0 "[SOV.GetLeader] reportedly remains unconvinced of our loyalty or ability to lead. The [SOV.GetAdjective] government continues to support [communist_china.GetLeader] as chairman of the Communist Party of China." - wtt_warlord_vs_prc.3.a:0 "Let's keep this between us." - #Warlord is told they are now the new communist_china. - wtt_warlord_vs_prc.4.t:0 "[communist_china.GetNameDefCap] Submits" - wtt_warlord_vs_prc.4.desc:0 "Desperate appeals by [communist_china.GetLeader] to [SOV.GetLeader] did little to sway the Soviets to his side. Recognizing a lost fight, [communist_china.GetLeader] has publicly acknowledged his mistakes and promised to work with us to ensure the victory of the revolution." - wtt_warlord_vs_prc.4.a:0 "Good." - ##Neighboring warlord told to join or die - wtt_warlord_vs_prc.10.t:0 "Join or Die" - wtt_warlord_vs_prc.10.desc:0 "Faced with the choice between giving up power or calling the Soviet bluff, [communist_china.GetLeader] choose the latter. Unfortunately, it seems that [SOV.GetLeader] was not bluffing and hostilities have commenced. Given our precarious position, we have been subjected to intense pressure by both sides, with the Soviets demanding we help them in ousting the traitor.\n\nRefusal, they say, would be the same as chosing to side with [communist_china.GetLeader]." - wtt_warlord_vs_prc.10.a:0 "It's not worth dying for [communist_china.GetLeader]" - wtt_warlord_vs_prc.10.b:0 "We will not be party to this." - #Soviet asks WTT_communist_china for more stuff after having supported them - wtt_warlord_vs_prc.21.t:0 "[From.GetLeader] Demands our Support" - wtt_warlord_vs_prc.21.desc:0 "A message from [From.GetLeader] has arrived, demanding that we step up deliveries of the previously agreed on economic aid." - wtt_warlord_vs_prc.21.a:0 "This is the price we pay." - wtt_warlord_vs_prc.21.b:0 "This is robbery!" - wtt_warlord_vs_prc.22.t:0 "[From.GetNameDefCap] Accepts" - wtt_warlord_vs_prc.22.desc:0 "Despite the usual protests from [From.GetLeader], he has agreed to increase the pace of the payments as we requested." - wtt_warlord_vs_prc.22.a:0 "He should pray we don't alter the deal any further." - wtt_warlord_vs_prc.23.t:0 "[From.GetNameDefCap] Refuses" - wtt_warlord_vs_prc.23.desc:0 "[From.GetLeader] has answered our request for additional support with a flat refusal, claiming that his nation is utterly unable to make the "absurd" payments we demand." - wtt_warlord_vs_prc.23.a:0 "He promised, and we will get what is ours!" - wtt_warlord_vs_prc.23.b:0 "Let it slide just this once." - #Soviet asks WTT_communist_china to become puppet - wtt_warlord_vs_prc.31.t:0 "[From.GetLeader] demands closer cooperation" - wtt_warlord_vs_prc.31.desc:0 "A message from [From.GetLeader] has arrived, saying that our stage of the revolutionary struggle is a particularly vulnerable one that could easily fall victim to the counter-revolution. His special representative has been instructed to keep a close watch on proceedings in our nation and advise us on how to achieve victory in the class struggle.\n\nThe note goes further to say that any deviation from his 'suggestions' will be considered a sign that reactionary elements have taken hold of our government, and that the necessary steps would then be taken." - wtt_warlord_vs_prc.31.a:0 "We welcome the opportunity to learn." - wtt_warlord_vs_prc.31.b:0 "We don't need anyone to tell us what to do." - wtt_warlord_vs_prc.32.t:0 "[From.GetNameDefCap] Accepts" - wtt_warlord_vs_prc.32.desc:0 "[From.GetLeader] has welcomed our special representative and appointed him his personal adviser. We now have very good control about their internal and external policies." - wtt_warlord_vs_prc.32.a:0 "He saw reason." - wtt_warlord_vs_prc.33.t:0 "[From.GetNameDefCap] Refuses" - wtt_warlord_vs_prc.33.desc:0 "Although receptive of the idea, [From.GetLeader] has politely but firmely declined our demand of being allowed to influence their policies more directly. It would seem that we are 'unfamiliar' with the conditions on the ground and should leave implementation of Marxist teachings to the local experts." - wtt_warlord_vs_prc.33.a:0 "Maybe we need to repeat ourselves more forcefully." - wtt_warlord_vs_prc.34.t:0 "[From.GetNameDefCap] Refuses to Pay" - wtt_warlord_vs_prc.34.desc:0 "[From.GetLeader] has ignored increasingly more forceful demands that he transfer the payments we agreed on previously. Even requesting that he come to Moscow to explain himself are left unanswered." - wtt_warlord_vs_prc.34.a:0 "So he wants to test us?" - # PRC informed a warlord wants to create a faction - wtt_warlord_vs_prc.35.t:0 "[From.GetAdjective] Alliance" - wtt_warlord_vs_prc.35.desc:0 "[From.GetNameDefCap] has requested that the Chinese communists join into a single faction, a People's Front, to defeat the nationalists, reactionaries and foreign invaders under one banner." - wtt_warlord_vs_prc.35.a:0 "The People are the heroes now!" - wtt_warlord_vs_prc.35.b:0 "This is against [Root.GetAdjective] interests." - # If a human PRC rejects the faction, the warlord can dismantle it altogether - wtt_warlord_vs_prc.36.t:0 "[From.GetLeader] Rejects Alliance" - wtt_warlord_vs_prc.36.desc:0 "[From.GetNameDefCap] has refused the obviously advantageous path of a People's Front united against the nationalists, reactionaries and foreign invaders, stating instead that our alliance would be 'against [From.GetAdjective] interests.'" - wtt_warlord_vs_prc.36.a:0 "We will just have to go it alone." - wtt_warlord_vs_prc.36.b:0 "We may as well disband the United Front altogether." - wtt_manchukou.1.t:0 "[From.GetNameDefCap] Demands Subjugation" - wtt_manchukou.1.desc:0 "It appears that [From.GetLeader] has made the decision to finally spread his authority to the far areas of China. A representative from the [From.GetAdjective] Government has arrived, demanding that we bow to the one true Emperor of China, the Son of Heaven, [From.GetLeader]. Refusing to do so, he continued, would be punished as treason of the higest order." - wtt_manchukou.1.a:0 "This whole Republic thing was never going to work anyway." - wtt_manchukou.1.b:0 "Let him try." - wtt_manchukou.2.t:0 "[From.GetLeader] Submits" - wtt_manchukou.2.desc:0 "[From.GetLeader] has sent the messenger back with a personal note, promising strict obedience and welcoming [MAN.GetLeader] as the true leader of China." - wtt_manchukou.2.a:0 "He knows his place." - wtt_manchukou.3.t:0 "[From.GetLeader] Refuses" - wtt_manchukou.3.desc:0 "[From.GetLeader] has replied to our generous offer with a string of insults and curses, making statements about the ancestry and personal qualities of Emperor [MAN.GetLeader] that are both inaccurate and very offensive." - wtt_manchukou.3.a:0 "We will teach him manners." - wtt_manchukou.11.t:0 "The Five Year Plan" - wtt_manchukou.11.desc:0 "The new Five Year Plan detailing how our government expects to grow the economy over the coming years is slowly coming together. Significant differences still exist between the various departments about where the main focus should be. \n\nWhile a consensus exists that an expansion of the heavy industry should be the goal, what these new factories should be producing is still under discussion. \n\nA decision by must be made to break the deadlock." - wtt_manchukou.11.a:0 "Build up our Aviation Industry" - wtt_manchukou.11.b:0 "Invest in the Automotive Industry" - wtt_manchukou.11.c:0 "A general program of Industrialization" - wtt_manchukou_bandit_sabotage.21.t:0 "Arms Factory Sabotaged" - wtt_manchukou_bandit_sabotage.21.desc:0 "Reports have come in from one of our factories in [state.GetName], reporting that a major fire broke out last night. Local firefighters are still tackling the blaze, but are confident that they will have the fire under control by the end of the day. The damage to the factory appears to be significant, as the fire appears to have started in the storage area for highly flammable chemicals.\n\nMilitary Intelligence has started a thorough investigation to find out how the fire could break out despite the strictest safety measures. First leads indicate arson as a strong possibility." - wtt_manchukou_bandit_sabotage.21.a:0 "These terrorists must be hunted down!" - wtt_manchukou_bandit_sabotage.22.t:0 "Civilian Factory Sabotaged" - wtt_manchukou_bandit_sabotage.23.t:0 "Bridge Blown" - wtt_manchukou_bandit_sabotage.23.desc:0 "Sometime during the last night, a major railway bridge in [state.GetName] collapsed under the weight of a passing ammunition train. Rescue and recovery efforts have been made difficult by the secondary exposions from the ammunition. The crew of the train is still missing, presumed dead.\n\nMilitary Intelligence has dispatched a team to investigate the site as soon as it is safe to do so, to find out how a sturdy bridge could collapse with no warning signs.\n\nLocal witnesses report seeing a small group in the valley below the bridge on the day before the collapse. Their whereabouts are currently unknown." - generic.11.t:0 "Civil War Ends" - generic.11.d:0 "The war that has torn our nation has at last ended. We may now begin the task of unifying the people, and of repairing the destruction." - generic.11.a:0 "Together, we will work for a better future!" - generic.12.t:0 "[From.GetAdjective] Attempts to Sabotage Suez" - generic.12.d:0 "Military intelligence indicates the [From.GetAdjective] intend to use large-scale demolitions and blockships to sabotage the Suez Canal. If we wish to stop them, we do not have much time." - generic.12.a:0 "We cannot allow this!" - generic.13.t:0 "[From.GetAdjective] Attempts to Sabotage Panama" - generic.13.d:0 "Military intelligence indicates the [From.GetAdjective] intend to use large-scale demolitions and blockships to sabotage the Panama Canal. If we wish to stop them, we do not have much time." - generic.14.t:0 "[From.GetName] Issues Diplomatic Protest" - generic.14.d:0 "[From.GetAdjective] envoys have lodged a strong diplomatic protest with our government regarding the presence of our attachés in nations they are currently in a military conflict with. They demand the immediate recall of our military mission." - generic.14.a:0 "It is a reasonable request." - generic.14.b:0 "Our attachés will be sent where we please." - attache_political_power_tt:1 "Due to our relative strength and our §Yopinion§! of them this will have the following effect:\n" - attache_fascism_tt:0 "Due to the amount of §YFascism§! support in our country this will have the following effect:\n" - attache_communism_tt:0 "Due to the amount of §YCommunism§! support in our country this will have the following effect:\n" - attache_democratic_tt:0 "Due to the amount of §YDemocratic§! support in our country this will have the following effect:\n" - attache_neutrality_tt:0 "Due to the amount of §YUnaligned§! support in our country this will have the following effect:\n" - generic.15.t:0 "[From.GetName] Recalls Attaché" - generic.15.d:0 "In response to our demands, [From.GetNameDef] has withdrawn their military mission to our enemies." - generic.16.t:0 "[From.GetName] Maintains Attaché" - generic.16.d:0 "In spite of our demands, [From.GetNameDef] has refused to withdraw their military mission to our enemies, stating that "we have no business interfering with internal [From.GetAdjective] affairs"." - generic.16.a:0 "We will see about that." - canals_tt:0 "Wrest control of the canal's banks within the next month to prevent the enemy plan." - generic.17.t:0 "[From.GetName] Falls Ill" - generic.17.d:0 "In [From.GetHerHis] service to [From.From.GetNameDef], it seems [From.GetRank] [From.GetName] has pushed [From.GetHerselfHimself] too far. As a result of the bad climate in their operational area, the [From.GetRank] has now fallen ill, and will likely need some time to recover. Until [From.GetSheHe] gets well, [From.GetSheHe] will not be performing at [From.GetHerHis] usual level." - generic.18.t:0 "[From.GetName] Wounded" - generic.18.d:0 "In bringing the battle to a successful conclusion, it seems [From.GetRank] [From.GetName] put [From.GetHerselfHimself] at a bit too much risk while leading [From.GetHerHis] men. [From.GetSheHeCap] has been wounded, and it will likely take some time for the wounds to fully heal, until which time the [From.GetRank] will not be performing at [From.GetHerHis] usual level." - japan_border_conflict.1.t:0 "Japanese Provocation at our border" - japan_border_conflict.1.desc:0 "As part of maintaining the demarkation line on the border between us and [JAP.GetNameDef], a work party was sent out to check the demarcation markers near Lake Khasan. When approaching the border, the work party was taken under fire by a local Japanese outpost. \n\n We have lodged a formal diplomatic protest, but the Japanese ambassador maintains that the work party was sent to move the markers to allow us to claim more territory.\n\nThe Japanese have assured us that they will respect the border but will not allow any "tampering" with the current demarcation and will respond with force should we attempt to do so.\n\n This effectively means that we can no longer move freely about our territory in the area." - japan_border_conflict.1.a:0 "Unacceptable." - japan_border_conflict.2.t:0 "Japanese Victory at Lake Khasan" - japan_border_conflict.2.desc:0 "Following a clash between [SOV.GetAdjective] and Japanese forces in the border area around Lake Khasan, the [SOV.GetAdjective] forces are reportedly in full retreat. Japanese units have occupied a number of strategic hills around the area and begun to fortify their positions.\n\nDuring the battle, the Japanese captured a number of [SOV.GetAdjective] tanks, which have been shipped to Tokyo for evaluation." - japan_border_conflict.2.a:0 "We have settled this matter honorably." - japan_border_conflict.2.b:0 "We must prepare an appropriate response." - japan_border_conflict.3.t:0 "Japanese Defeat at Lake Khasan" - japan_border_conflict.3.desc:0 "Following a clash between [SOV.GetAdjective] and Japanese forces in the border area around Lake Khasan, the Japanese ambassador in Moscow has requested a cease-fire. \n\n Several Japanese assaults on [SOV.GetAdjective] positions failed with heavy casualties during the battle, raising concerns in the Japanese military about the capabilities of their forces." - japan_border_conflict.3.a:0 "It is better to fail with honor than never to try at all." - japan_border_conflict.3.b:0 "Our forces have acquitted themselves well." - japan_border_conflict.4.t:0 "Stalemate at Lake Khasan" - japan_border_conflict.4.desc:0 "Fighting between Japanese and [SOV.GetAdjective] forces around Lake Khasan has died down after both sides withdrew from the contested region to regroup and resupply. Recognizing the futility of further offensives, the Japanese military has asked for a cease-fire and negotiations to fix the border." - japan_border_conflict.4.a:0 "We gained valuable experience." - japan_border_conflict.5.t:0 "Escalation at Lake Khasan" - japan_border_conflict.5.desc:1 "Fighting continues between Japanese and [SOV.GetAdjective] forces around Lake Khasan. In an effort to break the deadlock, Japanese forces in other areas have also started to engage [SOV.GetAdjective] forces in that sector. Intelligence suggests that the Japanese may soon reinforce the attack with fresh troops transferred from other parts of their Empire." - japan_border_conflict.5.a:0 "We must hold the line." - japan_border_conflict.6.t:0 "Escalation at Lake Khasan" - japan_border_conflict.6.desc:0 "Fighting continues between [FROM.GetAdjective] and [JAP.GetAdjective] forces around Lake Khasan. In an effort to break the deadlock, [FROM.GetAdjective] forces in other areas have also started to engage [JAP.GetAdjective] forces in that sector. Intelligence suggests that [FROM.GetNameDef] may soon reinforce the attack with fresh troops transferred from other parts of their country." - japan_border_conflict.6.a:0 "We must prepare to attack!" - JAP_kalkin_gol:0 "Soviets Tested" - wtt_prc.30.t:0 "Provocation Successful" - wtt_prc.30.desc:0 "Working under the cover of night, our comrades in [JAP.GetManchuriaPuppet] have sabotaged a Japanese factory. Details about the damage done are sparse as the Imperialists have declared the entire area a restricted area.\n\nThis fact alone should tell us that we have struck true. It remains to be seen if this will prompt the Japanese into action." - wtt_prc.30.a:0 "We've struck the Hornet's Nest." - wtt_prc.31.desc:0 "Working under the cover of night, our comrades in [JAP.GetManchuriaPuppet] have managed to sabotage a vital bridge. The small commando force reports that the bridge has been completely destroyed and took an ammunition train with it as it collapsed. \n\n\they have made sure to be seen by the locals, making it clear that this was an act of sabotage. It remains to be seen if this will prompt the Japanese into action." - wtt_prc.32.desc:0 "We have successfully ambushed and annihilated a Japanese patrol in [JAP.GetManchuriaPuppet]. Their bodies were left at the scene to make sure the Imperialists get the right message. \n\nTime will tell if they consider this action reasons enough to go to war." - wtt_prc.20.c:0 "We should withdraw from the continent altogether." - wtt_germany.1006.t:0 "The Kaiser is preparing a coup!" - wtt_germany.1006.desc:0 "The Servizio Informatzione Militaire has reported of suspicious activity in the monarchist inner circles. It appears that some of those loyal only to the king have recently been in contact with foreign agents, German ones at that. It seems as though the monarchists are being recruited and rallied into opposing our great leader, but all is not lost. We can send in the gangs to take care of them, and beat them back while we still have a chance to do so. How should we proceed?" - wtt_germany.1006.a:0 "Banda Carità can deal with them" - britain.25.t:0 "[ENG.GetNameDefCap] demands submission" - britain.25.desc:0 "The [ENG.GetAdjective] government, seemingly alarmed after the fall of [DEN.GetNameDef] alongside the presence of [GER.GetAdjective] diplomats in [ICE.GetNameDef] has invited us to join the allies as co-belligerents. They cite concerns about their national security in which the [GER.GetNameDef] could potentially use Icelandic bases as a springboard for raids on English convoys or cities.\nTheir threats were thinly veiled, citing the current world situation that any claims of “supposed neutrality” from our side is eclipsed by the safety of British citizens and the war against fascism." - britain.25.a:0 "We have no choice but to join [ENG.GetFactionName]" - britain.25.b:0 "The [ENG.GetAdjective] be damned" - britain.25.c:0 "We must abide by our neutrality, even if it means invasion" - britain.26.t:0 "[ICE.GetNameDefCap] seeks our protection from [ENG.GetNameDef]" - britain.26.desc:0 "Our diplomats currently stationed in [ICE.GetNameDef] has sent us a flurry of messages that the fledgling [ICE.GetAdjective] government has been threatened with occupation by English forces unless they submit. Lacking any other viable alternative [ICE.GetLeader.GetName] has requested our protection from the English threat. Maybe a base so close to the British mainland would be beneficial to us?" - britain.26.a:0 "The people of [ICE.GetNameDef] must be protected" - britain.26.b:0 "We can't spare the resources" - britain.27.t:0 "[ICE.GetNameDefCap] rejects our proposal" - britain.27.desc:0 "The [ICE.GetAdjective] government has rejected our ultimatum for compliance, citing their belief in neutrality and the vehement opposition to being dragged into a war which they had no part in.\nThey charge that with this order their independence is both being infringed upon and flagrantly violated. Sadly this is modern war, and in modern war there can be no neutral parties; while we regret this course of action we must do what we must do." - britain.27.a:0 "A regrettable but necessary course" diff --git a/tools/build_gfx_search_website.bat b/tools/build_gfx_search_website.bat new file mode 100644 index 000000000..fca6e27cf --- /dev/null +++ b/tools/build_gfx_search_website.bat @@ -0,0 +1,3 @@ +cd .. +python.exe .\tools\gfx_search\build.py +pause \ No newline at end of file diff --git a/tools/decisions.bat b/tools/decisions.bat index 74729e0c9..582231e89 100644 --- a/tools/decisions.bat +++ b/tools/decisions.bat @@ -1,2 +1,2 @@ -python.exe .\make_gfx.py -s decisions -o decisions +python.exe .\make_gfx.py -s decisions -o lotr_decisions pause \ No newline at end of file diff --git a/tools/eventpictures.bat b/tools/eventpictures.bat index ccc2a8808..92b750544 100644 --- a/tools/eventpictures.bat +++ b/tools/eventpictures.bat @@ -1,2 +1,2 @@ -python.exe .\make_gfx.py -s report_eventpictures -o reporteventpictures +python.exe .\make_gfx.py -s report_eventpictures -o lotr_events pause \ No newline at end of file diff --git a/tools/gfx_search/bootstrap.bundle.min.js b/tools/gfx_search/bootstrap.bundle.min.js new file mode 100644 index 000000000..7d50e873a --- /dev/null +++ b/tools/gfx_search/bootstrap.bundle.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.0.0 (https://getbootstrap.com) + * Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery")):"function"==typeof define&&define.amd?define(["exports","jquery"],e):e(t.bootstrap={},t.jQuery)}(this,function(t,e){"use strict";function n(t,e){for(var n=0;n0?i:null}catch(t){return null}},reflow:function(t){return t.offsetHeight},triggerTransitionEnd:function(n){t(n).trigger(e.end)},supportsTransitionEnd:function(){return Boolean(e)},isElement:function(t){return(t[0]||t).nodeType},typeCheckConfig:function(t,e,n){for(var r in n)if(Object.prototype.hasOwnProperty.call(n,r)){var o=n[r],s=e[r],a=s&&i.isElement(s)?"element":(l=s,{}.toString.call(l).match(/\s([a-zA-Z]+)/)[1].toLowerCase());if(!new RegExp(o).test(a))throw new Error(t.toUpperCase()+': Option "'+r+'" provided type "'+a+'" but expected type "'+o+'".')}var l}};return e=("undefined"==typeof window||!window.QUnit)&&{end:"transitionend"},t.fn.emulateTransitionEnd=n,i.supportsTransitionEnd()&&(t.event.special[i.TRANSITION_END]={bindType:e.end,delegateType:e.end,handle:function(e){if(t(e.target).is(this))return e.handleObj.handler.apply(this,arguments)}}),i}(e=e&&e.hasOwnProperty("default")?e.default:e),L=(s="alert",l="."+(a="bs.alert"),c=(o=e).fn[s],h={CLOSE:"close"+l,CLOSED:"closed"+l,CLICK_DATA_API:"click"+l+".data-api"},f="alert",u="fade",d="show",p=function(){function t(t){this._element=t}var e=t.prototype;return e.close=function(t){t=t||this._element;var e=this._getRootElement(t);this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},e.dispose=function(){o.removeData(this._element,a),this._element=null},e._getRootElement=function(t){var e=k.getSelectorFromElement(t),n=!1;return e&&(n=o(e)[0]),n||(n=o(t).closest("."+f)[0]),n},e._triggerCloseEvent=function(t){var e=o.Event(h.CLOSE);return o(t).trigger(e),e},e._removeElement=function(t){var e=this;o(t).removeClass(d),k.supportsTransitionEnd()&&o(t).hasClass(u)?o(t).one(k.TRANSITION_END,function(n){return e._destroyElement(t,n)}).emulateTransitionEnd(150):this._destroyElement(t)},e._destroyElement=function(t){o(t).detach().trigger(h.CLOSED).remove()},t._jQueryInterface=function(e){return this.each(function(){var n=o(this),i=n.data(a);i||(i=new t(this),n.data(a,i)),"close"===e&&i[e](this)})},t._handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},i(t,null,[{key:"VERSION",get:function(){return"4.0.0"}}]),t}(),o(document).on(h.CLICK_DATA_API,'[data-dismiss="alert"]',p._handleDismiss(new p)),o.fn[s]=p._jQueryInterface,o.fn[s].Constructor=p,o.fn[s].noConflict=function(){return o.fn[s]=c,p._jQueryInterface},p),P=(m="button",v="."+(_="bs.button"),E=".data-api",y=(g=e).fn[m],b="active",T="btn",C="focus",w='[data-toggle^="button"]',I='[data-toggle="buttons"]',A="input",D=".active",S=".btn",O={CLICK_DATA_API:"click"+v+E,FOCUS_BLUR_DATA_API:"focus"+v+E+" blur"+v+E},N=function(){function t(t){this._element=t}var e=t.prototype;return e.toggle=function(){var t=!0,e=!0,n=g(this._element).closest(I)[0];if(n){var i=g(this._element).find(A)[0];if(i){if("radio"===i.type)if(i.checked&&g(this._element).hasClass(b))t=!1;else{var r=g(n).find(D)[0];r&&g(r).removeClass(b)}if(t){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains("disabled")||n.classList.contains("disabled"))return;i.checked=!g(this._element).hasClass(b),g(i).trigger("change")}i.focus(),e=!1}}e&&this._element.setAttribute("aria-pressed",!g(this._element).hasClass(b)),t&&g(this._element).toggleClass(b)},e.dispose=function(){g.removeData(this._element,_),this._element=null},t._jQueryInterface=function(e){return this.each(function(){var n=g(this).data(_);n||(n=new t(this),g(this).data(_,n)),"toggle"===e&&n[e]()})},i(t,null,[{key:"VERSION",get:function(){return"4.0.0"}}]),t}(),g(document).on(O.CLICK_DATA_API,w,function(t){t.preventDefault();var e=t.target;g(e).hasClass(T)||(e=g(e).closest(S)),N._jQueryInterface.call(g(e),"toggle")}).on(O.FOCUS_BLUR_DATA_API,w,function(t){var e=g(t.target).closest(S)[0];g(e).toggleClass(C,/^focus(in)?$/.test(t.type))}),g.fn[m]=N._jQueryInterface,g.fn[m].Constructor=N,g.fn[m].noConflict=function(){return g.fn[m]=y,N._jQueryInterface},N),x=function(t){var e="carousel",n="bs.carousel",o="."+n,s=t.fn[e],a={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0},l={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean"},c="next",h="prev",f="left",u="right",d={SLIDE:"slide"+o,SLID:"slid"+o,KEYDOWN:"keydown"+o,MOUSEENTER:"mouseenter"+o,MOUSELEAVE:"mouseleave"+o,TOUCHEND:"touchend"+o,LOAD_DATA_API:"load"+o+".data-api",CLICK_DATA_API:"click"+o+".data-api"},p="carousel",g="active",m="slide",_="carousel-item-right",v="carousel-item-left",E="carousel-item-next",y="carousel-item-prev",b={ACTIVE:".active",ACTIVE_ITEM:".active.carousel-item",ITEM:".carousel-item",NEXT_PREV:".carousel-item-next, .carousel-item-prev",INDICATORS:".carousel-indicators",DATA_SLIDE:"[data-slide], [data-slide-to]",DATA_RIDE:'[data-ride="carousel"]'},T=function(){function s(e,n){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this._config=this._getConfig(n),this._element=t(e)[0],this._indicatorsElement=t(this._element).find(b.INDICATORS)[0],this._addEventListeners()}var T=s.prototype;return T.next=function(){this._isSliding||this._slide(c)},T.nextWhenVisible=function(){!document.hidden&&t(this._element).is(":visible")&&"hidden"!==t(this._element).css("visibility")&&this.next()},T.prev=function(){this._isSliding||this._slide(h)},T.pause=function(e){e||(this._isPaused=!0),t(this._element).find(b.NEXT_PREV)[0]&&k.supportsTransitionEnd()&&(k.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},T.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},T.to=function(e){var n=this;this._activeElement=t(this._element).find(b.ACTIVE_ITEM)[0];var i=this._getItemIndex(this._activeElement);if(!(e>this._items.length-1||e<0))if(this._isSliding)t(this._element).one(d.SLID,function(){return n.to(e)});else{if(i===e)return this.pause(),void this.cycle();var r=e>i?c:h;this._slide(r,this._items[e])}},T.dispose=function(){t(this._element).off(o),t.removeData(this._element,n),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},T._getConfig=function(t){return t=r({},a,t),k.typeCheckConfig(e,t,l),t},T._addEventListeners=function(){var e=this;this._config.keyboard&&t(this._element).on(d.KEYDOWN,function(t){return e._keydown(t)}),"hover"===this._config.pause&&(t(this._element).on(d.MOUSEENTER,function(t){return e.pause(t)}).on(d.MOUSELEAVE,function(t){return e.cycle(t)}),"ontouchstart"in document.documentElement&&t(this._element).on(d.TOUCHEND,function(){e.pause(),e.touchTimeout&&clearTimeout(e.touchTimeout),e.touchTimeout=setTimeout(function(t){return e.cycle(t)},500+e._config.interval)}))},T._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},T._getItemIndex=function(e){return this._items=t.makeArray(t(e).parent().find(b.ITEM)),this._items.indexOf(e)},T._getItemByDirection=function(t,e){var n=t===c,i=t===h,r=this._getItemIndex(e),o=this._items.length-1;if((i&&0===r||n&&r===o)&&!this._config.wrap)return e;var s=(r+(t===h?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},T._triggerSlideEvent=function(e,n){var i=this._getItemIndex(e),r=this._getItemIndex(t(this._element).find(b.ACTIVE_ITEM)[0]),o=t.Event(d.SLIDE,{relatedTarget:e,direction:n,from:r,to:i});return t(this._element).trigger(o),o},T._setActiveIndicatorElement=function(e){if(this._indicatorsElement){t(this._indicatorsElement).find(b.ACTIVE).removeClass(g);var n=this._indicatorsElement.children[this._getItemIndex(e)];n&&t(n).addClass(g)}},T._slide=function(e,n){var i,r,o,s=this,a=t(this._element).find(b.ACTIVE_ITEM)[0],l=this._getItemIndex(a),h=n||a&&this._getItemByDirection(e,a),p=this._getItemIndex(h),T=Boolean(this._interval);if(e===c?(i=v,r=E,o=f):(i=_,r=y,o=u),h&&t(h).hasClass(g))this._isSliding=!1;else if(!this._triggerSlideEvent(h,o).isDefaultPrevented()&&a&&h){this._isSliding=!0,T&&this.pause(),this._setActiveIndicatorElement(h);var C=t.Event(d.SLID,{relatedTarget:h,direction:o,from:l,to:p});k.supportsTransitionEnd()&&t(this._element).hasClass(m)?(t(h).addClass(r),k.reflow(h),t(a).addClass(i),t(h).addClass(i),t(a).one(k.TRANSITION_END,function(){t(h).removeClass(i+" "+r).addClass(g),t(a).removeClass(g+" "+r+" "+i),s._isSliding=!1,setTimeout(function(){return t(s._element).trigger(C)},0)}).emulateTransitionEnd(600)):(t(a).removeClass(g),t(h).addClass(g),this._isSliding=!1,t(this._element).trigger(C)),T&&this.cycle()}},s._jQueryInterface=function(e){return this.each(function(){var i=t(this).data(n),o=r({},a,t(this).data());"object"==typeof e&&(o=r({},o,e));var l="string"==typeof e?e:o.slide;if(i||(i=new s(this,o),t(this).data(n,i)),"number"==typeof e)i.to(e);else if("string"==typeof l){if("undefined"==typeof i[l])throw new TypeError('No method named "'+l+'"');i[l]()}else o.interval&&(i.pause(),i.cycle())})},s._dataApiClickHandler=function(e){var i=k.getSelectorFromElement(this);if(i){var o=t(i)[0];if(o&&t(o).hasClass(p)){var a=r({},t(o).data(),t(this).data()),l=this.getAttribute("data-slide-to");l&&(a.interval=!1),s._jQueryInterface.call(t(o),a),l&&t(o).data(n).to(l),e.preventDefault()}}},i(s,null,[{key:"VERSION",get:function(){return"4.0.0"}},{key:"Default",get:function(){return a}}]),s}();return t(document).on(d.CLICK_DATA_API,b.DATA_SLIDE,T._dataApiClickHandler),t(window).on(d.LOAD_DATA_API,function(){t(b.DATA_RIDE).each(function(){var e=t(this);T._jQueryInterface.call(e,e.data())})}),t.fn[e]=T._jQueryInterface,t.fn[e].Constructor=T,t.fn[e].noConflict=function(){return t.fn[e]=s,T._jQueryInterface},T}(e),R=function(t){var e="collapse",n="bs.collapse",o="."+n,s=t.fn[e],a={toggle:!0,parent:""},l={toggle:"boolean",parent:"(string|element)"},c={SHOW:"show"+o,SHOWN:"shown"+o,HIDE:"hide"+o,HIDDEN:"hidden"+o,CLICK_DATA_API:"click"+o+".data-api"},h="show",f="collapse",u="collapsing",d="collapsed",p="width",g="height",m={ACTIVES:".show, .collapsing",DATA_TOGGLE:'[data-toggle="collapse"]'},_=function(){function o(e,n){this._isTransitioning=!1,this._element=e,this._config=this._getConfig(n),this._triggerArray=t.makeArray(t('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'));for(var i=t(m.DATA_TOGGLE),r=0;r0&&(this._selector=s,this._triggerArray.push(o))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var s=o.prototype;return s.toggle=function(){t(this._element).hasClass(h)?this.hide():this.show()},s.show=function(){var e,i,r=this;if(!this._isTransitioning&&!t(this._element).hasClass(h)&&(this._parent&&0===(e=t.makeArray(t(this._parent).find(m.ACTIVES).filter('[data-parent="'+this._config.parent+'"]'))).length&&(e=null),!(e&&(i=t(e).not(this._selector).data(n))&&i._isTransitioning))){var s=t.Event(c.SHOW);if(t(this._element).trigger(s),!s.isDefaultPrevented()){e&&(o._jQueryInterface.call(t(e).not(this._selector),"hide"),i||t(e).data(n,null));var a=this._getDimension();t(this._element).removeClass(f).addClass(u),this._element.style[a]=0,this._triggerArray.length>0&&t(this._triggerArray).removeClass(d).attr("aria-expanded",!0),this.setTransitioning(!0);var l=function(){t(r._element).removeClass(u).addClass(f).addClass(h),r._element.style[a]="",r.setTransitioning(!1),t(r._element).trigger(c.SHOWN)};if(k.supportsTransitionEnd()){var p="scroll"+(a[0].toUpperCase()+a.slice(1));t(this._element).one(k.TRANSITION_END,l).emulateTransitionEnd(600),this._element.style[a]=this._element[p]+"px"}else l()}}},s.hide=function(){var e=this;if(!this._isTransitioning&&t(this._element).hasClass(h)){var n=t.Event(c.HIDE);if(t(this._element).trigger(n),!n.isDefaultPrevented()){var i=this._getDimension();if(this._element.style[i]=this._element.getBoundingClientRect()[i]+"px",k.reflow(this._element),t(this._element).addClass(u).removeClass(f).removeClass(h),this._triggerArray.length>0)for(var r=0;r0&&t(n).toggleClass(d,!i).attr("aria-expanded",i)}},o._getTargetFromElement=function(e){var n=k.getSelectorFromElement(e);return n?t(n)[0]:null},o._jQueryInterface=function(e){return this.each(function(){var i=t(this),s=i.data(n),l=r({},a,i.data(),"object"==typeof e&&e);if(!s&&l.toggle&&/show|hide/.test(e)&&(l.toggle=!1),s||(s=new o(this,l),i.data(n,s)),"string"==typeof e){if("undefined"==typeof s[e])throw new TypeError('No method named "'+e+'"');s[e]()}})},i(o,null,[{key:"VERSION",get:function(){return"4.0.0"}},{key:"Default",get:function(){return a}}]),o}();return t(document).on(c.CLICK_DATA_API,m.DATA_TOGGLE,function(e){"A"===e.currentTarget.tagName&&e.preventDefault();var i=t(this),r=k.getSelectorFromElement(this);t(r).each(function(){var e=t(this),r=e.data(n)?"toggle":i.data();_._jQueryInterface.call(e,r)})}),t.fn[e]=_._jQueryInterface,t.fn[e].Constructor=_,t.fn[e].noConflict=function(){return t.fn[e]=s,_._jQueryInterface},_}(e),j="undefined"!=typeof window&&"undefined"!=typeof document,H=["Edge","Trident","Firefox"],M=0,W=0;W=0){M=1;break}var U=j&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then(function(){e=!1,t()}))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout(function(){e=!1,t()},M))}};function B(t){return t&&"[object Function]"==={}.toString.call(t)}function F(t,e){if(1!==t.nodeType)return[];var n=getComputedStyle(t,null);return e?n[e]:n}function K(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function V(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=F(t),n=e.overflow,i=e.overflowX,r=e.overflowY;return/(auto|scroll)/.test(n+r+i)?t:V(K(t))}function Q(t){var e=t&&t.offsetParent,n=e&&e.nodeName;return n&&"BODY"!==n&&"HTML"!==n?-1!==["TD","TABLE"].indexOf(e.nodeName)&&"static"===F(e,"position")?Q(e):e:t?t.ownerDocument.documentElement:document.documentElement}function Y(t){return null!==t.parentNode?Y(t.parentNode):t}function G(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,r=n?e:t,o=document.createRange();o.setStart(i,0),o.setEnd(r,0);var s,a,l=o.commonAncestorContainer;if(t!==l&&e!==l||i.contains(r))return"BODY"===(a=(s=l).nodeName)||"HTML"!==a&&Q(s.firstElementChild)!==s?Q(l):l;var c=Y(t);return c.host?G(c.host,e):G(t,Y(e).host)}function q(t){var e="top"===(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top")?"scrollTop":"scrollLeft",n=t.nodeName;if("BODY"===n||"HTML"===n){var i=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||i)[e]}return t[e]}function z(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"],10)+parseFloat(t["border"+i+"Width"],10)}var X=void 0,Z=function(){return void 0===X&&(X=-1!==navigator.appVersion.indexOf("MSIE 10")),X};function J(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],Z()?n["offset"+t]+i["margin"+("Height"===t?"Top":"Left")]+i["margin"+("Height"===t?"Bottom":"Right")]:0)}function $(){var t=document.body,e=document.documentElement,n=Z()&&getComputedStyle(e);return{height:J("Height",t,e,n),width:J("Width",t,e,n)}}var tt=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},et=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],i=q(e,"top"),r=q(e,"left"),o=n?-1:1;return t.top+=i*o,t.bottom+=i*o,t.left+=r*o,t.right+=r*o,t}(h,e)),h}function at(t,e,n,i){var r,o,s,a,l,c,h,f={top:0,left:0},u=G(t,e);if("viewport"===i)o=(r=u).ownerDocument.documentElement,s=st(r,o),a=Math.max(o.clientWidth,window.innerWidth||0),l=Math.max(o.clientHeight,window.innerHeight||0),c=q(o),h=q(o,"left"),f=rt({top:c-s.top+s.marginTop,left:h-s.left+s.marginLeft,width:a,height:l});else{var d=void 0;"scrollParent"===i?"BODY"===(d=V(K(e))).nodeName&&(d=t.ownerDocument.documentElement):d="window"===i?t.ownerDocument.documentElement:i;var p=st(d,u);if("HTML"!==d.nodeName||function t(e){var n=e.nodeName;return"BODY"!==n&&"HTML"!==n&&("fixed"===F(e,"position")||t(K(e)))}(u))f=p;else{var g=$(),m=g.height,_=g.width;f.top+=p.top-p.marginTop,f.bottom=m+p.top,f.left+=p.left-p.marginLeft,f.right=_+p.left}}return f.left+=n,f.top+=n,f.right-=n,f.bottom-=n,f}function lt(t,e,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var s=at(n,i,o,r),a={top:{width:s.width,height:e.top-s.top},right:{width:s.right-e.right,height:s.height},bottom:{width:s.width,height:s.bottom-e.bottom},left:{width:e.left-s.left,height:s.height}},l=Object.keys(a).map(function(t){return it({key:t},a[t],{area:(e=a[t],e.width*e.height)});var e}).sort(function(t,e){return e.area-t.area}),c=l.filter(function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight}),h=c.length>0?c[0].key:l[0].key,f=t.split("-")[1];return h+(f?"-"+f:"")}function ct(t,e,n){return st(n,G(e,n))}function ht(t){var e=getComputedStyle(t),n=parseFloat(e.marginTop)+parseFloat(e.marginBottom),i=parseFloat(e.marginLeft)+parseFloat(e.marginRight);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function ft(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,function(t){return e[t]})}function ut(t,e,n){n=n.split("-")[0];var i=ht(t),r={width:i.width,height:i.height},o=-1!==["right","left"].indexOf(n),s=o?"top":"left",a=o?"left":"top",l=o?"height":"width",c=o?"width":"height";return r[s]=e[s]+e[l]/2-i[l]/2,r[a]=n===a?e[a]-i[c]:e[ft(a)],r}function dt(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function pt(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex(function(t){return t[e]===n});var i=dt(t,function(t){return t[e]===n});return t.indexOf(i)}(t,"name",n))).forEach(function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&B(n)&&(e.offsets.popper=rt(e.offsets.popper),e.offsets.reference=rt(e.offsets.reference),e=n(e,t))}),e}function gt(t,e){return t.some(function(t){var n=t.name;return t.enabled&&n===e})}function mt(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i1&&void 0!==arguments[1]&&arguments[1],n=wt.indexOf(t),i=wt.slice(n+1).concat(wt.slice(0,n));return e?i.reverse():i}var At={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function Dt(t,e,n,i){var r=[0,0],o=-1!==["right","left"].indexOf(i),s=t.split(/(\+|\-)/).map(function(t){return t.trim()}),a=s.indexOf(dt(s,function(t){return-1!==t.search(/,|\s/)}));s[a]&&-1===s[a].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==a?[s.slice(0,a).concat([s[a].split(l)[0]]),[s[a].split(l)[1]].concat(s.slice(a+1))]:[s];return(c=c.map(function(t,i){var r=(1===i?!o:o)?"height":"width",s=!1;return t.reduce(function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,s=!0,t):s?(t[t.length-1]+=e,s=!1,t):t.concat(e)},[]).map(function(t){return function(t,e,n,i){var r=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),o=+r[1],s=r[2];if(!o)return t;if(0===s.indexOf("%")){var a=void 0;switch(s){case"%p":a=n;break;case"%":case"%r":default:a=i}return rt(a)[e]/100*o}if("vh"===s||"vw"===s)return("vh"===s?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*o;return o}(t,r,e,n)})})).forEach(function(t,e){t.forEach(function(n,i){yt(n)&&(r[e]+=n*("-"===t[i-1]?-1:1))})}),r}var St={placement:"bottom",eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var r=t.offsets,o=r.reference,s=r.popper,a=-1!==["bottom","top"].indexOf(n),l=a?"left":"top",c=a?"width":"height",h={start:nt({},l,o[l]),end:nt({},l,o[l]+o[c]-s[c])};t.offsets.popper=it({},s,h[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,r=t.offsets,o=r.popper,s=r.reference,a=i.split("-")[0],l=void 0;return l=yt(+n)?[+n,0]:Dt(n,o,s,a),"left"===a?(o.top+=l[0],o.left-=l[1]):"right"===a?(o.top+=l[0],o.left+=l[1]):"top"===a?(o.left+=l[0],o.top-=l[1]):"bottom"===a&&(o.left+=l[0],o.top+=l[1]),t.popper=o,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||Q(t.instance.popper);t.instance.reference===n&&(n=Q(n));var i=at(t.instance.popper,t.instance.reference,e.padding,n);e.boundaries=i;var r=e.priority,o=t.offsets.popper,s={primary:function(t){var n=o[t];return o[t]i[t]&&!e.escapeWithReference&&(r=Math.min(o[n],i[t]-("right"===t?o.width:o.height))),nt({},n,r)}};return r.forEach(function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";o=it({},o,s[e](t))}),t.offsets.popper=o,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,r=t.placement.split("-")[0],o=Math.floor,s=-1!==["top","bottom"].indexOf(r),a=s?"right":"bottom",l=s?"left":"top",c=s?"width":"height";return n[a]o(i[a])&&(t.offsets.popper[l]=o(i[a])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!Tt(t.instance.modifiers,"arrow","keepTogether"))return t;var i=e.element;if("string"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var r=t.placement.split("-")[0],o=t.offsets,s=o.popper,a=o.reference,l=-1!==["left","right"].indexOf(r),c=l?"height":"width",h=l?"Top":"Left",f=h.toLowerCase(),u=l?"left":"top",d=l?"bottom":"right",p=ht(i)[c];a[d]-ps[d]&&(t.offsets.popper[f]+=a[f]+p-s[d]),t.offsets.popper=rt(t.offsets.popper);var g=a[f]+a[c]/2-p/2,m=F(t.instance.popper),_=parseFloat(m["margin"+h],10),v=parseFloat(m["border"+h+"Width"],10),E=g-t.offsets.popper[f]-_-v;return E=Math.max(Math.min(s[c]-p,E),0),t.arrowElement=i,t.offsets.arrow=(nt(n={},f,Math.round(E)),nt(n,u,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(gt(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=at(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement),i=t.placement.split("-")[0],r=ft(i),o=t.placement.split("-")[1]||"",s=[];switch(e.behavior){case At.FLIP:s=[i,r];break;case At.CLOCKWISE:s=It(i);break;case At.COUNTERCLOCKWISE:s=It(i,!0);break;default:s=e.behavior}return s.forEach(function(a,l){if(i!==a||s.length===l+1)return t;i=t.placement.split("-")[0],r=ft(i);var c,h=t.offsets.popper,f=t.offsets.reference,u=Math.floor,d="left"===i&&u(h.right)>u(f.left)||"right"===i&&u(h.left)u(f.top)||"bottom"===i&&u(h.top)u(n.right),m=u(h.top)u(n.bottom),v="left"===i&&p||"right"===i&&g||"top"===i&&m||"bottom"===i&&_,E=-1!==["top","bottom"].indexOf(i),y=!!e.flipVariations&&(E&&"start"===o&&p||E&&"end"===o&&g||!E&&"start"===o&&m||!E&&"end"===o&&_);(d||v||y)&&(t.flipped=!0,(d||v)&&(i=s[l+1]),y&&(o="end"===(c=o)?"start":"start"===c?"end":c),t.placement=i+(o?"-"+o:""),t.offsets.popper=it({},t.offsets.popper,ut(t.instance.popper,t.offsets.reference,t.placement)),t=pt(t.instance.modifiers,t,"flip"))}),t},behavior:"flip",padding:5,boundariesElement:"viewport"},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,r=i.popper,o=i.reference,s=-1!==["left","right"].indexOf(n),a=-1===["top","left"].indexOf(n);return r[s?"left":"top"]=o[n]-(a?r[s?"width":"height"]:0),t.placement=ft(e),t.offsets.popper=rt(r),t}},hide:{order:800,enabled:!0,fn:function(t){if(!Tt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=dt(t.instance.modifiers,function(t){return"preventOverflow"===t.name}).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};tt(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=U(this.update.bind(this)),this.options=it({},t.Defaults,r),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(it({},t.Defaults.modifiers,r.modifiers)).forEach(function(e){i.options.modifiers[e]=it({},t.Defaults.modifiers[e]||{},r.modifiers?r.modifiers[e]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(t){return it({name:t},i.options.modifiers[t])}).sort(function(t,e){return t.order-e.order}),this.modifiers.forEach(function(t){t.enabled&&B(t.onLoad)&&t.onLoad(i.reference,i.popper,i.options,t,i.state)}),this.update();var o=this.options.eventsEnabled;o&&this.enableEventListeners(),this.state.eventsEnabled=o}return et(t,[{key:"update",value:function(){return function(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=ct(this.state,this.popper,this.reference),t.placement=lt(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.offsets.popper=ut(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position="absolute",t=pt(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}.call(this)}},{key:"destroy",value:function(){return function(){return this.state.isDestroyed=!0,gt(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.left="",this.popper.style.position="",this.popper.style.top="",this.popper.style[mt("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}.call(this)}},{key:"enableEventListeners",value:function(){return function(){this.state.eventsEnabled||(this.state=vt(this.reference,this.options,this.state,this.scheduleUpdate))}.call(this)}},{key:"disableEventListeners",value:function(){return Et.call(this)}}]),t}();Ot.Utils=("undefined"!=typeof window?window:global).PopperUtils,Ot.placements=Ct,Ot.Defaults=St;var Nt=function(t){var e="dropdown",n="bs.dropdown",o="."+n,s=t.fn[e],a=new RegExp("38|40|27"),l={HIDE:"hide"+o,HIDDEN:"hidden"+o,SHOW:"show"+o,SHOWN:"shown"+o,CLICK:"click"+o,CLICK_DATA_API:"click"+o+".data-api",KEYDOWN_DATA_API:"keydown"+o+".data-api",KEYUP_DATA_API:"keyup"+o+".data-api"},c="disabled",h="show",f="dropup",u="dropright",d="dropleft",p="dropdown-menu-right",g="dropdown-menu-left",m="position-static",_='[data-toggle="dropdown"]',v=".dropdown form",E=".dropdown-menu",y=".navbar-nav",b=".dropdown-menu .dropdown-item:not(.disabled)",T="top-start",C="top-end",w="bottom-start",I="bottom-end",A="right-start",D="left-start",S={offset:0,flip:!0,boundary:"scrollParent"},O={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)"},N=function(){function s(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var v=s.prototype;return v.toggle=function(){if(!this._element.disabled&&!t(this._element).hasClass(c)){var e=s._getParentFromElement(this._element),n=t(this._menu).hasClass(h);if(s._clearMenus(),!n){var i={relatedTarget:this._element},r=t.Event(l.SHOW,i);if(t(e).trigger(r),!r.isDefaultPrevented()){if(!this._inNavbar){if("undefined"==typeof Ot)throw new TypeError("Bootstrap dropdown require Popper.js (https://popper.js.org)");var o=this._element;t(e).hasClass(f)&&(t(this._menu).hasClass(g)||t(this._menu).hasClass(p))&&(o=e),"scrollParent"!==this._config.boundary&&t(e).addClass(m),this._popper=new Ot(o,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===t(e).closest(y).length&&t("body").children().on("mouseover",null,t.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),t(this._menu).toggleClass(h),t(e).toggleClass(h).trigger(t.Event(l.SHOWN,i))}}}},v.dispose=function(){t.removeData(this._element,n),t(this._element).off(o),this._element=null,this._menu=null,null!==this._popper&&(this._popper.destroy(),this._popper=null)},v.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},v._addEventListeners=function(){var e=this;t(this._element).on(l.CLICK,function(t){t.preventDefault(),t.stopPropagation(),e.toggle()})},v._getConfig=function(n){return n=r({},this.constructor.Default,t(this._element).data(),n),k.typeCheckConfig(e,n,this.constructor.DefaultType),n},v._getMenuElement=function(){if(!this._menu){var e=s._getParentFromElement(this._element);this._menu=t(e).find(E)[0]}return this._menu},v._getPlacement=function(){var e=t(this._element).parent(),n=w;return e.hasClass(f)?(n=T,t(this._menu).hasClass(p)&&(n=C)):e.hasClass(u)?n=A:e.hasClass(d)?n=D:t(this._menu).hasClass(p)&&(n=I),n},v._detectNavbar=function(){return t(this._element).closest(".navbar").length>0},v._getPopperConfig=function(){var t=this,e={};return"function"==typeof this._config.offset?e.fn=function(e){return e.offsets=r({},e.offsets,t._config.offset(e.offsets)||{}),e}:e.offset=this._config.offset,{placement:this._getPlacement(),modifiers:{offset:e,flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}}},s._jQueryInterface=function(e){return this.each(function(){var i=t(this).data(n);if(i||(i=new s(this,"object"==typeof e?e:null),t(this).data(n,i)),"string"==typeof e){if("undefined"==typeof i[e])throw new TypeError('No method named "'+e+'"');i[e]()}})},s._clearMenus=function(e){if(!e||3!==e.which&&("keyup"!==e.type||9===e.which))for(var i=t.makeArray(t(_)),r=0;r0&&o--,40===e.which&&odocument.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},g._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},g._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent"},f="show",u="out",d={HIDE:"hide"+o,HIDDEN:"hidden"+o,SHOW:"show"+o,SHOWN:"shown"+o,INSERTED:"inserted"+o,CLICK:"click"+o,FOCUSIN:"focusin"+o,FOCUSOUT:"focusout"+o,MOUSEENTER:"mouseenter"+o,MOUSELEAVE:"mouseleave"+o},p="fade",g="show",m=".tooltip-inner",_=".arrow",v="hover",E="focus",y="click",b="manual",T=function(){function s(t,e){if("undefined"==typeof Ot)throw new TypeError("Bootstrap tooltips require Popper.js (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var T=s.prototype;return T.enable=function(){this._isEnabled=!0},T.disable=function(){this._isEnabled=!1},T.toggleEnabled=function(){this._isEnabled=!this._isEnabled},T.toggle=function(e){if(this._isEnabled)if(e){var n=this.constructor.DATA_KEY,i=t(e.currentTarget).data(n);i||(i=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(n,i)),i._activeTrigger.click=!i._activeTrigger.click,i._isWithActiveTrigger()?i._enter(null,i):i._leave(null,i)}else{if(t(this.getTipElement()).hasClass(g))return void this._leave(null,this);this._enter(null,this)}},T.dispose=function(){clearTimeout(this._timeout),t.removeData(this.element,this.constructor.DATA_KEY),t(this.element).off(this.constructor.EVENT_KEY),t(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&t(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,null!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},T.show=function(){var e=this;if("none"===t(this.element).css("display"))throw new Error("Please use show on visible elements");var n=t.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){t(this.element).trigger(n);var i=t.contains(this.element.ownerDocument.documentElement,this.element);if(n.isDefaultPrevented()||!i)return;var r=this.getTipElement(),o=k.getUID(this.constructor.NAME);r.setAttribute("id",o),this.element.setAttribute("aria-describedby",o),this.setContent(),this.config.animation&&t(r).addClass(p);var a="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,l=this._getAttachment(a);this.addAttachmentClass(l);var c=!1===this.config.container?document.body:t(this.config.container);t(r).data(this.constructor.DATA_KEY,this),t.contains(this.element.ownerDocument.documentElement,this.tip)||t(r).appendTo(c),t(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new Ot(this.element,r,{placement:l,modifiers:{offset:{offset:this.config.offset},flip:{behavior:this.config.fallbackPlacement},arrow:{element:_},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){e._handlePopperPlacementChange(t)}}),t(r).addClass(g),"ontouchstart"in document.documentElement&&t("body").children().on("mouseover",null,t.noop);var h=function(){e.config.animation&&e._fixTransition();var n=e._hoverState;e._hoverState=null,t(e.element).trigger(e.constructor.Event.SHOWN),n===u&&e._leave(null,e)};k.supportsTransitionEnd()&&t(this.tip).hasClass(p)?t(this.tip).one(k.TRANSITION_END,h).emulateTransitionEnd(s._TRANSITION_DURATION):h()}},T.hide=function(e){var n=this,i=this.getTipElement(),r=t.Event(this.constructor.Event.HIDE),o=function(){n._hoverState!==f&&i.parentNode&&i.parentNode.removeChild(i),n._cleanTipClass(),n.element.removeAttribute("aria-describedby"),t(n.element).trigger(n.constructor.Event.HIDDEN),null!==n._popper&&n._popper.destroy(),e&&e()};t(this.element).trigger(r),r.isDefaultPrevented()||(t(i).removeClass(g),"ontouchstart"in document.documentElement&&t("body").children().off("mouseover",null,t.noop),this._activeTrigger[y]=!1,this._activeTrigger[E]=!1,this._activeTrigger[v]=!1,k.supportsTransitionEnd()&&t(this.tip).hasClass(p)?t(i).one(k.TRANSITION_END,o).emulateTransitionEnd(150):o(),this._hoverState="")},T.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},T.isWithContent=function(){return Boolean(this.getTitle())},T.addAttachmentClass=function(e){t(this.getTipElement()).addClass("bs-tooltip-"+e)},T.getTipElement=function(){return this.tip=this.tip||t(this.config.template)[0],this.tip},T.setContent=function(){var e=t(this.getTipElement());this.setElementContent(e.find(m),this.getTitle()),e.removeClass(p+" "+g)},T.setElementContent=function(e,n){var i=this.config.html;"object"==typeof n&&(n.nodeType||n.jquery)?i?t(n).parent().is(e)||e.empty().append(n):e.text(t(n).text()):e[i?"html":"text"](n)},T.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},T._getAttachment=function(t){return c[t.toUpperCase()]},T._setListeners=function(){var e=this;this.config.trigger.split(" ").forEach(function(n){if("click"===n)t(e.element).on(e.constructor.Event.CLICK,e.config.selector,function(t){return e.toggle(t)});else if(n!==b){var i=n===v?e.constructor.Event.MOUSEENTER:e.constructor.Event.FOCUSIN,r=n===v?e.constructor.Event.MOUSELEAVE:e.constructor.Event.FOCUSOUT;t(e.element).on(i,e.config.selector,function(t){return e._enter(t)}).on(r,e.config.selector,function(t){return e._leave(t)})}t(e.element).closest(".modal").on("hide.bs.modal",function(){return e.hide()})}),this.config.selector?this.config=r({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},T._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},T._enter=function(e,n){var i=this.constructor.DATA_KEY;(n=n||t(e.currentTarget).data(i))||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(i,n)),e&&(n._activeTrigger["focusin"===e.type?E:v]=!0),t(n.getTipElement()).hasClass(g)||n._hoverState===f?n._hoverState=f:(clearTimeout(n._timeout),n._hoverState=f,n.config.delay&&n.config.delay.show?n._timeout=setTimeout(function(){n._hoverState===f&&n.show()},n.config.delay.show):n.show())},T._leave=function(e,n){var i=this.constructor.DATA_KEY;(n=n||t(e.currentTarget).data(i))||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),t(e.currentTarget).data(i,n)),e&&(n._activeTrigger["focusout"===e.type?E:v]=!1),n._isWithActiveTrigger()||(clearTimeout(n._timeout),n._hoverState=u,n.config.delay&&n.config.delay.hide?n._timeout=setTimeout(function(){n._hoverState===u&&n.hide()},n.config.delay.hide):n.hide())},T._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},T._getConfig=function(n){return"number"==typeof(n=r({},this.constructor.Default,t(this.element).data(),n)).delay&&(n.delay={show:n.delay,hide:n.delay}),"number"==typeof n.title&&(n.title=n.title.toString()),"number"==typeof n.content&&(n.content=n.content.toString()),k.typeCheckConfig(e,n,this.constructor.DefaultType),n},T._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},T._cleanTipClass=function(){var e=t(this.getTipElement()),n=e.attr("class").match(a);null!==n&&n.length>0&&e.removeClass(n.join(""))},T._handlePopperPlacementChange=function(t){this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},T._fixTransition=function(){var e=this.getTipElement(),n=this.config.animation;null===e.getAttribute("x-placement")&&(t(e).removeClass(p),this.config.animation=!1,this.hide(),this.show(),this.config.animation=n)},s._jQueryInterface=function(e){return this.each(function(){var i=t(this).data(n),r="object"==typeof e&&e;if((i||!/dispose|hide/.test(e))&&(i||(i=new s(this,r),t(this).data(n,i)),"string"==typeof e)){if("undefined"==typeof i[e])throw new TypeError('No method named "'+e+'"');i[e]()}})},i(s,null,[{key:"VERSION",get:function(){return"4.0.0"}},{key:"Default",get:function(){return h}},{key:"NAME",get:function(){return e}},{key:"DATA_KEY",get:function(){return n}},{key:"Event",get:function(){return d}},{key:"EVENT_KEY",get:function(){return o}},{key:"DefaultType",get:function(){return l}}]),s}();return t.fn[e]=T._jQueryInterface,t.fn[e].Constructor=T,t.fn[e].noConflict=function(){return t.fn[e]=s,T._jQueryInterface},T}(e),Pt=function(t){var e="popover",n="bs.popover",o="."+n,s=t.fn[e],a=new RegExp("(^|\\s)bs-popover\\S+","g"),l=r({},Lt.Default,{placement:"right",trigger:"click",content:"",template:''}),c=r({},Lt.DefaultType,{content:"(string|element|function)"}),h="fade",f="show",u=".popover-header",d=".popover-body",p={HIDE:"hide"+o,HIDDEN:"hidden"+o,SHOW:"show"+o,SHOWN:"shown"+o,INSERTED:"inserted"+o,CLICK:"click"+o,FOCUSIN:"focusin"+o,FOCUSOUT:"focusout"+o,MOUSEENTER:"mouseenter"+o,MOUSELEAVE:"mouseleave"+o},g=function(r){var s,g;function m(){return r.apply(this,arguments)||this}g=r,(s=m).prototype=Object.create(g.prototype),s.prototype.constructor=s,s.__proto__=g;var _=m.prototype;return _.isWithContent=function(){return this.getTitle()||this._getContent()},_.addAttachmentClass=function(e){t(this.getTipElement()).addClass("bs-popover-"+e)},_.getTipElement=function(){return this.tip=this.tip||t(this.config.template)[0],this.tip},_.setContent=function(){var e=t(this.getTipElement());this.setElementContent(e.find(u),this.getTitle());var n=this._getContent();"function"==typeof n&&(n=n.call(this.element)),this.setElementContent(e.find(d),n),e.removeClass(h+" "+f)},_._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},_._cleanTipClass=function(){var e=t(this.getTipElement()),n=e.attr("class").match(a);null!==n&&n.length>0&&e.removeClass(n.join(""))},m._jQueryInterface=function(e){return this.each(function(){var i=t(this).data(n),r="object"==typeof e?e:null;if((i||!/destroy|hide/.test(e))&&(i||(i=new m(this,r),t(this).data(n,i)),"string"==typeof e)){if("undefined"==typeof i[e])throw new TypeError('No method named "'+e+'"');i[e]()}})},i(m,null,[{key:"VERSION",get:function(){return"4.0.0"}},{key:"Default",get:function(){return l}},{key:"NAME",get:function(){return e}},{key:"DATA_KEY",get:function(){return n}},{key:"Event",get:function(){return p}},{key:"EVENT_KEY",get:function(){return o}},{key:"DefaultType",get:function(){return c}}]),m}(Lt);return t.fn[e]=g._jQueryInterface,t.fn[e].Constructor=g,t.fn[e].noConflict=function(){return t.fn[e]=s,g._jQueryInterface},g}(e),xt=function(t){var e="scrollspy",n="bs.scrollspy",o="."+n,s=t.fn[e],a={offset:10,method:"auto",target:""},l={offset:"number",method:"string",target:"(string|element)"},c={ACTIVATE:"activate"+o,SCROLL:"scroll"+o,LOAD_DATA_API:"load"+o+".data-api"},h="dropdown-item",f="active",u={DATA_SPY:'[data-spy="scroll"]',ACTIVE:".active",NAV_LIST_GROUP:".nav, .list-group",NAV_LINKS:".nav-link",NAV_ITEMS:".nav-item",LIST_ITEMS:".list-group-item",DROPDOWN:".dropdown",DROPDOWN_ITEMS:".dropdown-item",DROPDOWN_TOGGLE:".dropdown-toggle"},d="offset",p="position",g=function(){function s(e,n){var i=this;this._element=e,this._scrollElement="BODY"===e.tagName?window:e,this._config=this._getConfig(n),this._selector=this._config.target+" "+u.NAV_LINKS+","+this._config.target+" "+u.LIST_ITEMS+","+this._config.target+" "+u.DROPDOWN_ITEMS,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,t(this._scrollElement).on(c.SCROLL,function(t){return i._process(t)}),this.refresh(),this._process()}var g=s.prototype;return g.refresh=function(){var e=this,n=this._scrollElement===this._scrollElement.window?d:p,i="auto"===this._config.method?n:this._config.method,r=i===p?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),t.makeArray(t(this._selector)).map(function(e){var n,o=k.getSelectorFromElement(e);if(o&&(n=t(o)[0]),n){var s=n.getBoundingClientRect();if(s.width||s.height)return[t(n)[i]().top+r,o]}return null}).filter(function(t){return t}).sort(function(t,e){return t[0]-e[0]}).forEach(function(t){e._offsets.push(t[0]),e._targets.push(t[1])})},g.dispose=function(){t.removeData(this._element,n),t(this._scrollElement).off(o),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},g._getConfig=function(n){if("string"!=typeof(n=r({},a,n)).target){var i=t(n.target).attr("id");i||(i=k.getUID(e),t(n.target).attr("id",i)),n.target="#"+i}return k.typeCheckConfig(e,n,l),n},g._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},g._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},g._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},g._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(var r=this._offsets.length;r--;){this._activeTarget!==this._targets[r]&&t>=this._offsets[r]&&("undefined"==typeof this._offsets[r+1]||t=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(e),t.Util=k,t.Alert=L,t.Button=P,t.Carousel=x,t.Collapse=R,t.Dropdown=Nt,t.Modal=kt,t.Popover=Pt,t.Scrollspy=xt,t.Tab=Rt,t.Tooltip=Lt,Object.defineProperty(t,"__esModule",{value:!0})}); +//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/tools/gfx_search/bootstrap.min.css b/tools/gfx_search/bootstrap.min.css new file mode 100644 index 000000000..6561b6f4c --- /dev/null +++ b/tools/gfx_search/bootstrap.min.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.0.0 (https://getbootstrap.com) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-sm-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-sm-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-sm-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-sm-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-sm-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-sm-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-sm-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-sm-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-sm-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-sm-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-sm-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-sm-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-sm-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-sm-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-md-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-md-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-md-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-md-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-md-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-md-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-md-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-md-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-md-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-md-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-md-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-md-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-md-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-md-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-lg-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-lg-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-lg-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-lg-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-lg-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-lg-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-lg-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-lg-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-lg-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-lg-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-lg-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-lg-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-lg-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-lg-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-xl-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-xl-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-xl-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-xl-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-xl-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-xl-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-xl-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-xl-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-xl-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-xl-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-xl-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-xl-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-xl-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-xl-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;max-width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:not([size]):not([multiple]){height:calc(2.25rem + 2px)}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm,.input-group-lg>.form-control-plaintext.form-control,.input-group-lg>.input-group-append>.form-control-plaintext.btn,.input-group-lg>.input-group-append>.form-control-plaintext.input-group-text,.input-group-lg>.input-group-prepend>.form-control-plaintext.btn,.input-group-lg>.input-group-prepend>.form-control-plaintext.input-group-text,.input-group-sm>.form-control-plaintext.form-control,.input-group-sm>.input-group-append>.form-control-plaintext.btn,.input-group-sm>.input-group-append>.form-control-plaintext.input-group-text,.input-group-sm>.input-group-prepend>.form-control-plaintext.btn,.input-group-sm>.input-group-prepend>.form-control-plaintext.input-group-text{padding-right:0;padding-left:0}.form-control-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-sm>.input-group-append>select.btn:not([size]):not([multiple]),.input-group-sm>.input-group-append>select.input-group-text:not([size]):not([multiple]),.input-group-sm>.input-group-prepend>select.btn:not([size]):not([multiple]),.input-group-sm>.input-group-prepend>select.input-group-text:not([size]):not([multiple]),.input-group-sm>select.form-control:not([size]):not([multiple]),select.form-control-sm:not([size]):not([multiple]){height:calc(1.8125rem + 2px)}.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-lg>.input-group-append>select.btn:not([size]):not([multiple]),.input-group-lg>.input-group-append>select.input-group-text:not([size]):not([multiple]),.input-group-lg>.input-group-prepend>select.btn:not([size]):not([multiple]),.input-group-lg>.input-group-prepend>select.input-group-text:not([size]):not([multiple]),.input-group-lg>select.form-control:not([size]):not([multiple]),select.form-control-lg:not([size]):not([multiple]){height:calc(2.875rem + 2px)}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.5rem;margin-top:.1rem;font-size:.875rem;line-height:1;color:#fff;background-color:rgba(40,167,69,.8);border-radius:.2rem}.custom-select.is-valid,.form-control.is-valid,.was-validated .custom-select:valid,.was-validated .form-control:valid{border-color:#28a745}.custom-select.is-valid:focus,.form-control.is-valid:focus,.was-validated .custom-select:valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label::before,.was-validated .custom-file-input:valid~.custom-file-label::before{border-color:inherit}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.5rem;margin-top:.1rem;font-size:.875rem;line-height:1;color:#fff;background-color:rgba(220,53,69,.8);border-radius:.2rem}.custom-select.is-invalid,.form-control.is-invalid,.was-validated .custom-select:invalid,.was-validated .form-control:invalid{border-color:#dc3545}.custom-select.is-invalid:focus,.form-control.is-invalid:focus,.was-validated .custom-select:invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label::before,.was-validated .custom-file-input:invalid~.custom-file-label::before{border-color:inherit}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .input-group{width:auto}.form-inline .form-check{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}.btn:not(:disabled):not(.disabled).active,.btn:not(:disabled):not(.disabled):active{background-image:none}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-primary{color:#007bff;background-color:transparent;background-image:none;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;background-color:transparent;background-image:none;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;background-image:none;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;background-image:none;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;background-image:none;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;background-image:none;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;background-image:none;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;background-color:transparent}.btn-link:hover{color:#0056b3;text-decoration:underline;background-color:transparent;border-color:transparent}.btn-link.focus,.btn-link:focus{text-decoration:underline;border-color:transparent;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;transition:opacity .15s linear}.fade.show{opacity:1}.collapse{display:none}.collapse.show{display:block}tr.collapse.show{display:table-row}tbody.collapse.show{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}.dropdown,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropup .dropdown-menu{margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;width:0;height:0;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after{margin-left:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file:focus,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-left:-1px}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::before{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label,.input-group>.custom-file:not(:first-child) .custom-file-label::before{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-webkit-box;display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{margin-bottom:0}.custom-control-label::before{position:absolute;top:.25rem;left:0;display:block;width:1rem;height:1rem;pointer-events:none;content:"";-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#dee2e6}.custom-control-label::after{position:absolute;top:.25rem;left:0;display:block;width:1rem;height:1rem;content:"";background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:inset 0 1px 2px rgba(0,0,0,.075),0 0 5px rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-sm{height:calc(1.8125rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:125%}.custom-file{position:relative;display:inline-block;width:100%;height:calc(2.25rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(2.25rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-control{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:focus~.custom-file-control::before{border-color:#80bdff}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(2.25rem + 2px);padding:.375rem .75rem;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(calc(2.25rem + 2px) - 1px * 2);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:1px solid #ced4da;border-radius:0 .25rem .25rem 0}.nav{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler:not(:disabled):not(.disabled){cursor:pointer}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .dropup .dropdown-menu{top:auto;bottom:100%}}.navbar-expand{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .dropup .dropdown-menu{top:auto;bottom:100%}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-right-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-left-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child){border-radius:0}.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem}.card-columns .card{display:inline-block;width:100%}}.breadcrumb{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;padding-left:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-link:not(:disabled):not(.disabled){cursor:pointer}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-webkit-box;display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;background-color:#007bff;transition:width .6s ease}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.media-body{-webkit-box-flex:1;-ms-flex:1;flex:1}.list-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:focus,.close:hover{color:#000;text-decoration:none;opacity:.75}.close:not(:disabled):not(.disabled){cursor:pointer}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;outline:0}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.show .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - (.5rem * 2))}.modal-content{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem * 2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-item{position:relative;display:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;transition:-webkit-transform .6s ease;transition:transform .6s ease;transition:transform .6s ease,-webkit-transform .6s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{-webkit-transform:translateX(100%);transform:translateX(100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-right,.carousel-item-next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translateX(-100%);transform:translateX(-100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:transparent no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;background-color:rgba(255,255,255,.5)}.carousel-indicators li::before{position:absolute;top:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::after{position:absolute;bottom:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-sm-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-md-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-lg-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;-webkit-clip-path:none;clip-path:none}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-justify{text-align:justify!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#545b62!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-muted{color:#6c757d!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/tools/gfx_search/build.py b/tools/gfx_search/build.py new file mode 100644 index 000000000..3e2642138 --- /dev/null +++ b/tools/gfx_search/build.py @@ -0,0 +1,72 @@ +from subscripts import settingsreader +from subscripts import gfxparser +from subscripts import imageconverter +from subscripts import templatebuilder +import os + +settings = settingsreader.read_json("tools/gfx_search/settings.json") + +# Get a list of all categories +cat_list = settings["categories"] + +# Keep a list of all images, so that we can clean up afterwards +all_images_list = [] + +# Process eahc category individually +for cat_str in settings["categories"]: + print("Processing: "+cat_str) + + cat = settings["categories"][cat_str] + name = cat["name"] + gfx_file = cat["gfx_file"] + img_size_x = cat["img_size_x"] + img_size_y = cat["img_size_y"] + + # Create list of categoy button-links + nav_bar = "" + for c in cat_list: + if c == cat_str: + nav_bar += ""+settings["categories"][c]["name"]+"" + else: + nav_bar += ""+settings["categories"][c]["name"]+"" + + # Parse GFX file, get list of GFX_entries and filepaths + gfx_entries = gfxparser.parse_gfx_file(gfx_file) + + # For each entry, convert to PNG and generate a
+ # Ensure the output directory exists + output_directory = "tools/gfx_search/images/"+cat_str + os.makedirs(output_directory, exist_ok=True) + image_divs = "" + for (gfx, file) in gfx_entries: + converted = imageconverter.convert_to_png(file, output_directory+"/"+gfx+".png") + + image_divs += "\n
\""+gfx+"\"
" + all_images_list += output_directory+"/"+gfx+".png" + + # Insert all elements into a template + templatebuilder.write_template("tools/gfx_search/templates/gfx_search_category_template.html", "tools/gfx_search/"+cat_str+".html", + { + "$IMAGE_LIST_TOKEN$": image_divs, + "$NAV_BAR_TOKEN$": nav_bar, + "$ITEM_SIZE_X_TOKEN$": str(img_size_x), + "$ITEM_SIZE_Y_TOKEN$": str(img_size_y), + "$CATEGORY_NAME_TOKEN$": str(name) + } + ) + +# Clean up all the images that we don't use +directory_path = 'relative/path/to/your/directory' +full_directory_path = os.path.join(os.getcwd(), "tools/gfx_search/images/") +unusued_images_count = 0 + +# Get a list of PNG files in the directory +png_files = [os.path.join(full_directory_path, file) for file in os.listdir(full_directory_path) if file.lower().endswith('.png') and os.path.isfile(os.path.join(full_directory_path, file))] + +# Iterate over the PNG files and remove those that are not in images_list +for file_path in png_files: + if file_path not in all_images_list: + os.remove(file_path) + unusued_images_count += 1 + #print(f"PNG file '{file_path}' removed.") +print("Removed "+str(unusued_images_count)+" unused images.") \ No newline at end of file diff --git a/tools/gfx_search/decisions.html b/tools/gfx_search/decisions.html new file mode 100644 index 000000000..40c1ca9bd --- /dev/null +++ b/tools/gfx_search/decisions.html @@ -0,0 +1,205 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

Decisions

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + +
GFX_decision_assembly
+
GFX_decision_beacons
+
GFX_decision_dorwinion_fascism
+
GFX_decision_generic_1
+
GFX_decision_generic_2
+
GFX_decision_generic_3
+
GFX_decision_generic_4
+
GFX_decision_generic_5
+
GFX_decision_generic_army
+
GFX_decision_generic_army_1
+
GFX_decision_generic_army_2
+
GFX_decision_generic_army_3
+
GFX_decision_generic_authority
+
GFX_decision_generic_blacksmith
+
GFX_decision_generic_cavalry
+
GFX_decision_generic_cavalry_2
+
GFX_decision_generic_construction
+
GFX_decision_generic_cooperation
+
GFX_decision_generic_decision
+
GFX_decision_generic_farming
+
GFX_decision_generic_infra
+
GFX_decision_generic_naval
+
GFX_decision_generic_operation
+
GFX_decision_generic_plot
+
GFX_decision_generic_research
+
GFX_decision_generic_treasure
+
GFX_decision_gondor
+
GFX_decision_grey_havens
+
GFX_decision_harad_fascism
+
GFX_decision_knights
+
GFX_decision_lth_mirror
+
GFX_decision_nazgul
+
GFX_decision_operation_2
+
GFX_decision_orcs
+
GFX_decision_orcs_2
+
GFX_decision_orcs_3
+
GFX_decision_orcs_4
+
GFX_decision_orcs_5
+
GFX_decision_revolt
+
GFX_decision_ring
+
GFX_decision_rohan
+
GFX_decision_sauron_eye
+
GFX_decision_unknown
+
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/gfx_search/events.html b/tools/gfx_search/events.html new file mode 100644 index 000000000..a54f49b65 --- /dev/null +++ b/tools/gfx_search/events.html @@ -0,0 +1,224 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

Events

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + +
GFX_report_event_abandoned
+
GFX_report_event_army_camp
+
GFX_report_event_balrog
+
GFX_report_event_beacons
+
GFX_report_event_building_sawmill
+
GFX_report_event_building_sawmill2
+
GFX_report_event_castle
+
GFX_report_event_cavalry_knights
+
GFX_report_event_celeborn
+
GFX_report_event_celebrations
+
GFX_report_event_celebrations_2
+
GFX_report_event_celebrations_3
+
GFX_report_event_cele_gala
+
GFX_report_event_dolguldur
+
GFX_report_event_elrond_council
+
GFX_report_event_elven_alliance
+
GFX_report_event_elves
+
GFX_report_event_elves_army
+
GFX_report_event_elves_oath
+
GFX_report_event_ents
+
GFX_report_event_fellowship_lothlorien
+
GFX_report_event_fight
+
GFX_report_event_fire
+
GFX_report_event_galadriel
+
GFX_report_event_generic_king
+
GFX_report_event_generic_reading
+
GFX_report_event_gondor
+
GFX_report_event_gondor_soldiers
+
GFX_report_event_gondor_soldiers_2
+
GFX_report_event_hobbit_party
+
GFX_report_event_horseman_wanderer
+
GFX_report_event_lindon
+
GFX_report_event_lothlorien
+
GFX_report_event_man_fishing
+
GFX_report_event_market
+
GFX_report_event_marriage_wedding
+
GFX_report_event_marriage_wedding2
+
GFX_report_event_mirror
+
GFX_report_event_moria
+
GFX_report_event_nazgul
+
GFX_report_event_negotiations
+
GFX_report_event_orcs
+
GFX_report_event_orcs_2
+
GFX_report_event_orcs_marching
+
GFX_report_event_paper
+
GFX_report_event_peasant_revolt
+
GFX_report_event_peasant_revolt2
+
GFX_report_event_peasant_revolt3
+
GFX_report_event_rangers
+
GFX_report_event_riders
+
GFX_report_event_ring
+
GFX_report_event_rivendell
+
GFX_report_event_rohan_riders
+
GFX_report_event_sauron_eye
+
GFX_report_event_ship
+
GFX_report_event_ship2
+
GFX_report_event_ship_valinor
+
GFX_report_event_spiders
+
GFX_report_event_tournament
+
GFX_report_event_trade_caravan
+
GFX_report_event_trade_caravan2
+
GFX_report_event_white_council
+
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/gfx_search/focuses.html b/tools/gfx_search/focuses.html new file mode 100644 index 000000000..44dc34d97 --- /dev/null +++ b/tools/gfx_search/focuses.html @@ -0,0 +1,633 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

Focuses

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + +
GFX_goal_angmar_unaligned
+
GFX_goal_mordor_deal
+
GFX_goal_mordor_flag
+
GFX_goal_witch_king
+
GFX_goal_arnor_unite_by_force
+
GFX_goal_rangers_of_the_north
+
GFX_goal_entwood_ent_council
+
GFX_goal_entwood_flag
+
GFX_goal_entwood_forest_nature
+
GFX_goal_entwood_treebeard
+
GFX_goal_ent_throwing_rock
+
GFX_goal_dwarves_soldiers_army
+
GFX_goal_generic_anvil
+
GFX_goal_generic_gondor_research
+
GFX_goal_generic_industry_I
+
GFX_goal_generic_windmill
+
GFX_goal_resource_wood
+
GFX_goal_support_belligerent
+
GFX_goal_support_cooperative
+
GFX_goal_support_revolutionary
+
GFX_goal_support_unaligned
+
GFX_goal_arnor
+
GFX_goal_gondor
+
GFX_goal_gondor_army_of_the_dead_ghosts
+
GFX_goal_gondor_boromir
+
GFX_goal_gondor_denethor
+
GFX_goal_gondor_dol_amroth_flag
+
GFX_goal_gondor_dol_amroth_propaganda
+
GFX_goal_gondor_faramir
+
GFX_goal_gondor_king_aragorn
+
GFX_goal_gondor_light_the_beacons
+
GFX_goal_gon_ensure_popular_support_peasant_farmer
+
GFX_goal_gon_faramir_eowyn_wedding
+
GFX_goal_gon_gondor_angmar_deal
+
GFX_goal_gon_gondor_enedwaith_deal
+
GFX_goal_gon_gondor_flag_with_denethor_portrait
+
GFX_goal_gon_gondor_lothlorien_deal
+
GFX_goal_gon_gondor_needs_no_king_crown_broken
+
GFX_goal_gon_isildur_crown_defamed
+
GFX_goal_gon_isildur_crown_with_map
+
GFX_goal_gon_ithilien_crisis_white_tree_on_fire
+
GFX_goal_gon_ithilien_defensive_planning
+
GFX_goal_gon_ithilien_soldier_of_gondor_shield
+
GFX_goal_gon_orc_contained_ithilien_measures
+
GFX_goal_gon_pitchfork_and_torch_revolt
+
GFX_goal_gon_the_peoples_fleet_ship
+
GFX_goal_gundabad_flag
+
GFX_goal_army_uruk_hai
+
GFX_goal_burn_fangorn_forest
+
GFX_goal_imprisend_gandalf
+
GFX_goal_ise_palantir_covered_up
+
GFX_goal_ise_the_white_hand_flag
+
GFX_goal_meet_with_gandalf
+
GFX_goal_orthanc_destroyed
+
GFX_goal_saruman_enedwaith_tribes
+
GFX_goal_saruman_with_palantir
+
GFX_goal_lth_adminstration
+
GFX_goal_lth_ancient_archives
+
GFX_goal_lth_anduin_flag
+
GFX_goal_lth_attack_dol_guldur
+
GFX_goal_lth_aule_the_blacksmith
+
GFX_goal_lth_balrog_durins_bane
+
GFX_goal_lth_borders_migration_treaty
+
GFX_goal_lth_burdens_of_leadership
+
GFX_goal_lth_caras_galadhon
+
GFX_goal_lth_celeborn
+
GFX_goal_lth_celeborn_edicts
+
GFX_goal_lth_celeborn_reforms
+
GFX_goal_lth_celeborn_supreme_leader
+
GFX_goal_lth_celebrate_trumpets_message
+
GFX_goal_lth_cerin_amroth
+
GFX_goal_lth_cleanse_orcs_from_moria
+
GFX_goal_lth_collect_taxes
+
GFX_goal_lth_contain_mordor
+
GFX_goal_lth_cooperation_and_stability
+
GFX_goal_lth_coordinated_defense
+
GFX_goal_lth_coordinated_sactions
+
GFX_goal_lth_council_of_elrond
+
GFX_goal_lth_council_of_quendi
+
GFX_goal_lth_defense_deal
+
GFX_goal_lth_defense_guardians
+
GFX_goal_lth_defensive_alliance
+
GFX_goal_lth_defensive_perimeter_castle
+
GFX_goal_lth_demand_tribute
+
GFX_goal_lth_depart_to_valinor_preemptive
+
GFX_goal_lth_desperate_last_stand
+
GFX_goal_lth_deterrence_castle
+
GFX_goal_lth_diplomacy_focus
+
GFX_goal_lth_discord_lecture
+
GFX_goal_lth_dissolve_elven_nobility
+
GFX_goal_lth_dol_guldur_flag
+
GFX_goal_lth_dove_breaking_free
+
GFX_goal_lth_dwarf_elf_handshake
+
GFX_goal_lth_elden_days_tree
+
GFX_goal_lth_election_ballot
+
GFX_goal_lth_elf_kneeling_to_orc
+
GFX_goal_lth_elf_shaking_hands_with_orc
+
GFX_goal_lth_elite_special_forces
+
GFX_goal_lth_elven_alliance
+
GFX_goal_lth_elven_aristocrats
+
GFX_goal_lth_elven_army
+
GFX_goal_lth_elven_army_dark
+
GFX_goal_lth_elven_army_training
+
GFX_goal_lth_elven_cavalry
+
GFX_goal_lth_elven_diplomacy_and_influence
+
GFX_goal_lth_elven_dwarf_relations
+
GFX_goal_lth_elven_factions_divided
+
GFX_goal_lth_elven_factions_united
+
GFX_goal_lth_elven_lords_consult
+
GFX_goal_lth_elven_party_celebrations
+
GFX_goal_lth_elven_riders_naith
+
GFX_goal_lth_elven_supremacy
+
GFX_goal_lth_elven_sword_and_bow
+
GFX_goal_lth_elven_warrior_spear
+
GFX_goal_lth_elves_gala_cele_beacon_of_hope
+
GFX_goal_lth_elves_men_handshake
+
GFX_goal_lth_elves_orcs_debate
+
GFX_goal_lth_elves_shaking_hands
+
GFX_goal_lth_emissaries_guild
+
GFX_goal_lth_endure_the_darkness
+
GFX_goal_lth_equal_union
+
GFX_goal_lth_erebor_skull
+
GFX_goal_lth_eternal_dominion
+
GFX_goal_lth_eternal_wisdom
+
GFX_goal_lth_evil_galadriel
+
GFX_goal_lth_evil_galadriel_unleashed
+
GFX_goal_lth_executive_vigour
+
GFX_goal_lth_extend_citizenship
+
GFX_goal_lth_fate_of_mortals_death
+
GFX_goal_lth_fellowship_of_ring
+
GFX_goal_lth_festival_of_unity
+
GFX_goal_lth_food_resource_storage
+
GFX_goal_lth_forsake_elves_kneeling
+
GFX_goal_lth_fortifications_castle
+
GFX_goal_lth_friendly_skeleton
+
GFX_goal_lth_frodo_valinor
+
GFX_goal_lth_galadriel
+
GFX_goal_lth_galadriel_and_eorl_rohan
+
GFX_goal_lth_galadriel_and_sauron_alliance
+
GFX_goal_lth_galadriel_celeborn_accord
+
GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy
+
GFX_goal_lth_galadriel_edicts
+
GFX_goal_lth_galadriel_fair_as_the_sea
+
GFX_goal_lth_galadriel_hourglass_immortality
+
GFX_goal_lth_galadriel_mirror
+
GFX_goal_lth_galadriel_powers
+
GFX_goal_lth_galadriel_queen
+
GFX_goal_lth_galadriel_resisting_darkness
+
GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale
+
GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf
+
GFX_goal_lth_generic_archers
+
GFX_goal_lth_glowing_elven_sword_blade
+
GFX_goal_lth_gondor_skull
+
GFX_goal_lth_grain_dole
+
GFX_goal_lth_grey_company_warriors
+
GFX_goal_lth_haldir_elves_ring_fellowship
+
GFX_goal_lth_halfelves_beren_luthien
+
GFX_goal_lth_halfelves_cooperation
+
GFX_goal_lth_halfelves_dior
+
GFX_goal_lth_halfelves_earendil
+
GFX_goal_lth_halfelves_elrond
+
GFX_goal_lth_halfelves_elros
+
GFX_goal_lth_halfelves_emblem
+
GFX_goal_lth_halfelves_peredhil_legends_trumpets
+
GFX_goal_lth_handshake_cooperation
+
GFX_goal_lth_hands_asking_for_help_aid_weary
+
GFX_goal_lth_hand_grabbing_crown
+
GFX_goal_lth_hand_taking_ring
+
GFX_goal_lth_hand_with_flower_nature
+
GFX_goal_lth_harmony_unity
+
GFX_goal_lth_hegemony_crown
+
GFX_goal_lth_hidden_elven_realm
+
GFX_goal_lth_invasion_northbound
+
GFX_goal_lth_investment
+
GFX_goal_lth_keep_elves_safe
+
GFX_goal_lth_knowledge_books_guild
+
GFX_goal_lth_labour_blacksmith
+
GFX_goal_lth_last_eldar
+
GFX_goal_lth_leave_to_valinor
+
GFX_goal_lth_library_caras_galadhon
+
GFX_goal_lth_limited_intervention
+
GFX_goal_lth_lindon_cirdan
+
GFX_goal_lth_local_autonomy
+
GFX_goal_lth_locked_up_borders_sealed
+
GFX_goal_lth_lothlorien_anduin_deal
+
GFX_goal_lth_lothlorien_erebor_deal
+
GFX_goal_lth_lothlorien_flag
+
GFX_goal_lth_lothlorien_gondor_deal
+
GFX_goal_lth_lothlorien_gondor_deal_2
+
GFX_goal_lth_lothlorien_moria_deal
+
GFX_goal_lth_lothlorien_rivendell_isengard_union
+
GFX_goal_lth_lothlorien_rohan_deal
+
GFX_goal_lth_lothlorien_rohan_ties
+
GFX_goal_lth_mallorn_tree_planning
+
GFX_goal_lth_map_measures
+
GFX_goal_lth_meritocracy_advancement
+
GFX_goal_lth_mirror_enchanted_basin
+
GFX_goal_lth_mirror_upgrade
+
GFX_goal_lth_moria_flag
+
GFX_goal_lth_mortal_skeleton_pleading
+
GFX_goal_lth_nandor_elven_warrior
+
GFX_goal_lth_nandor_emblem
+
GFX_goal_lth_nandor_haldir
+
GFX_goal_lth_nandor_hands
+
GFX_goal_lth_nandor_mallorn_trees
+
GFX_goal_lth_nandor_map
+
GFX_goal_lth_nandor_nimrodel_song
+
GFX_goal_lth_nature_eagles
+
GFX_goal_lth_nature_fellbeast
+
GFX_goal_lth_nature_forest_between
+
GFX_goal_lth_nature_great_beasts
+
GFX_goal_lth_nature_spiders
+
GFX_goal_lth_nature_spiders_of_ungoliant
+
GFX_goal_lth_nature_treebeard
+
GFX_goal_lth_nazghul_ringwraith_on_fire
+
GFX_goal_lth_nenya_enigma
+
GFX_goal_lth_nenya_one_ring_merge
+
GFX_goal_lth_nenya_ring_enchantments
+
GFX_goal_lth_noldor_commemorate_gondolin
+
GFX_goal_lth_noldor_elven_warrior
+
GFX_goal_lth_noldor_emblem
+
GFX_goal_lth_noldor_galadriel
+
GFX_goal_lth_noldor_golden_book_open_knowledge
+
GFX_goal_lth_noldor_metalwork
+
GFX_goal_lth_noldor_purity
+
GFX_goal_lth_noldor_queens_guard
+
GFX_goal_lth_noldor_reawakening
+
GFX_goal_lth_noldor_silmarils
+
GFX_goal_lth_oath_of_feanor
+
GFX_goal_lth_one_ring_shadow
+
GFX_goal_lth_open_book
+
GFX_goal_lth_open_books_culture
+
GFX_goal_lth_orc_bound_by_chains
+
GFX_goal_lth_orc_contained_resistance
+
GFX_goal_lth_orc_prisoner_vivisection
+
GFX_goal_lth_orc_servitude
+
GFX_goal_lth_orc_warrior
+
GFX_goal_lth_other_people_association
+
GFX_goal_lth_peasantry
+
GFX_goal_lth_play_for_time_hourglass
+
GFX_goal_lth_powers_of_nenya
+
GFX_goal_lth_proposals_and_resolutions
+
GFX_goal_lth_protect_at_any_cost
+
GFX_goal_lth_provincial_councils
+
GFX_goal_lth_raised_fist_blue
+
GFX_goal_lth_remove_borders
+
GFX_goal_lth_research_cooperation
+
GFX_goal_lth_revolutionary_flag_lothlorien
+
GFX_goal_lth_ring_nenya
+
GFX_goal_lth_ring_nenya_archive
+
GFX_goal_lth_river_anduin
+
GFX_goal_lth_river_ships
+
GFX_goal_lth_river_ships_navigation
+
GFX_goal_lth_sacred_mallorn_trees
+
GFX_goal_lth_safeguard_food_bread
+
GFX_goal_lth_safe_haven_defense
+
GFX_goal_lth_sauron_eye_contained_war
+
GFX_goal_lth_sauron_unleashed_with_ring
+
GFX_goal_lth_schism_celeborn_exiled
+
GFX_goal_lth_schism_galadriels_farewell
+
GFX_goal_lth_schism_mended
+
GFX_goal_lth_schism_separated
+
GFX_goal_lth_scribe_knowledge
+
GFX_goal_lth_select_advisors
+
GFX_goal_lth_shared_cause_hands
+
GFX_goal_lth_shared_research_knowledge
+
GFX_goal_lth_shattered_crown_red
+
GFX_goal_lth_shield_aegis_of_light
+
GFX_goal_lth_silverthorn_arrows
+
GFX_goal_lth_sindar_celeborn
+
GFX_goal_lth_sindar_crown_of_doriath
+
GFX_goal_lth_sindar_emblem
+
GFX_goal_lth_sindar_lothlorien_lindon_treaty
+
GFX_goal_lth_sindar_melian
+
GFX_goal_lth_sindar_noldor_deal
+
GFX_goal_lth_sindar_pathstalkers
+
GFX_goal_lth_sindar_thingol
+
GFX_goal_lth_skulls_with_helmets
+
GFX_goal_lth_taming_the_wild
+
GFX_goal_lth_target_lindon_cirdan
+
GFX_goal_lth_target_mirkwood_thranduil
+
GFX_goal_lth_target_rivendell_elrond
+
GFX_goal_lth_tax_collection_reformed
+
GFX_goal_lth_territorial_defense
+
GFX_goal_lth_territorial_integration
+
GFX_goal_lth_thranduil_diplomatic_pressure
+
GFX_goal_lth_torn_treaty_paper
+
GFX_goal_lth_total_isolation_tower
+
GFX_goal_lth_trade_agreements
+
GFX_goal_lth_treaty_executive_power
+
GFX_goal_lth_treaty_invitation
+
GFX_goal_lth_twilight_garden
+
GFX_goal_lth_twin_hearts
+
GFX_goal_lth_untreaded_path
+
GFX_goal_lth_urban_councils
+
GFX_goal_lth_uruk_hai_orc
+
GFX_goal_lth_vales_of_anduin_offer_chain
+
GFX_goal_lth_waters_of_healing
+
GFX_goal_lth_weapons_research
+
GFX_goal_lth_weapon_sword_forging
+
GFX_goal_lth_white_council_eagles
+
GFX_goal_lth_white_council_elrond
+
GFX_goal_lth_white_council_fleet
+
GFX_goal_lth_white_council_galadriel
+
GFX_goal_lth_white_council_gandalf
+
GFX_goal_lth_white_council_meeting
+
GFX_goal_lth_white_council_saruman
+
GFX_goal_lth_white_council_saruman_with_palantir
+
GFX_goal_lth_yavanna
+
GFX_goal_mir_deal_with_the_spiders
+
GFX_goal_mir_radagast_the_brown
+
GFX_goal_mir_spider_anarchy
+
GFX_goal_mir_thranduil
+
GFX_goal_moa_balrog
+
GFX_goal_mor_azog_orc_revolt
+
GFX_goal_mor_dark_dol_guldur_fortress
+
GFX_goal_mor_dol_guldur_flag
+
GFX_goal_mor_encroach_on_ithilien
+
GFX_goal_mor_erebor_flag
+
GFX_goal_mor_escalate_the_attacks
+
GFX_goal_mor_golum
+
GFX_goal_mor_grapes
+
GFX_goal_mor_ithilien_encroach_landgrab
+
GFX_goal_mor_meat_back_skulls_knife
+
GFX_goal_mor_mordor_landscape
+
GFX_goal_mor_nazgul_ringwraiths
+
GFX_goal_mor_second_wave
+
GFX_goal_mor_servant_of_melkor_morgoth
+
GFX_goal_mor_tower_of_barad_dur
+
GFX_goal_mor_troll_warriors
+
GFX_goal_mor_wargoal_dale
+
GFX_goal_mor_wargoal_dorwinion
+
GFX_goal_mor_wargoal_erebor
+
GFX_goal_mor_wargoal_gondor
+
GFX_goal_mor_wargoal_harad
+
GFX_goal_mor_wargoal_rhun
+
GFX_goal_mor_wargoal_rohan
+
GFX_goal_sauron_eye
+
GFX_goal_skull_treaty
+
GFX_goal_stop_melkor_worship
+
GFX_goal_the_one_ring
+
GFX_goal_union_of_working_orc_class
+
GFX_goal_unleash_sauron
+
GFX_goal_rhu_dale_flag
+
GFX_goal_rhu_dorwinion_flag
+
GFX_goal_rhu_nazghul_ringwraith_khamul
+
GFX_goal_rhu_rhun_civil_war
+
GFX_goal_rhu_the_blue_wizards
+
GFX_goal_rhu_wargoal_mordor
+
GFX_goal_riv_council_of_elrond
+
GFX_goal_riv_elrond
+
GFX_goal_riv_elrond_ring_vilya
+
GFX_goal_riv_reforge_blade_of_narsil
+
GFX_goal_roh_allow_gandalf_into_rohan
+
GFX_goal_roh_edoras
+
GFX_goal_roh_eomer
+
GFX_goal_roh_eowyn_sorrow
+
GFX_goal_roh_grima_wormtongue
+
GFX_goal_roh_helms_deep
+
GFX_goal_roh_helms_deep_weakness
+
GFX_goal_roh_rohan_flag
+
GFX_goal_roh_sick_theoden
+
GFX_goal_roh_theodred
+
GFX_goal_roh_trust_gandalf
+
GFX_goal_roh_trust_saruman
+
GFX_goal_a_land_of_mountains
+
GFX_goal_focus_research
+
GFX_goal_focus_research2
+
GFX_goal_generic_alcohol_bottles
+
GFX_goal_generic_annex_country
+
GFX_goal_generic_annex_country_2
+
GFX_goal_generic_anti_revolutionary
+
GFX_goal_generic_aristocracy
+
GFX_goal_generic_arrows
+
GFX_goal_generic_bird
+
GFX_goal_generic_camel_corps
+
GFX_goal_generic_coastal_fort
+
GFX_goal_generic_coins_money
+
GFX_goal_generic_common_people_peasantry
+
GFX_goal_generic_concessions
+
GFX_goal_generic_conspiracy_dagger
+
GFX_goal_generic_crown_smashed
+
GFX_goal_generic_diplomatic_treaty
+
GFX_goal_generic_farmland
+
GFX_goal_generic_fight_beasts
+
GFX_goal_generic_fishermen
+
GFX_goal_generic_flooding
+
GFX_goal_generic_gold_money
+
GFX_goal_generic_gold_standard
+
GFX_goal_generic_guild
+
GFX_goal_generic_home_defense
+
GFX_goal_generic_horse_studs
+
GFX_goal_generic_improve_the_administration
+
GFX_goal_generic_industry_merge
+
GFX_goal_generic_jaeger_emblem
+
GFX_goal_generic_knock_over_flag
+
GFX_goal_generic_land_reclamation_resource_extraction
+
GFX_goal_generic_large_knife
+
GFX_goal_generic_levy
+
GFX_goal_generic_lion
+
GFX_goal_generic_love_natrue
+
GFX_goal_generic_medicine
+
GFX_goal_generic_men_at_arms
+
GFX_goal_generic_mining_industry
+
GFX_goal_generic_monarchy_1
+
GFX_goal_generic_monarchy_2
+
GFX_goal_generic_nature_trees
+
GFX_goal_generic_naval_crown_2
+
GFX_goal_generic_naval_emblem
+
GFX_goal_generic_naval_emblem_crown
+
GFX_goal_generic_naval_war_crown
+
GFX_goal_generic_peace_dove
+
GFX_goal_generic_peasantry_welfare
+
GFX_goal_generic_population_growth
+
GFX_goal_generic_prisoner_king_crown
+
GFX_goal_generic_provoke_border_clashes
+
GFX_goal_generic_revolutionary_chains
+
GFX_goal_generic_royal_wedding
+
GFX_goal_generic_rural_trade_farming
+
GFX_goal_generic_sabres
+
GFX_goal_generic_self_management
+
GFX_goal_generic_skull_death_nor_dishonor
+
GFX_goal_generic_spear_and_sabre
+
GFX_goal_generic_special_forces
+
GFX_goal_generic_spy_agency_eye
+
GFX_goal_generic_strike_at_democracy1
+
GFX_goal_generic_submission_puppet
+
GFX_goal_generic_support_crown
+
GFX_goal_generic_suppression_oppression
+
GFX_goal_generic_torchbearer
+
GFX_goal_generic_trade_devalue_currency
+
GFX_goal_generic_treaty
+
GFX_goal_generic_treaty_torn
+
GFX_goal_generic_unknown
+
GFX_goal_generic_urban_city
+
GFX_goal_generic_voting_ballot_locked
+
GFX_goal_generic_workers_and_farmers_rise_peasantry
+
GFX_goal_goal_anschluss
+
GFX_goal_goal_demand_sudetenland
+
GFX_goal_goal_generic_air_doctrine
+
GFX_goal_goal_generic_alliance
+
GFX_goal_goal_generic_army_doctrines
+
GFX_goal_goal_generic_attack_allies
+
GFX_goal_goal_generic_CAS
+
GFX_goal_goal_generic_cavalry
+
GFX_goal_goal_generic_dangerous_deal
+
GFX_goal_goal_generic_defence
+
GFX_goal_goal_generic_demand_territory
+
GFX_goal_goal_generic_forceful_treaty
+
GFX_goal_goal_generic_improve_relations
+
GFX_goal_goal_generic_major_alliance
+
GFX_goal_goal_generic_major_war
+
GFX_goal_goal_generic_military_deal
+
GFX_goal_goal_generic_more_territorial_claims
+
GFX_goal_goal_generic_national_unity
+
GFX_goal_goal_generic_navy_doctrines_tactics
+
GFX_goal_goal_generic_neutrality_focus
+
GFX_goal_goal_generic_occypy_states_coastal
+
GFX_goal_goal_generic_occypy_states_ongoing_war
+
GFX_goal_goal_generic_political_pressure
+
GFX_goal_goal_generic_position_armies
+
GFX_goal_goal_generic_positive_trade_relations
+
GFX_goal_goal_generic_scientific_exchange
+
GFX_goal_goal_generic_secret_weapon
+
GFX_goal_goal_generic_territory_or_war
+
GFX_goal_goal_generic_trade
+
GFX_goal_goal_molotov_ribbentrop_pact
+
GFX_goal_goal_tfv_generic_tech_sharing
+
GFX_goal_goal_tfv_strengthen_commonwealth_ties
+
GFX_goal_goal_tripartite_pact
+
GFX_goal_support_the_left_right
+
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/gfx_search/images/decisions/GFX_decision_assembly.png b/tools/gfx_search/images/decisions/GFX_decision_assembly.png new file mode 100644 index 000000000..4d8970c2f Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_assembly.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_beacons.png b/tools/gfx_search/images/decisions/GFX_decision_beacons.png new file mode 100644 index 000000000..dc9ead395 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_beacons.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_dorwinion_fascism.png b/tools/gfx_search/images/decisions/GFX_decision_dorwinion_fascism.png new file mode 100644 index 000000000..82b2cc72e Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_dorwinion_fascism.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_1.png b/tools/gfx_search/images/decisions/GFX_decision_generic_1.png new file mode 100644 index 000000000..9efabf7bf Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_1.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_2.png b/tools/gfx_search/images/decisions/GFX_decision_generic_2.png new file mode 100644 index 000000000..62651a1ca Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_2.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_3.png b/tools/gfx_search/images/decisions/GFX_decision_generic_3.png new file mode 100644 index 000000000..e6337ee70 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_3.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_4.png b/tools/gfx_search/images/decisions/GFX_decision_generic_4.png new file mode 100644 index 000000000..8eac9b6a2 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_4.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_5.png b/tools/gfx_search/images/decisions/GFX_decision_generic_5.png new file mode 100644 index 000000000..4b68ea57f Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_5.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_army.png b/tools/gfx_search/images/decisions/GFX_decision_generic_army.png new file mode 100644 index 000000000..8b6bbe642 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_army.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_army_1.png b/tools/gfx_search/images/decisions/GFX_decision_generic_army_1.png new file mode 100644 index 000000000..b950b8ae1 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_army_1.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_army_2.png b/tools/gfx_search/images/decisions/GFX_decision_generic_army_2.png new file mode 100644 index 000000000..d6af79491 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_army_2.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_army_3.png b/tools/gfx_search/images/decisions/GFX_decision_generic_army_3.png new file mode 100644 index 000000000..c8ee8fb6c Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_army_3.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_authority.png b/tools/gfx_search/images/decisions/GFX_decision_generic_authority.png new file mode 100644 index 000000000..a214d6869 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_authority.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_blacksmith.png b/tools/gfx_search/images/decisions/GFX_decision_generic_blacksmith.png new file mode 100644 index 000000000..7fbf9bd9f Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_blacksmith.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry.png b/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry.png new file mode 100644 index 000000000..16ab204f8 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry_2.png b/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry_2.png new file mode 100644 index 000000000..4cc25e122 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_cavalry_2.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_construction.png b/tools/gfx_search/images/decisions/GFX_decision_generic_construction.png new file mode 100644 index 000000000..b3fbcd9d3 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_construction.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_cooperation.png b/tools/gfx_search/images/decisions/GFX_decision_generic_cooperation.png new file mode 100644 index 000000000..f6a86f17a Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_cooperation.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_decision.png b/tools/gfx_search/images/decisions/GFX_decision_generic_decision.png new file mode 100644 index 000000000..725be7ab9 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_decision.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_farming.png b/tools/gfx_search/images/decisions/GFX_decision_generic_farming.png new file mode 100644 index 000000000..547626783 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_farming.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_infra.png b/tools/gfx_search/images/decisions/GFX_decision_generic_infra.png new file mode 100644 index 000000000..bd673913e Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_infra.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_naval.png b/tools/gfx_search/images/decisions/GFX_decision_generic_naval.png new file mode 100644 index 000000000..388d1a130 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_naval.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_operation.png b/tools/gfx_search/images/decisions/GFX_decision_generic_operation.png new file mode 100644 index 000000000..0a690ac32 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_operation.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_plot.png b/tools/gfx_search/images/decisions/GFX_decision_generic_plot.png new file mode 100644 index 000000000..7095afd85 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_plot.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_research.png b/tools/gfx_search/images/decisions/GFX_decision_generic_research.png new file mode 100644 index 000000000..ca55d74bd Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_research.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_generic_treasure.png b/tools/gfx_search/images/decisions/GFX_decision_generic_treasure.png new file mode 100644 index 000000000..6d944bc44 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_generic_treasure.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_gondor.png b/tools/gfx_search/images/decisions/GFX_decision_gondor.png new file mode 100644 index 000000000..237475b56 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_gondor.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_grey_havens.png b/tools/gfx_search/images/decisions/GFX_decision_grey_havens.png new file mode 100644 index 000000000..92886b022 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_grey_havens.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_harad_fascism.png b/tools/gfx_search/images/decisions/GFX_decision_harad_fascism.png new file mode 100644 index 000000000..5189a9518 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_harad_fascism.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_knights.png b/tools/gfx_search/images/decisions/GFX_decision_knights.png new file mode 100644 index 000000000..5765cc961 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_knights.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_lth_mirror.png b/tools/gfx_search/images/decisions/GFX_decision_lth_mirror.png new file mode 100644 index 000000000..912785034 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_lth_mirror.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_nazgul.png b/tools/gfx_search/images/decisions/GFX_decision_nazgul.png new file mode 100644 index 000000000..f042d5313 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_nazgul.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_operation_2.png b/tools/gfx_search/images/decisions/GFX_decision_operation_2.png new file mode 100644 index 000000000..9c96164c1 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_operation_2.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_orcs.png b/tools/gfx_search/images/decisions/GFX_decision_orcs.png new file mode 100644 index 000000000..2de4c5cac Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_orcs.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_orcs_2.png b/tools/gfx_search/images/decisions/GFX_decision_orcs_2.png new file mode 100644 index 000000000..1acdb11b4 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_orcs_2.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_orcs_3.png b/tools/gfx_search/images/decisions/GFX_decision_orcs_3.png new file mode 100644 index 000000000..90764eb76 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_orcs_3.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_orcs_4.png b/tools/gfx_search/images/decisions/GFX_decision_orcs_4.png new file mode 100644 index 000000000..c4bb8496a Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_orcs_4.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_orcs_5.png b/tools/gfx_search/images/decisions/GFX_decision_orcs_5.png new file mode 100644 index 000000000..a6b94855d Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_orcs_5.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_revolt.png b/tools/gfx_search/images/decisions/GFX_decision_revolt.png new file mode 100644 index 000000000..5e6cd5fe0 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_revolt.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_ring.png b/tools/gfx_search/images/decisions/GFX_decision_ring.png new file mode 100644 index 000000000..67e884371 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_ring.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_rohan.png b/tools/gfx_search/images/decisions/GFX_decision_rohan.png new file mode 100644 index 000000000..46e3256fd Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_rohan.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_sauron_eye.png b/tools/gfx_search/images/decisions/GFX_decision_sauron_eye.png new file mode 100644 index 000000000..f4014cf0f Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_sauron_eye.png differ diff --git a/tools/gfx_search/images/decisions/GFX_decision_unknown.png b/tools/gfx_search/images/decisions/GFX_decision_unknown.png new file mode 100644 index 000000000..078d32407 Binary files /dev/null and b/tools/gfx_search/images/decisions/GFX_decision_unknown.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_abandoned.png b/tools/gfx_search/images/events/GFX_report_event_abandoned.png new file mode 100644 index 000000000..bff346675 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_abandoned.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_army_camp.png b/tools/gfx_search/images/events/GFX_report_event_army_camp.png new file mode 100644 index 000000000..21192939f Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_army_camp.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_balrog.png b/tools/gfx_search/images/events/GFX_report_event_balrog.png new file mode 100644 index 000000000..33991a9f0 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_balrog.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_beacons.png b/tools/gfx_search/images/events/GFX_report_event_beacons.png new file mode 100644 index 000000000..ccb28987a Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_beacons.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_building_sawmill.png b/tools/gfx_search/images/events/GFX_report_event_building_sawmill.png new file mode 100644 index 000000000..863f8358c Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_building_sawmill.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_building_sawmill2.png b/tools/gfx_search/images/events/GFX_report_event_building_sawmill2.png new file mode 100644 index 000000000..ec04d2097 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_building_sawmill2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_castle.png b/tools/gfx_search/images/events/GFX_report_event_castle.png new file mode 100644 index 000000000..f6c94e54f Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_castle.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_cavalry_knights.png b/tools/gfx_search/images/events/GFX_report_event_cavalry_knights.png new file mode 100644 index 000000000..9b90b0889 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_cavalry_knights.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_cele_gala.png b/tools/gfx_search/images/events/GFX_report_event_cele_gala.png new file mode 100644 index 000000000..ca40ba546 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_cele_gala.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_celeborn.png b/tools/gfx_search/images/events/GFX_report_event_celeborn.png new file mode 100644 index 000000000..42456cfeb Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_celeborn.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_celebrations.png b/tools/gfx_search/images/events/GFX_report_event_celebrations.png new file mode 100644 index 000000000..864c6cbfd Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_celebrations.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_celebrations_2.png b/tools/gfx_search/images/events/GFX_report_event_celebrations_2.png new file mode 100644 index 000000000..da5d232ba Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_celebrations_2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_celebrations_3.png b/tools/gfx_search/images/events/GFX_report_event_celebrations_3.png new file mode 100644 index 000000000..bc29543e7 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_celebrations_3.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_dolguldur.png b/tools/gfx_search/images/events/GFX_report_event_dolguldur.png new file mode 100644 index 000000000..7eeec3631 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_dolguldur.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_elrond_council.png b/tools/gfx_search/images/events/GFX_report_event_elrond_council.png new file mode 100644 index 000000000..c0e2e0efb Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_elrond_council.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_elven_alliance.png b/tools/gfx_search/images/events/GFX_report_event_elven_alliance.png new file mode 100644 index 000000000..a944be015 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_elven_alliance.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_elves.png b/tools/gfx_search/images/events/GFX_report_event_elves.png new file mode 100644 index 000000000..c4fdae5ff Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_elves.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_elves_army.png b/tools/gfx_search/images/events/GFX_report_event_elves_army.png new file mode 100644 index 000000000..b53a66651 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_elves_army.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_elves_oath.png b/tools/gfx_search/images/events/GFX_report_event_elves_oath.png new file mode 100644 index 000000000..521eaba51 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_elves_oath.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_ents.png b/tools/gfx_search/images/events/GFX_report_event_ents.png new file mode 100644 index 000000000..0990d0d71 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_ents.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_fellowship_lothlorien.png b/tools/gfx_search/images/events/GFX_report_event_fellowship_lothlorien.png new file mode 100644 index 000000000..47c10fd36 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_fellowship_lothlorien.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_fight.png b/tools/gfx_search/images/events/GFX_report_event_fight.png new file mode 100644 index 000000000..31bb02195 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_fight.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_fire.png b/tools/gfx_search/images/events/GFX_report_event_fire.png new file mode 100644 index 000000000..b65132dec Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_fire.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_galadriel.png b/tools/gfx_search/images/events/GFX_report_event_galadriel.png new file mode 100644 index 000000000..d73cfed0d Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_galadriel.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_generic_king.png b/tools/gfx_search/images/events/GFX_report_event_generic_king.png new file mode 100644 index 000000000..2da230edf Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_generic_king.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_generic_reading.png b/tools/gfx_search/images/events/GFX_report_event_generic_reading.png new file mode 100644 index 000000000..7a9fd509d Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_generic_reading.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_gondor.png b/tools/gfx_search/images/events/GFX_report_event_gondor.png new file mode 100644 index 000000000..f6abe134d Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_gondor.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers.png b/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers.png new file mode 100644 index 000000000..c1be450ce Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers_2.png b/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers_2.png new file mode 100644 index 000000000..4a7c4bdea Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_gondor_soldiers_2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_hobbit_party.png b/tools/gfx_search/images/events/GFX_report_event_hobbit_party.png new file mode 100644 index 000000000..f8b2877a1 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_hobbit_party.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_horseman_wanderer.png b/tools/gfx_search/images/events/GFX_report_event_horseman_wanderer.png new file mode 100644 index 000000000..5b0a927b4 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_horseman_wanderer.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_lindon.png b/tools/gfx_search/images/events/GFX_report_event_lindon.png new file mode 100644 index 000000000..cf71cb44c Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_lindon.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_lothlorien.png b/tools/gfx_search/images/events/GFX_report_event_lothlorien.png new file mode 100644 index 000000000..822909b4c Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_lothlorien.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_man_fishing.png b/tools/gfx_search/images/events/GFX_report_event_man_fishing.png new file mode 100644 index 000000000..988cb8922 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_man_fishing.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_market.png b/tools/gfx_search/images/events/GFX_report_event_market.png new file mode 100644 index 000000000..d7ed30e1c Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_market.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_marriage_wedding.png b/tools/gfx_search/images/events/GFX_report_event_marriage_wedding.png new file mode 100644 index 000000000..43b247e04 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_marriage_wedding.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_marriage_wedding2.png b/tools/gfx_search/images/events/GFX_report_event_marriage_wedding2.png new file mode 100644 index 000000000..e2d933818 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_marriage_wedding2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_mirror.png b/tools/gfx_search/images/events/GFX_report_event_mirror.png new file mode 100644 index 000000000..a50e1c2d6 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_mirror.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_moria.png b/tools/gfx_search/images/events/GFX_report_event_moria.png new file mode 100644 index 000000000..61a236675 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_moria.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_nazgul.png b/tools/gfx_search/images/events/GFX_report_event_nazgul.png new file mode 100644 index 000000000..228d0d4a7 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_nazgul.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_negotiations.png b/tools/gfx_search/images/events/GFX_report_event_negotiations.png new file mode 100644 index 000000000..fbdf9e4db Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_negotiations.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_orcs.png b/tools/gfx_search/images/events/GFX_report_event_orcs.png new file mode 100644 index 000000000..7841a1dde Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_orcs.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_orcs_2.png b/tools/gfx_search/images/events/GFX_report_event_orcs_2.png new file mode 100644 index 000000000..1a2b5370b Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_orcs_2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_orcs_marching.png b/tools/gfx_search/images/events/GFX_report_event_orcs_marching.png new file mode 100644 index 000000000..ed618cc29 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_orcs_marching.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_paper.png b/tools/gfx_search/images/events/GFX_report_event_paper.png new file mode 100644 index 000000000..a2253e82f Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_paper.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_peasant_revolt.png b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt.png new file mode 100644 index 000000000..f0619d16f Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_peasant_revolt2.png b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt2.png new file mode 100644 index 000000000..ae32de27b Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_peasant_revolt3.png b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt3.png new file mode 100644 index 000000000..dff9d7288 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_peasant_revolt3.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_rangers.png b/tools/gfx_search/images/events/GFX_report_event_rangers.png new file mode 100644 index 000000000..843291a47 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_rangers.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_riders.png b/tools/gfx_search/images/events/GFX_report_event_riders.png new file mode 100644 index 000000000..e1f555efa Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_riders.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_ring.png b/tools/gfx_search/images/events/GFX_report_event_ring.png new file mode 100644 index 000000000..dc6db2a7a Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_ring.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_rivendell.png b/tools/gfx_search/images/events/GFX_report_event_rivendell.png new file mode 100644 index 000000000..b56dded7a Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_rivendell.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_rohan_riders.png b/tools/gfx_search/images/events/GFX_report_event_rohan_riders.png new file mode 100644 index 000000000..baa8a946b Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_rohan_riders.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_sauron_eye.png b/tools/gfx_search/images/events/GFX_report_event_sauron_eye.png new file mode 100644 index 000000000..924cbb742 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_sauron_eye.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_ship.png b/tools/gfx_search/images/events/GFX_report_event_ship.png new file mode 100644 index 000000000..8ec79bf34 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_ship.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_ship2.png b/tools/gfx_search/images/events/GFX_report_event_ship2.png new file mode 100644 index 000000000..bcdc3b771 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_ship2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_ship_valinor.png b/tools/gfx_search/images/events/GFX_report_event_ship_valinor.png new file mode 100644 index 000000000..f751ec1fd Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_ship_valinor.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_spiders.png b/tools/gfx_search/images/events/GFX_report_event_spiders.png new file mode 100644 index 000000000..b9f17d8a5 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_spiders.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_tournament.png b/tools/gfx_search/images/events/GFX_report_event_tournament.png new file mode 100644 index 000000000..053b5c465 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_tournament.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_trade_caravan.png b/tools/gfx_search/images/events/GFX_report_event_trade_caravan.png new file mode 100644 index 000000000..e6226c1a7 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_trade_caravan.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_trade_caravan2.png b/tools/gfx_search/images/events/GFX_report_event_trade_caravan2.png new file mode 100644 index 000000000..804e05e83 Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_trade_caravan2.png differ diff --git a/tools/gfx_search/images/events/GFX_report_event_white_council.png b/tools/gfx_search/images/events/GFX_report_event_white_council.png new file mode 100644 index 000000000..6a1040c3d Binary files /dev/null and b/tools/gfx_search/images/events/GFX_report_event_white_council.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_a_land_of_mountains.png b/tools/gfx_search/images/focuses/GFX_goal_a_land_of_mountains.png new file mode 100644 index 000000000..864298032 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_a_land_of_mountains.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_angmar_unaligned.png b/tools/gfx_search/images/focuses/GFX_goal_angmar_unaligned.png new file mode 100644 index 000000000..45dc9210a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_angmar_unaligned.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_army_uruk_hai.png b/tools/gfx_search/images/focuses/GFX_goal_army_uruk_hai.png new file mode 100644 index 000000000..a3ab532c7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_army_uruk_hai.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_arnor.png b/tools/gfx_search/images/focuses/GFX_goal_arnor.png new file mode 100644 index 000000000..c576e2f41 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_arnor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_arnor_unite_by_force.png b/tools/gfx_search/images/focuses/GFX_goal_arnor_unite_by_force.png new file mode 100644 index 000000000..36613962f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_arnor_unite_by_force.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_burn_fangorn_forest.png b/tools/gfx_search/images/focuses/GFX_goal_burn_fangorn_forest.png new file mode 100644 index 000000000..c23463050 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_burn_fangorn_forest.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_dwarves_soldiers_army.png b/tools/gfx_search/images/focuses/GFX_goal_dwarves_soldiers_army.png new file mode 100644 index 000000000..729654476 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_dwarves_soldiers_army.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_ent_throwing_rock.png b/tools/gfx_search/images/focuses/GFX_goal_ent_throwing_rock.png new file mode 100644 index 000000000..58634b712 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_ent_throwing_rock.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_entwood_ent_council.png b/tools/gfx_search/images/focuses/GFX_goal_entwood_ent_council.png new file mode 100644 index 000000000..fdd5013d0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_entwood_ent_council.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_entwood_flag.png b/tools/gfx_search/images/focuses/GFX_goal_entwood_flag.png new file mode 100644 index 000000000..0befeb8c6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_entwood_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_entwood_forest_nature.png b/tools/gfx_search/images/focuses/GFX_goal_entwood_forest_nature.png new file mode 100644 index 000000000..b45c8b5ac Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_entwood_forest_nature.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_entwood_treebeard.png b/tools/gfx_search/images/focuses/GFX_goal_entwood_treebeard.png new file mode 100644 index 000000000..0ea3d0622 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_entwood_treebeard.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_focus_research.png b/tools/gfx_search/images/focuses/GFX_goal_focus_research.png new file mode 100644 index 000000000..f7cc2e798 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_focus_research.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_focus_research2.png b/tools/gfx_search/images/focuses/GFX_goal_focus_research2.png new file mode 100644 index 000000000..5b2f080f4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_focus_research2.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_alcohol_bottles.png b/tools/gfx_search/images/focuses/GFX_goal_generic_alcohol_bottles.png new file mode 100644 index 000000000..ebc725c9c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_alcohol_bottles.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country.png b/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country.png new file mode 100644 index 000000000..730b72ee1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country_2.png b/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country_2.png new file mode 100644 index 000000000..b4bf4ff87 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_annex_country_2.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_anti_revolutionary.png b/tools/gfx_search/images/focuses/GFX_goal_generic_anti_revolutionary.png new file mode 100644 index 000000000..3e9de7933 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_anti_revolutionary.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_anvil.png b/tools/gfx_search/images/focuses/GFX_goal_generic_anvil.png new file mode 100644 index 000000000..324857b06 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_anvil.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_aristocracy.png b/tools/gfx_search/images/focuses/GFX_goal_generic_aristocracy.png new file mode 100644 index 000000000..7d003d896 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_aristocracy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_arrows.png b/tools/gfx_search/images/focuses/GFX_goal_generic_arrows.png new file mode 100644 index 000000000..7bccaec66 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_arrows.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_bird.png b/tools/gfx_search/images/focuses/GFX_goal_generic_bird.png new file mode 100644 index 000000000..705e73f8e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_bird.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_camel_corps.png b/tools/gfx_search/images/focuses/GFX_goal_generic_camel_corps.png new file mode 100644 index 000000000..0bc6afe2b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_camel_corps.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_coastal_fort.png b/tools/gfx_search/images/focuses/GFX_goal_generic_coastal_fort.png new file mode 100644 index 000000000..60171ba46 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_coastal_fort.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_coins_money.png b/tools/gfx_search/images/focuses/GFX_goal_generic_coins_money.png new file mode 100644 index 000000000..28fce800a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_coins_money.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_common_people_peasantry.png b/tools/gfx_search/images/focuses/GFX_goal_generic_common_people_peasantry.png new file mode 100644 index 000000000..5a935bbe1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_common_people_peasantry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_concessions.png b/tools/gfx_search/images/focuses/GFX_goal_generic_concessions.png new file mode 100644 index 000000000..7f286e226 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_concessions.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_conspiracy_dagger.png b/tools/gfx_search/images/focuses/GFX_goal_generic_conspiracy_dagger.png new file mode 100644 index 000000000..e17c7e2f4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_conspiracy_dagger.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_crown_smashed.png b/tools/gfx_search/images/focuses/GFX_goal_generic_crown_smashed.png new file mode 100644 index 000000000..79d8a2009 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_crown_smashed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_diplomatic_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_generic_diplomatic_treaty.png new file mode 100644 index 000000000..e43f8356f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_diplomatic_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_farmland.png b/tools/gfx_search/images/focuses/GFX_goal_generic_farmland.png new file mode 100644 index 000000000..2bca3f8b8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_farmland.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_fight_beasts.png b/tools/gfx_search/images/focuses/GFX_goal_generic_fight_beasts.png new file mode 100644 index 000000000..be0ee287a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_fight_beasts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_fishermen.png b/tools/gfx_search/images/focuses/GFX_goal_generic_fishermen.png new file mode 100644 index 000000000..42b67a50c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_fishermen.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_flooding.png b/tools/gfx_search/images/focuses/GFX_goal_generic_flooding.png new file mode 100644 index 000000000..bfaa74489 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_flooding.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_gold_money.png b/tools/gfx_search/images/focuses/GFX_goal_generic_gold_money.png new file mode 100644 index 000000000..d17e40f0f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_gold_money.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_gold_standard.png b/tools/gfx_search/images/focuses/GFX_goal_generic_gold_standard.png new file mode 100644 index 000000000..ba5fd35d6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_gold_standard.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_gondor_research.png b/tools/gfx_search/images/focuses/GFX_goal_generic_gondor_research.png new file mode 100644 index 000000000..10231162e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_gondor_research.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_guild.png b/tools/gfx_search/images/focuses/GFX_goal_generic_guild.png new file mode 100644 index 000000000..2a97b2b79 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_guild.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_home_defense.png b/tools/gfx_search/images/focuses/GFX_goal_generic_home_defense.png new file mode 100644 index 000000000..7181df3b7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_home_defense.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_horse_studs.png b/tools/gfx_search/images/focuses/GFX_goal_generic_horse_studs.png new file mode 100644 index 000000000..b3600cb13 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_horse_studs.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_improve_the_administration.png b/tools/gfx_search/images/focuses/GFX_goal_generic_improve_the_administration.png new file mode 100644 index 000000000..ea76c2433 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_improve_the_administration.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_industry_I.png b/tools/gfx_search/images/focuses/GFX_goal_generic_industry_I.png new file mode 100644 index 000000000..11f6c6316 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_industry_I.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_industry_merge.png b/tools/gfx_search/images/focuses/GFX_goal_generic_industry_merge.png new file mode 100644 index 000000000..dbadfd7de Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_industry_merge.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_jaeger_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_generic_jaeger_emblem.png new file mode 100644 index 000000000..effffb379 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_jaeger_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_knock_over_flag.png b/tools/gfx_search/images/focuses/GFX_goal_generic_knock_over_flag.png new file mode 100644 index 000000000..ab9bf6b8a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_knock_over_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_land_reclamation_resource_extraction.png b/tools/gfx_search/images/focuses/GFX_goal_generic_land_reclamation_resource_extraction.png new file mode 100644 index 000000000..566f12dd8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_land_reclamation_resource_extraction.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_large_knife.png b/tools/gfx_search/images/focuses/GFX_goal_generic_large_knife.png new file mode 100644 index 000000000..7d9e00486 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_large_knife.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_levy.png b/tools/gfx_search/images/focuses/GFX_goal_generic_levy.png new file mode 100644 index 000000000..9e4488a7b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_levy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_lion.png b/tools/gfx_search/images/focuses/GFX_goal_generic_lion.png new file mode 100644 index 000000000..459a08d04 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_lion.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_love_natrue.png b/tools/gfx_search/images/focuses/GFX_goal_generic_love_natrue.png new file mode 100644 index 000000000..192d8ee2e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_love_natrue.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_medicine.png b/tools/gfx_search/images/focuses/GFX_goal_generic_medicine.png new file mode 100644 index 000000000..90334bb66 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_medicine.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_men_at_arms.png b/tools/gfx_search/images/focuses/GFX_goal_generic_men_at_arms.png new file mode 100644 index 000000000..5e53efefb Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_men_at_arms.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_mining_industry.png b/tools/gfx_search/images/focuses/GFX_goal_generic_mining_industry.png new file mode 100644 index 000000000..b13b4295e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_mining_industry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_1.png b/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_1.png new file mode 100644 index 000000000..e729a028b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_1.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_2.png b/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_2.png new file mode 100644 index 000000000..e230f5baa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_monarchy_2.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_nature_trees.png b/tools/gfx_search/images/focuses/GFX_goal_generic_nature_trees.png new file mode 100644 index 000000000..0ed228446 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_nature_trees.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_naval_crown_2.png b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_crown_2.png new file mode 100644 index 000000000..f8d395d06 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_crown_2.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem.png new file mode 100644 index 000000000..d980ebab7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem_crown.png b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem_crown.png new file mode 100644 index 000000000..592a8a967 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_emblem_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_naval_war_crown.png b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_war_crown.png new file mode 100644 index 000000000..1a1927694 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_naval_war_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_peace_dove.png b/tools/gfx_search/images/focuses/GFX_goal_generic_peace_dove.png new file mode 100644 index 000000000..b8d39e287 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_peace_dove.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_peasantry_welfare.png b/tools/gfx_search/images/focuses/GFX_goal_generic_peasantry_welfare.png new file mode 100644 index 000000000..9c20479b3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_peasantry_welfare.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_population_growth.png b/tools/gfx_search/images/focuses/GFX_goal_generic_population_growth.png new file mode 100644 index 000000000..87f7710db Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_population_growth.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_prisoner_king_crown.png b/tools/gfx_search/images/focuses/GFX_goal_generic_prisoner_king_crown.png new file mode 100644 index 000000000..ff04cc81c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_prisoner_king_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_provoke_border_clashes.png b/tools/gfx_search/images/focuses/GFX_goal_generic_provoke_border_clashes.png new file mode 100644 index 000000000..8520bc2e7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_provoke_border_clashes.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_revolutionary_chains.png b/tools/gfx_search/images/focuses/GFX_goal_generic_revolutionary_chains.png new file mode 100644 index 000000000..b6e31fdb3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_revolutionary_chains.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_royal_wedding.png b/tools/gfx_search/images/focuses/GFX_goal_generic_royal_wedding.png new file mode 100644 index 000000000..4ab711fe6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_royal_wedding.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_rural_trade_farming.png b/tools/gfx_search/images/focuses/GFX_goal_generic_rural_trade_farming.png new file mode 100644 index 000000000..df94cc522 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_rural_trade_farming.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_sabres.png b/tools/gfx_search/images/focuses/GFX_goal_generic_sabres.png new file mode 100644 index 000000000..fb6b7e913 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_sabres.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_self_management.png b/tools/gfx_search/images/focuses/GFX_goal_generic_self_management.png new file mode 100644 index 000000000..b06f42290 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_self_management.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_skull_death_nor_dishonor.png b/tools/gfx_search/images/focuses/GFX_goal_generic_skull_death_nor_dishonor.png new file mode 100644 index 000000000..7d6a214e8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_skull_death_nor_dishonor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_spear_and_sabre.png b/tools/gfx_search/images/focuses/GFX_goal_generic_spear_and_sabre.png new file mode 100644 index 000000000..ac6c68666 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_spear_and_sabre.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_special_forces.png b/tools/gfx_search/images/focuses/GFX_goal_generic_special_forces.png new file mode 100644 index 000000000..038d95faa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_special_forces.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_spy_agency_eye.png b/tools/gfx_search/images/focuses/GFX_goal_generic_spy_agency_eye.png new file mode 100644 index 000000000..bf48194a1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_spy_agency_eye.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_strike_at_democracy1.png b/tools/gfx_search/images/focuses/GFX_goal_generic_strike_at_democracy1.png new file mode 100644 index 000000000..84afb6e12 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_strike_at_democracy1.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_submission_puppet.png b/tools/gfx_search/images/focuses/GFX_goal_generic_submission_puppet.png new file mode 100644 index 000000000..d6846e6eb Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_submission_puppet.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_support_crown.png b/tools/gfx_search/images/focuses/GFX_goal_generic_support_crown.png new file mode 100644 index 000000000..5b136b28a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_support_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_suppression_oppression.png b/tools/gfx_search/images/focuses/GFX_goal_generic_suppression_oppression.png new file mode 100644 index 000000000..30f55adc4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_suppression_oppression.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_torchbearer.png b/tools/gfx_search/images/focuses/GFX_goal_generic_torchbearer.png new file mode 100644 index 000000000..15891653a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_torchbearer.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_trade_devalue_currency.png b/tools/gfx_search/images/focuses/GFX_goal_generic_trade_devalue_currency.png new file mode 100644 index 000000000..857c68bb2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_trade_devalue_currency.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_generic_treaty.png new file mode 100644 index 000000000..726359a14 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_treaty_torn.png b/tools/gfx_search/images/focuses/GFX_goal_generic_treaty_torn.png new file mode 100644 index 000000000..21038d285 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_treaty_torn.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_unknown.png b/tools/gfx_search/images/focuses/GFX_goal_generic_unknown.png new file mode 100644 index 000000000..e9207b831 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_unknown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_urban_city.png b/tools/gfx_search/images/focuses/GFX_goal_generic_urban_city.png new file mode 100644 index 000000000..45131c27b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_urban_city.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_voting_ballot_locked.png b/tools/gfx_search/images/focuses/GFX_goal_generic_voting_ballot_locked.png new file mode 100644 index 000000000..ee91ef3ba Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_voting_ballot_locked.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_windmill.png b/tools/gfx_search/images/focuses/GFX_goal_generic_windmill.png new file mode 100644 index 000000000..8a9e03f21 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_windmill.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_generic_workers_and_farmers_rise_peasantry.png b/tools/gfx_search/images/focuses/GFX_goal_generic_workers_and_farmers_rise_peasantry.png new file mode 100644 index 000000000..6ef0ac3ff Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_generic_workers_and_farmers_rise_peasantry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_anschluss.png b/tools/gfx_search/images/focuses/GFX_goal_goal_anschluss.png new file mode 100644 index 000000000..e03a1aaa5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_anschluss.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_demand_sudetenland.png b/tools/gfx_search/images/focuses/GFX_goal_goal_demand_sudetenland.png new file mode 100644 index 000000000..08216de57 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_demand_sudetenland.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_CAS.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_CAS.png new file mode 100644 index 000000000..fae2eb2c3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_CAS.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_air_doctrine.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_air_doctrine.png new file mode 100644 index 000000000..e168251f7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_air_doctrine.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_alliance.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_alliance.png new file mode 100644 index 000000000..7ae02c2f5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_alliance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_army_doctrines.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_army_doctrines.png new file mode 100644 index 000000000..533bbc8c3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_army_doctrines.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_attack_allies.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_attack_allies.png new file mode 100644 index 000000000..ade382255 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_attack_allies.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_cavalry.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_cavalry.png new file mode 100644 index 000000000..93a5d1dce Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_cavalry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_dangerous_deal.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_dangerous_deal.png new file mode 100644 index 000000000..93184874f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_dangerous_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_defence.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_defence.png new file mode 100644 index 000000000..ec3c8c8f9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_defence.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_demand_territory.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_demand_territory.png new file mode 100644 index 000000000..200078b48 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_demand_territory.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_forceful_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_forceful_treaty.png new file mode 100644 index 000000000..1beac81de Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_forceful_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_improve_relations.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_improve_relations.png new file mode 100644 index 000000000..c84e6f7b3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_improve_relations.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_alliance.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_alliance.png new file mode 100644 index 000000000..618f2d6f8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_alliance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_war.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_war.png new file mode 100644 index 000000000..634773a36 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_major_war.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_military_deal.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_military_deal.png new file mode 100644 index 000000000..cd8fd797e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_military_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_more_territorial_claims.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_more_territorial_claims.png new file mode 100644 index 000000000..c4b14ffc8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_more_territorial_claims.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_national_unity.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_national_unity.png new file mode 100644 index 000000000..a5edaa336 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_national_unity.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_navy_doctrines_tactics.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_navy_doctrines_tactics.png new file mode 100644 index 000000000..f42d75280 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_navy_doctrines_tactics.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_neutrality_focus.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_neutrality_focus.png new file mode 100644 index 000000000..e41fd4a72 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_neutrality_focus.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_coastal.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_coastal.png new file mode 100644 index 000000000..b414d84ce Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_coastal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_ongoing_war.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_ongoing_war.png new file mode 100644 index 000000000..e80c1c187 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_occypy_states_ongoing_war.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_political_pressure.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_political_pressure.png new file mode 100644 index 000000000..1178ebf11 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_political_pressure.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_position_armies.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_position_armies.png new file mode 100644 index 000000000..cd7005924 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_position_armies.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_positive_trade_relations.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_positive_trade_relations.png new file mode 100644 index 000000000..a0b961144 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_positive_trade_relations.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_scientific_exchange.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_scientific_exchange.png new file mode 100644 index 000000000..2345deb71 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_scientific_exchange.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_secret_weapon.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_secret_weapon.png new file mode 100644 index 000000000..9d6798889 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_secret_weapon.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_territory_or_war.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_territory_or_war.png new file mode 100644 index 000000000..ec74923fc Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_territory_or_war.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_generic_trade.png b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_trade.png new file mode 100644 index 000000000..4386df0a8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_generic_trade.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_molotov_ribbentrop_pact.png b/tools/gfx_search/images/focuses/GFX_goal_goal_molotov_ribbentrop_pact.png new file mode 100644 index 000000000..c8af459e1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_molotov_ribbentrop_pact.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_generic_tech_sharing.png b/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_generic_tech_sharing.png new file mode 100644 index 000000000..82c743b1a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_generic_tech_sharing.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_strengthen_commonwealth_ties.png b/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_strengthen_commonwealth_ties.png new file mode 100644 index 000000000..1153ab299 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_tfv_strengthen_commonwealth_ties.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_goal_tripartite_pact.png b/tools/gfx_search/images/focuses/GFX_goal_goal_tripartite_pact.png new file mode 100644 index 000000000..c810f32b0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_goal_tripartite_pact.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_ensure_popular_support_peasant_farmer.png b/tools/gfx_search/images/focuses/GFX_goal_gon_ensure_popular_support_peasant_farmer.png new file mode 100644 index 000000000..c2cf7cc3a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_ensure_popular_support_peasant_farmer.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_faramir_eowyn_wedding.png b/tools/gfx_search/images/focuses/GFX_goal_gon_faramir_eowyn_wedding.png new file mode 100644 index 000000000..102fd5378 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_faramir_eowyn_wedding.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_angmar_deal.png b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_angmar_deal.png new file mode 100644 index 000000000..2b444b66d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_angmar_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_enedwaith_deal.png b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_enedwaith_deal.png new file mode 100644 index 000000000..586a1b646 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_enedwaith_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_flag_with_denethor_portrait.png b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_flag_with_denethor_portrait.png new file mode 100644 index 000000000..34c8c6d52 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_flag_with_denethor_portrait.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_lothlorien_deal.png b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_lothlorien_deal.png new file mode 100644 index 000000000..eb035be7d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_lothlorien_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_needs_no_king_crown_broken.png b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_needs_no_king_crown_broken.png new file mode 100644 index 000000000..f5b46da2b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_gondor_needs_no_king_crown_broken.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_defamed.png b/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_defamed.png new file mode 100644 index 000000000..40ef2ef90 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_defamed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_with_map.png b/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_with_map.png new file mode 100644 index 000000000..4fc3b8698 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_isildur_crown_with_map.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_crisis_white_tree_on_fire.png b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_crisis_white_tree_on_fire.png new file mode 100644 index 000000000..a1ee3eeb0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_crisis_white_tree_on_fire.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_defensive_planning.png b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_defensive_planning.png new file mode 100644 index 000000000..02872037f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_defensive_planning.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_soldier_of_gondor_shield.png b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_soldier_of_gondor_shield.png new file mode 100644 index 000000000..553d082f0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_ithilien_soldier_of_gondor_shield.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_orc_contained_ithilien_measures.png b/tools/gfx_search/images/focuses/GFX_goal_gon_orc_contained_ithilien_measures.png new file mode 100644 index 000000000..ab7acfaa9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_orc_contained_ithilien_measures.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_pitchfork_and_torch_revolt.png b/tools/gfx_search/images/focuses/GFX_goal_gon_pitchfork_and_torch_revolt.png new file mode 100644 index 000000000..888b9ccbf Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_pitchfork_and_torch_revolt.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gon_the_peoples_fleet_ship.png b/tools/gfx_search/images/focuses/GFX_goal_gon_the_peoples_fleet_ship.png new file mode 100644 index 000000000..20ac45b1a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gon_the_peoples_fleet_ship.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor.png b/tools/gfx_search/images/focuses/GFX_goal_gondor.png new file mode 100644 index 000000000..6c92c9a16 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_army_of_the_dead_ghosts.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_army_of_the_dead_ghosts.png new file mode 100644 index 000000000..343202906 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_army_of_the_dead_ghosts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_boromir.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_boromir.png new file mode 100644 index 000000000..3c6edd965 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_boromir.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_denethor.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_denethor.png new file mode 100644 index 000000000..228203d57 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_denethor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_flag.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_flag.png new file mode 100644 index 000000000..2e827623e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_propaganda.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_propaganda.png new file mode 100644 index 000000000..33e5fc169 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_dol_amroth_propaganda.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_faramir.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_faramir.png new file mode 100644 index 000000000..2f8dfab39 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_faramir.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_king_aragorn.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_king_aragorn.png new file mode 100644 index 000000000..1c15d9e2d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_king_aragorn.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gondor_light_the_beacons.png b/tools/gfx_search/images/focuses/GFX_goal_gondor_light_the_beacons.png new file mode 100644 index 000000000..57c042867 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gondor_light_the_beacons.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_gundabad_flag.png b/tools/gfx_search/images/focuses/GFX_goal_gundabad_flag.png new file mode 100644 index 000000000..6c25cd87b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_gundabad_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_imprisend_gandalf.png b/tools/gfx_search/images/focuses/GFX_goal_imprisend_gandalf.png new file mode 100644 index 000000000..6288a620c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_imprisend_gandalf.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_ise_palantir_covered_up.png b/tools/gfx_search/images/focuses/GFX_goal_ise_palantir_covered_up.png new file mode 100644 index 000000000..c1a066fdd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_ise_palantir_covered_up.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_ise_the_white_hand_flag.png b/tools/gfx_search/images/focuses/GFX_goal_ise_the_white_hand_flag.png new file mode 100644 index 000000000..ef5673cf9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_ise_the_white_hand_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_adminstration.png b/tools/gfx_search/images/focuses/GFX_goal_lth_adminstration.png new file mode 100644 index 000000000..e767cf047 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_adminstration.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_ancient_archives.png b/tools/gfx_search/images/focuses/GFX_goal_lth_ancient_archives.png new file mode 100644 index 000000000..427c3003d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_ancient_archives.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_anduin_flag.png b/tools/gfx_search/images/focuses/GFX_goal_lth_anduin_flag.png new file mode 100644 index 000000000..ca03e1d08 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_anduin_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_attack_dol_guldur.png b/tools/gfx_search/images/focuses/GFX_goal_lth_attack_dol_guldur.png new file mode 100644 index 000000000..83fc5fea5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_attack_dol_guldur.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_aule_the_blacksmith.png b/tools/gfx_search/images/focuses/GFX_goal_lth_aule_the_blacksmith.png new file mode 100644 index 000000000..b4aaf831f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_aule_the_blacksmith.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_balrog_durins_bane.png b/tools/gfx_search/images/focuses/GFX_goal_lth_balrog_durins_bane.png new file mode 100644 index 000000000..4b898d4ea Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_balrog_durins_bane.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_borders_migration_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_lth_borders_migration_treaty.png new file mode 100644 index 000000000..a2e77d996 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_borders_migration_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_burdens_of_leadership.png b/tools/gfx_search/images/focuses/GFX_goal_lth_burdens_of_leadership.png new file mode 100644 index 000000000..0bad7b809 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_burdens_of_leadership.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_caras_galadhon.png b/tools/gfx_search/images/focuses/GFX_goal_lth_caras_galadhon.png new file mode 100644 index 000000000..0b2245bf5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_caras_galadhon.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn.png b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn.png new file mode 100644 index 000000000..cda38987e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_edicts.png b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_edicts.png new file mode 100644 index 000000000..b6d6e9e3a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_edicts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_reforms.png b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_reforms.png new file mode 100644 index 000000000..141b38ac7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_reforms.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_supreme_leader.png b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_supreme_leader.png new file mode 100644 index 000000000..bd1c0e220 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_celeborn_supreme_leader.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_celebrate_trumpets_message.png b/tools/gfx_search/images/focuses/GFX_goal_lth_celebrate_trumpets_message.png new file mode 100644 index 000000000..c9dc2029b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_celebrate_trumpets_message.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_cerin_amroth.png b/tools/gfx_search/images/focuses/GFX_goal_lth_cerin_amroth.png new file mode 100644 index 000000000..3e92a825a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_cerin_amroth.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_cleanse_orcs_from_moria.png b/tools/gfx_search/images/focuses/GFX_goal_lth_cleanse_orcs_from_moria.png new file mode 100644 index 000000000..08bf374e3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_cleanse_orcs_from_moria.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_collect_taxes.png b/tools/gfx_search/images/focuses/GFX_goal_lth_collect_taxes.png new file mode 100644 index 000000000..e3e7a4237 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_collect_taxes.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_contain_mordor.png b/tools/gfx_search/images/focuses/GFX_goal_lth_contain_mordor.png new file mode 100644 index 000000000..1777af35d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_contain_mordor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_cooperation_and_stability.png b/tools/gfx_search/images/focuses/GFX_goal_lth_cooperation_and_stability.png new file mode 100644 index 000000000..d699cb785 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_cooperation_and_stability.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_defense.png b/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_defense.png new file mode 100644 index 000000000..1a49a99b3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_defense.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_sactions.png b/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_sactions.png new file mode 100644 index 000000000..54e8481d2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_coordinated_sactions.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_elrond.png new file mode 100644 index 000000000..98b904b30 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_quendi.png b/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_quendi.png new file mode 100644 index 000000000..88cd70f96 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_council_of_quendi.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_defense_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_defense_deal.png new file mode 100644 index 000000000..70c9072fe Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_defense_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_defense_guardians.png b/tools/gfx_search/images/focuses/GFX_goal_lth_defense_guardians.png new file mode 100644 index 000000000..54c6b741f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_defense_guardians.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_alliance.png b/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_alliance.png new file mode 100644 index 000000000..192a94c43 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_alliance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_perimeter_castle.png b/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_perimeter_castle.png new file mode 100644 index 000000000..4e6c30a13 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_defensive_perimeter_castle.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_demand_tribute.png b/tools/gfx_search/images/focuses/GFX_goal_lth_demand_tribute.png new file mode 100644 index 000000000..229a51ef1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_demand_tribute.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_depart_to_valinor_preemptive.png b/tools/gfx_search/images/focuses/GFX_goal_lth_depart_to_valinor_preemptive.png new file mode 100644 index 000000000..47cd06945 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_depart_to_valinor_preemptive.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_desperate_last_stand.png b/tools/gfx_search/images/focuses/GFX_goal_lth_desperate_last_stand.png new file mode 100644 index 000000000..6a4e5d081 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_desperate_last_stand.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_deterrence_castle.png b/tools/gfx_search/images/focuses/GFX_goal_lth_deterrence_castle.png new file mode 100644 index 000000000..2370017db Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_deterrence_castle.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_diplomacy_focus.png b/tools/gfx_search/images/focuses/GFX_goal_lth_diplomacy_focus.png new file mode 100644 index 000000000..02b4740ec Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_diplomacy_focus.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_discord_lecture.png b/tools/gfx_search/images/focuses/GFX_goal_lth_discord_lecture.png new file mode 100644 index 000000000..df528cdca Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_discord_lecture.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_dissolve_elven_nobility.png b/tools/gfx_search/images/focuses/GFX_goal_lth_dissolve_elven_nobility.png new file mode 100644 index 000000000..9be94159e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_dissolve_elven_nobility.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_dol_guldur_flag.png b/tools/gfx_search/images/focuses/GFX_goal_lth_dol_guldur_flag.png new file mode 100644 index 000000000..b3f8bc69f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_dol_guldur_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_dove_breaking_free.png b/tools/gfx_search/images/focuses/GFX_goal_lth_dove_breaking_free.png new file mode 100644 index 000000000..001a57e91 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_dove_breaking_free.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_dwarf_elf_handshake.png b/tools/gfx_search/images/focuses/GFX_goal_lth_dwarf_elf_handshake.png new file mode 100644 index 000000000..a7505c0aa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_dwarf_elf_handshake.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elden_days_tree.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elden_days_tree.png new file mode 100644 index 000000000..5fb005549 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elden_days_tree.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_election_ballot.png b/tools/gfx_search/images/focuses/GFX_goal_lth_election_ballot.png new file mode 100644 index 000000000..f771cdafa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_election_ballot.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elf_kneeling_to_orc.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elf_kneeling_to_orc.png new file mode 100644 index 000000000..4622aecfd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elf_kneeling_to_orc.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elf_shaking_hands_with_orc.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elf_shaking_hands_with_orc.png new file mode 100644 index 000000000..adef57d3c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elf_shaking_hands_with_orc.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elite_special_forces.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elite_special_forces.png new file mode 100644 index 000000000..b692d205d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elite_special_forces.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_alliance.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_alliance.png new file mode 100644 index 000000000..79669fe7e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_alliance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_aristocrats.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_aristocrats.png new file mode 100644 index 000000000..6c45c65f7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_aristocrats.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army.png new file mode 100644 index 000000000..4003ae10e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_dark.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_dark.png new file mode 100644 index 000000000..7ab6227a6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_dark.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_training.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_training.png new file mode 100644 index 000000000..3e7020357 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_army_training.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_cavalry.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_cavalry.png new file mode 100644 index 000000000..f12b9a8f8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_cavalry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_diplomacy_and_influence.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_diplomacy_and_influence.png new file mode 100644 index 000000000..e98e5af95 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_diplomacy_and_influence.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_dwarf_relations.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_dwarf_relations.png new file mode 100644 index 000000000..6c7d5a3f5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_dwarf_relations.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_divided.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_divided.png new file mode 100644 index 000000000..36532fe02 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_divided.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_united.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_united.png new file mode 100644 index 000000000..b8b93cee2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_factions_united.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_lords_consult.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_lords_consult.png new file mode 100644 index 000000000..f3d9c3464 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_lords_consult.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_party_celebrations.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_party_celebrations.png new file mode 100644 index 000000000..7591b30f3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_party_celebrations.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_riders_naith.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_riders_naith.png new file mode 100644 index 000000000..d36e67248 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_riders_naith.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_supremacy.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_supremacy.png new file mode 100644 index 000000000..d205926e6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_supremacy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_sword_and_bow.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_sword_and_bow.png new file mode 100644 index 000000000..b7099371f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_sword_and_bow.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elven_warrior_spear.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_warrior_spear.png new file mode 100644 index 000000000..9ae42decd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elven_warrior_spear.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elves_gala_cele_beacon_of_hope.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_gala_cele_beacon_of_hope.png new file mode 100644 index 000000000..3040bfee1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_gala_cele_beacon_of_hope.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elves_men_handshake.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_men_handshake.png new file mode 100644 index 000000000..21a84f5d5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_men_handshake.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elves_orcs_debate.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_orcs_debate.png new file mode 100644 index 000000000..5613e842f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_orcs_debate.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_elves_shaking_hands.png b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_shaking_hands.png new file mode 100644 index 000000000..d4585eb4f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_elves_shaking_hands.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_emissaries_guild.png b/tools/gfx_search/images/focuses/GFX_goal_lth_emissaries_guild.png new file mode 100644 index 000000000..f46fbc570 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_emissaries_guild.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_endure_the_darkness.png b/tools/gfx_search/images/focuses/GFX_goal_lth_endure_the_darkness.png new file mode 100644 index 000000000..7694bb9f0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_endure_the_darkness.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_equal_union.png b/tools/gfx_search/images/focuses/GFX_goal_lth_equal_union.png new file mode 100644 index 000000000..5e27a04aa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_equal_union.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_erebor_skull.png b/tools/gfx_search/images/focuses/GFX_goal_lth_erebor_skull.png new file mode 100644 index 000000000..4ba7593fe Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_erebor_skull.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_dominion.png b/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_dominion.png new file mode 100644 index 000000000..9347f635d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_dominion.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_wisdom.png b/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_wisdom.png new file mode 100644 index 000000000..158fb9a9d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_eternal_wisdom.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel.png b/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel.png new file mode 100644 index 000000000..b3869f412 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel_unleashed.png b/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel_unleashed.png new file mode 100644 index 000000000..c4ed40b3e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_evil_galadriel_unleashed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_executive_vigour.png b/tools/gfx_search/images/focuses/GFX_goal_lth_executive_vigour.png new file mode 100644 index 000000000..ba4e3f6f8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_executive_vigour.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_extend_citizenship.png b/tools/gfx_search/images/focuses/GFX_goal_lth_extend_citizenship.png new file mode 100644 index 000000000..1ad5761a6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_extend_citizenship.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_fate_of_mortals_death.png b/tools/gfx_search/images/focuses/GFX_goal_lth_fate_of_mortals_death.png new file mode 100644 index 000000000..f21a6ab9e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_fate_of_mortals_death.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_fellowship_of_ring.png b/tools/gfx_search/images/focuses/GFX_goal_lth_fellowship_of_ring.png new file mode 100644 index 000000000..f13507ade Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_fellowship_of_ring.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_festival_of_unity.png b/tools/gfx_search/images/focuses/GFX_goal_lth_festival_of_unity.png new file mode 100644 index 000000000..905d8a6ff Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_festival_of_unity.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_food_resource_storage.png b/tools/gfx_search/images/focuses/GFX_goal_lth_food_resource_storage.png new file mode 100644 index 000000000..aa6a7e0f5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_food_resource_storage.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_forsake_elves_kneeling.png b/tools/gfx_search/images/focuses/GFX_goal_lth_forsake_elves_kneeling.png new file mode 100644 index 000000000..531be3e60 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_forsake_elves_kneeling.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_fortifications_castle.png b/tools/gfx_search/images/focuses/GFX_goal_lth_fortifications_castle.png new file mode 100644 index 000000000..f8a7f464d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_fortifications_castle.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_friendly_skeleton.png b/tools/gfx_search/images/focuses/GFX_goal_lth_friendly_skeleton.png new file mode 100644 index 000000000..360a67b9b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_friendly_skeleton.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_frodo_valinor.png b/tools/gfx_search/images/focuses/GFX_goal_lth_frodo_valinor.png new file mode 100644 index 000000000..68bbba3e6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_frodo_valinor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel.png new file mode 100644 index 000000000..53f8ed223 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_eorl_rohan.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_eorl_rohan.png new file mode 100644 index 000000000..d5699f374 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_eorl_rohan.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_sauron_alliance.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_sauron_alliance.png new file mode 100644 index 000000000..3e74d5ac2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_and_sauron_alliance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_accord.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_accord.png new file mode 100644 index 000000000..280d62eda Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_accord.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy.png new file mode 100644 index 000000000..aa62e204d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_celeborn_harmonic_ascendancy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_edicts.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_edicts.png new file mode 100644 index 000000000..645ca446f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_edicts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_fair_as_the_sea.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_fair_as_the_sea.png new file mode 100644 index 000000000..97ad86baf Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_fair_as_the_sea.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_hourglass_immortality.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_hourglass_immortality.png new file mode 100644 index 000000000..ba6134d45 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_hourglass_immortality.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_mirror.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_mirror.png new file mode 100644 index 000000000..9706a2403 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_mirror.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_powers.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_powers.png new file mode 100644 index 000000000..b5833a72f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_powers.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_queen.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_queen.png new file mode 100644 index 000000000..0cc1d5c2d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_queen.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_resisting_darkness.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_resisting_darkness.png new file mode 100644 index 000000000..f1512d1ee Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_resisting_darkness.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale.png new file mode 100644 index 000000000..a940a440e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_beorn_vale.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf.png b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf.png new file mode 100644 index 000000000..c6a97b2ce Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_galadriel_shaking_hands_with_thranduil_elf.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_generic_archers.png b/tools/gfx_search/images/focuses/GFX_goal_lth_generic_archers.png new file mode 100644 index 000000000..2969df2f9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_generic_archers.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_glowing_elven_sword_blade.png b/tools/gfx_search/images/focuses/GFX_goal_lth_glowing_elven_sword_blade.png new file mode 100644 index 000000000..b3488729c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_glowing_elven_sword_blade.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_gondor_skull.png b/tools/gfx_search/images/focuses/GFX_goal_lth_gondor_skull.png new file mode 100644 index 000000000..bb5f36f99 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_gondor_skull.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_grain_dole.png b/tools/gfx_search/images/focuses/GFX_goal_lth_grain_dole.png new file mode 100644 index 000000000..1dbcdb106 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_grain_dole.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_grey_company_warriors.png b/tools/gfx_search/images/focuses/GFX_goal_lth_grey_company_warriors.png new file mode 100644 index 000000000..f03a6eb4e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_grey_company_warriors.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_haldir_elves_ring_fellowship.png b/tools/gfx_search/images/focuses/GFX_goal_lth_haldir_elves_ring_fellowship.png new file mode 100644 index 000000000..d58e4d5de Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_haldir_elves_ring_fellowship.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_beren_luthien.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_beren_luthien.png new file mode 100644 index 000000000..127532be7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_beren_luthien.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_cooperation.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_cooperation.png new file mode 100644 index 000000000..2f6e3d868 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_cooperation.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_dior.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_dior.png new file mode 100644 index 000000000..8574fdecd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_dior.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_earendil.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_earendil.png new file mode 100644 index 000000000..0c4fe01a2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_earendil.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elrond.png new file mode 100644 index 000000000..ccfd2f969 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elros.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elros.png new file mode 100644 index 000000000..cb2c6791f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_elros.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_emblem.png new file mode 100644 index 000000000..fd6f7ee4c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_peredhil_legends_trumpets.png b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_peredhil_legends_trumpets.png new file mode 100644 index 000000000..f7b58be4a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_halfelves_peredhil_legends_trumpets.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hand_grabbing_crown.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_grabbing_crown.png new file mode 100644 index 000000000..af42801d7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_grabbing_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hand_taking_ring.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_taking_ring.png new file mode 100644 index 000000000..e11229787 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_taking_ring.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hand_with_flower_nature.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_with_flower_nature.png new file mode 100644 index 000000000..5961f7bb5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hand_with_flower_nature.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hands_asking_for_help_aid_weary.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hands_asking_for_help_aid_weary.png new file mode 100644 index 000000000..6e2a942e3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hands_asking_for_help_aid_weary.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_handshake_cooperation.png b/tools/gfx_search/images/focuses/GFX_goal_lth_handshake_cooperation.png new file mode 100644 index 000000000..952d5b474 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_handshake_cooperation.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_harmony_unity.png b/tools/gfx_search/images/focuses/GFX_goal_lth_harmony_unity.png new file mode 100644 index 000000000..3ab57bb43 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_harmony_unity.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hegemony_crown.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hegemony_crown.png new file mode 100644 index 000000000..6012c6621 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hegemony_crown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_hidden_elven_realm.png b/tools/gfx_search/images/focuses/GFX_goal_lth_hidden_elven_realm.png new file mode 100644 index 000000000..a41109424 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_hidden_elven_realm.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_invasion_northbound.png b/tools/gfx_search/images/focuses/GFX_goal_lth_invasion_northbound.png new file mode 100644 index 000000000..b41a4e03d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_invasion_northbound.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_investment.png b/tools/gfx_search/images/focuses/GFX_goal_lth_investment.png new file mode 100644 index 000000000..b9e464d1a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_investment.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_keep_elves_safe.png b/tools/gfx_search/images/focuses/GFX_goal_lth_keep_elves_safe.png new file mode 100644 index 000000000..ae7935da8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_keep_elves_safe.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_knowledge_books_guild.png b/tools/gfx_search/images/focuses/GFX_goal_lth_knowledge_books_guild.png new file mode 100644 index 000000000..c5961093d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_knowledge_books_guild.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_labour_blacksmith.png b/tools/gfx_search/images/focuses/GFX_goal_lth_labour_blacksmith.png new file mode 100644 index 000000000..6ef003ac6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_labour_blacksmith.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_last_eldar.png b/tools/gfx_search/images/focuses/GFX_goal_lth_last_eldar.png new file mode 100644 index 000000000..a76e7d908 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_last_eldar.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_leave_to_valinor.png b/tools/gfx_search/images/focuses/GFX_goal_lth_leave_to_valinor.png new file mode 100644 index 000000000..38a5b1048 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_leave_to_valinor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_library_caras_galadhon.png b/tools/gfx_search/images/focuses/GFX_goal_lth_library_caras_galadhon.png new file mode 100644 index 000000000..da21b06b7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_library_caras_galadhon.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_limited_intervention.png b/tools/gfx_search/images/focuses/GFX_goal_lth_limited_intervention.png new file mode 100644 index 000000000..51557d190 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_limited_intervention.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lindon_cirdan.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lindon_cirdan.png new file mode 100644 index 000000000..44bc67ab5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lindon_cirdan.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_local_autonomy.png b/tools/gfx_search/images/focuses/GFX_goal_lth_local_autonomy.png new file mode 100644 index 000000000..c22ebd1c1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_local_autonomy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_locked_up_borders_sealed.png b/tools/gfx_search/images/focuses/GFX_goal_lth_locked_up_borders_sealed.png new file mode 100644 index 000000000..8f6ebfbd8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_locked_up_borders_sealed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_anduin_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_anduin_deal.png new file mode 100644 index 000000000..741d62cea Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_anduin_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_erebor_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_erebor_deal.png new file mode 100644 index 000000000..177056005 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_erebor_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_flag.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_flag.png new file mode 100644 index 000000000..06e121e7b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal.png new file mode 100644 index 000000000..173d42c3e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal_2.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal_2.png new file mode 100644 index 000000000..d311ca963 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_gondor_deal_2.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_moria_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_moria_deal.png new file mode 100644 index 000000000..16ad36046 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_moria_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rivendell_isengard_union.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rivendell_isengard_union.png new file mode 100644 index 000000000..c3b13f1fc Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rivendell_isengard_union.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_deal.png new file mode 100644 index 000000000..1358ce206 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_ties.png b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_ties.png new file mode 100644 index 000000000..9fc6092f9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_lothlorien_rohan_ties.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_mallorn_tree_planning.png b/tools/gfx_search/images/focuses/GFX_goal_lth_mallorn_tree_planning.png new file mode 100644 index 000000000..c8024054c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_mallorn_tree_planning.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_map_measures.png b/tools/gfx_search/images/focuses/GFX_goal_lth_map_measures.png new file mode 100644 index 000000000..d87116785 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_map_measures.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_meritocracy_advancement.png b/tools/gfx_search/images/focuses/GFX_goal_lth_meritocracy_advancement.png new file mode 100644 index 000000000..201b4379e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_meritocracy_advancement.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_enchanted_basin.png b/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_enchanted_basin.png new file mode 100644 index 000000000..73d9cc5a6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_enchanted_basin.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_upgrade.png b/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_upgrade.png new file mode 100644 index 000000000..cd6de9d68 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_mirror_upgrade.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_moria_flag.png b/tools/gfx_search/images/focuses/GFX_goal_lth_moria_flag.png new file mode 100644 index 000000000..aaa932b46 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_moria_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_mortal_skeleton_pleading.png b/tools/gfx_search/images/focuses/GFX_goal_lth_mortal_skeleton_pleading.png new file mode 100644 index 000000000..77f1167d3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_mortal_skeleton_pleading.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_elven_warrior.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_elven_warrior.png new file mode 100644 index 000000000..77e6dee05 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_elven_warrior.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_emblem.png new file mode 100644 index 000000000..c7153f7df Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_haldir.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_haldir.png new file mode 100644 index 000000000..b2354ad81 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_haldir.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_hands.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_hands.png new file mode 100644 index 000000000..182663f37 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_hands.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_mallorn_trees.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_mallorn_trees.png new file mode 100644 index 000000000..83868397c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_mallorn_trees.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_map.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_map.png new file mode 100644 index 000000000..f630993cf Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_map.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_nimrodel_song.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_nimrodel_song.png new file mode 100644 index 000000000..f7c6ae59d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nandor_nimrodel_song.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_eagles.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_eagles.png new file mode 100644 index 000000000..262a830a1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_eagles.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_fellbeast.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_fellbeast.png new file mode 100644 index 000000000..23c18e8e5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_fellbeast.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_forest_between.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_forest_between.png new file mode 100644 index 000000000..dbbd2d32e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_forest_between.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_great_beasts.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_great_beasts.png new file mode 100644 index 000000000..764b5117e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_great_beasts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders.png new file mode 100644 index 000000000..a193479ea Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders_of_ungoliant.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders_of_ungoliant.png new file mode 100644 index 000000000..336ea671b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_spiders_of_ungoliant.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nature_treebeard.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_treebeard.png new file mode 100644 index 000000000..57efffbbb Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nature_treebeard.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nazghul_ringwraith_on_fire.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nazghul_ringwraith_on_fire.png new file mode 100644 index 000000000..bab437615 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nazghul_ringwraith_on_fire.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_enigma.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_enigma.png new file mode 100644 index 000000000..7d626ca2a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_enigma.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_one_ring_merge.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_one_ring_merge.png new file mode 100644 index 000000000..caab1e9bd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_one_ring_merge.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_ring_enchantments.png b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_ring_enchantments.png new file mode 100644 index 000000000..efa34c65f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_nenya_ring_enchantments.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_commemorate_gondolin.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_commemorate_gondolin.png new file mode 100644 index 000000000..bd9476f3d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_commemorate_gondolin.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_elven_warrior.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_elven_warrior.png new file mode 100644 index 000000000..a2c6e35b0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_elven_warrior.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_emblem.png new file mode 100644 index 000000000..41edf1722 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_galadriel.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_galadriel.png new file mode 100644 index 000000000..ec93c1d08 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_galadriel.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_golden_book_open_knowledge.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_golden_book_open_knowledge.png new file mode 100644 index 000000000..28183518d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_golden_book_open_knowledge.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_metalwork.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_metalwork.png new file mode 100644 index 000000000..2da7cf1a8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_metalwork.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_purity.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_purity.png new file mode 100644 index 000000000..44086a841 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_purity.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_queens_guard.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_queens_guard.png new file mode 100644 index 000000000..b6e5ffee8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_queens_guard.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_reawakening.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_reawakening.png new file mode 100644 index 000000000..fc6d30308 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_reawakening.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_silmarils.png b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_silmarils.png new file mode 100644 index 000000000..6533e379b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_noldor_silmarils.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_oath_of_feanor.png b/tools/gfx_search/images/focuses/GFX_goal_lth_oath_of_feanor.png new file mode 100644 index 000000000..1977bc8c6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_oath_of_feanor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_one_ring_shadow.png b/tools/gfx_search/images/focuses/GFX_goal_lth_one_ring_shadow.png new file mode 100644 index 000000000..a5c2cc9f9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_one_ring_shadow.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_open_book.png b/tools/gfx_search/images/focuses/GFX_goal_lth_open_book.png new file mode 100644 index 000000000..2bd1c4b63 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_open_book.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_open_books_culture.png b/tools/gfx_search/images/focuses/GFX_goal_lth_open_books_culture.png new file mode 100644 index 000000000..476063008 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_open_books_culture.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_orc_bound_by_chains.png b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_bound_by_chains.png new file mode 100644 index 000000000..278fe1fc8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_bound_by_chains.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_orc_contained_resistance.png b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_contained_resistance.png new file mode 100644 index 000000000..b46fc73df Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_contained_resistance.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_orc_prisoner_vivisection.png b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_prisoner_vivisection.png new file mode 100644 index 000000000..0b20812d2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_prisoner_vivisection.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_orc_servitude.png b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_servitude.png new file mode 100644 index 000000000..8f963c19d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_servitude.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_orc_warrior.png b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_warrior.png new file mode 100644 index 000000000..c7ce2f1e9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_orc_warrior.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_other_people_association.png b/tools/gfx_search/images/focuses/GFX_goal_lth_other_people_association.png new file mode 100644 index 000000000..43715c367 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_other_people_association.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_peasantry.png b/tools/gfx_search/images/focuses/GFX_goal_lth_peasantry.png new file mode 100644 index 000000000..ad2fa8724 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_peasantry.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_play_for_time_hourglass.png b/tools/gfx_search/images/focuses/GFX_goal_lth_play_for_time_hourglass.png new file mode 100644 index 000000000..69fa8fb66 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_play_for_time_hourglass.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_powers_of_nenya.png b/tools/gfx_search/images/focuses/GFX_goal_lth_powers_of_nenya.png new file mode 100644 index 000000000..f71ccdbf2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_powers_of_nenya.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_proposals_and_resolutions.png b/tools/gfx_search/images/focuses/GFX_goal_lth_proposals_and_resolutions.png new file mode 100644 index 000000000..08adf0585 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_proposals_and_resolutions.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_protect_at_any_cost.png b/tools/gfx_search/images/focuses/GFX_goal_lth_protect_at_any_cost.png new file mode 100644 index 000000000..917a42a38 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_protect_at_any_cost.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_provincial_councils.png b/tools/gfx_search/images/focuses/GFX_goal_lth_provincial_councils.png new file mode 100644 index 000000000..a2cfc7b2c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_provincial_councils.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_raised_fist_blue.png b/tools/gfx_search/images/focuses/GFX_goal_lth_raised_fist_blue.png new file mode 100644 index 000000000..804853a86 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_raised_fist_blue.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_remove_borders.png b/tools/gfx_search/images/focuses/GFX_goal_lth_remove_borders.png new file mode 100644 index 000000000..c358ba24f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_remove_borders.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_research_cooperation.png b/tools/gfx_search/images/focuses/GFX_goal_lth_research_cooperation.png new file mode 100644 index 000000000..bf4a88d1f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_research_cooperation.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_revolutionary_flag_lothlorien.png b/tools/gfx_search/images/focuses/GFX_goal_lth_revolutionary_flag_lothlorien.png new file mode 100644 index 000000000..5586cfd3a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_revolutionary_flag_lothlorien.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya.png b/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya.png new file mode 100644 index 000000000..8c14852b5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya_archive.png b/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya_archive.png new file mode 100644 index 000000000..c7569595c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_ring_nenya_archive.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_river_anduin.png b/tools/gfx_search/images/focuses/GFX_goal_lth_river_anduin.png new file mode 100644 index 000000000..c50435f9d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_river_anduin.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships.png b/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships.png new file mode 100644 index 000000000..1d92ace0c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships_navigation.png b/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships_navigation.png new file mode 100644 index 000000000..d9e29d598 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_river_ships_navigation.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sacred_mallorn_trees.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sacred_mallorn_trees.png new file mode 100644 index 000000000..497692cb4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sacred_mallorn_trees.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_safe_haven_defense.png b/tools/gfx_search/images/focuses/GFX_goal_lth_safe_haven_defense.png new file mode 100644 index 000000000..3e65f813f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_safe_haven_defense.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_safeguard_food_bread.png b/tools/gfx_search/images/focuses/GFX_goal_lth_safeguard_food_bread.png new file mode 100644 index 000000000..86708ecfb Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_safeguard_food_bread.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_eye_contained_war.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_eye_contained_war.png new file mode 100644 index 000000000..c690fc7ce Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_eye_contained_war.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_unleashed_with_ring.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_unleashed_with_ring.png new file mode 100644 index 000000000..456ab3d3b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sauron_unleashed_with_ring.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_schism_celeborn_exiled.png b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_celeborn_exiled.png new file mode 100644 index 000000000..13c9a0ef0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_celeborn_exiled.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_schism_galadriels_farewell.png b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_galadriels_farewell.png new file mode 100644 index 000000000..0f28d35e7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_galadriels_farewell.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_schism_mended.png b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_mended.png new file mode 100644 index 000000000..281e82524 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_mended.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_schism_separated.png b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_separated.png new file mode 100644 index 000000000..9814ca415 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_schism_separated.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_scribe_knowledge.png b/tools/gfx_search/images/focuses/GFX_goal_lth_scribe_knowledge.png new file mode 100644 index 000000000..32e09167c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_scribe_knowledge.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_select_advisors.png b/tools/gfx_search/images/focuses/GFX_goal_lth_select_advisors.png new file mode 100644 index 000000000..43932273c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_select_advisors.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_shared_cause_hands.png b/tools/gfx_search/images/focuses/GFX_goal_lth_shared_cause_hands.png new file mode 100644 index 000000000..dc2ad18b9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_shared_cause_hands.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_shared_research_knowledge.png b/tools/gfx_search/images/focuses/GFX_goal_lth_shared_research_knowledge.png new file mode 100644 index 000000000..019e3d0c5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_shared_research_knowledge.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_shattered_crown_red.png b/tools/gfx_search/images/focuses/GFX_goal_lth_shattered_crown_red.png new file mode 100644 index 000000000..2b9d7eeac Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_shattered_crown_red.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_shield_aegis_of_light.png b/tools/gfx_search/images/focuses/GFX_goal_lth_shield_aegis_of_light.png new file mode 100644 index 000000000..20efc1e03 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_shield_aegis_of_light.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_silverthorn_arrows.png b/tools/gfx_search/images/focuses/GFX_goal_lth_silverthorn_arrows.png new file mode 100644 index 000000000..0b4163140 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_silverthorn_arrows.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_celeborn.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_celeborn.png new file mode 100644 index 000000000..86c3fb528 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_celeborn.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_crown_of_doriath.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_crown_of_doriath.png new file mode 100644 index 000000000..ca8189082 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_crown_of_doriath.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_emblem.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_emblem.png new file mode 100644 index 000000000..a430b3465 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_emblem.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_lothlorien_lindon_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_lothlorien_lindon_treaty.png new file mode 100644 index 000000000..61019edc8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_lothlorien_lindon_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_melian.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_melian.png new file mode 100644 index 000000000..dc56fdeea Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_melian.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_noldor_deal.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_noldor_deal.png new file mode 100644 index 000000000..0b2342d4e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_noldor_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_pathstalkers.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_pathstalkers.png new file mode 100644 index 000000000..1f541f74d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_pathstalkers.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_thingol.png b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_thingol.png new file mode 100644 index 000000000..367749737 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_sindar_thingol.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_skulls_with_helmets.png b/tools/gfx_search/images/focuses/GFX_goal_lth_skulls_with_helmets.png new file mode 100644 index 000000000..0d1ed08e6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_skulls_with_helmets.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_taming_the_wild.png b/tools/gfx_search/images/focuses/GFX_goal_lth_taming_the_wild.png new file mode 100644 index 000000000..8eb4bc2b7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_taming_the_wild.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_target_lindon_cirdan.png b/tools/gfx_search/images/focuses/GFX_goal_lth_target_lindon_cirdan.png new file mode 100644 index 000000000..61c8c127c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_target_lindon_cirdan.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_target_mirkwood_thranduil.png b/tools/gfx_search/images/focuses/GFX_goal_lth_target_mirkwood_thranduil.png new file mode 100644 index 000000000..d495bc763 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_target_mirkwood_thranduil.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_target_rivendell_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_lth_target_rivendell_elrond.png new file mode 100644 index 000000000..3c30959b9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_target_rivendell_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_tax_collection_reformed.png b/tools/gfx_search/images/focuses/GFX_goal_lth_tax_collection_reformed.png new file mode 100644 index 000000000..d882ab9f4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_tax_collection_reformed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_defense.png b/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_defense.png new file mode 100644 index 000000000..c11898764 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_defense.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_integration.png b/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_integration.png new file mode 100644 index 000000000..6e2f00b43 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_territorial_integration.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_thranduil_diplomatic_pressure.png b/tools/gfx_search/images/focuses/GFX_goal_lth_thranduil_diplomatic_pressure.png new file mode 100644 index 000000000..d0877fdd3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_thranduil_diplomatic_pressure.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_torn_treaty_paper.png b/tools/gfx_search/images/focuses/GFX_goal_lth_torn_treaty_paper.png new file mode 100644 index 000000000..45a868461 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_torn_treaty_paper.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_total_isolation_tower.png b/tools/gfx_search/images/focuses/GFX_goal_lth_total_isolation_tower.png new file mode 100644 index 000000000..ed8893048 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_total_isolation_tower.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_trade_agreements.png b/tools/gfx_search/images/focuses/GFX_goal_lth_trade_agreements.png new file mode 100644 index 000000000..50ddc50c0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_trade_agreements.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_executive_power.png b/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_executive_power.png new file mode 100644 index 000000000..0255b5882 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_executive_power.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_invitation.png b/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_invitation.png new file mode 100644 index 000000000..856a2c994 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_treaty_invitation.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_twilight_garden.png b/tools/gfx_search/images/focuses/GFX_goal_lth_twilight_garden.png new file mode 100644 index 000000000..ad25e5451 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_twilight_garden.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_twin_hearts.png b/tools/gfx_search/images/focuses/GFX_goal_lth_twin_hearts.png new file mode 100644 index 000000000..293f2c1de Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_twin_hearts.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_untreaded_path.png b/tools/gfx_search/images/focuses/GFX_goal_lth_untreaded_path.png new file mode 100644 index 000000000..a7b495367 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_untreaded_path.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_urban_councils.png b/tools/gfx_search/images/focuses/GFX_goal_lth_urban_councils.png new file mode 100644 index 000000000..09bca08f5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_urban_councils.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_uruk_hai_orc.png b/tools/gfx_search/images/focuses/GFX_goal_lth_uruk_hai_orc.png new file mode 100644 index 000000000..ee2743c80 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_uruk_hai_orc.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_vales_of_anduin_offer_chain.png b/tools/gfx_search/images/focuses/GFX_goal_lth_vales_of_anduin_offer_chain.png new file mode 100644 index 000000000..04edd41af Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_vales_of_anduin_offer_chain.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_waters_of_healing.png b/tools/gfx_search/images/focuses/GFX_goal_lth_waters_of_healing.png new file mode 100644 index 000000000..3b63ed20d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_waters_of_healing.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_weapon_sword_forging.png b/tools/gfx_search/images/focuses/GFX_goal_lth_weapon_sword_forging.png new file mode 100644 index 000000000..1919853cc Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_weapon_sword_forging.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_weapons_research.png b/tools/gfx_search/images/focuses/GFX_goal_lth_weapons_research.png new file mode 100644 index 000000000..c458e7c7b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_weapons_research.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_eagles.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_eagles.png new file mode 100644 index 000000000..b975ac94f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_eagles.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_elrond.png new file mode 100644 index 000000000..ac2ca14b8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_fleet.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_fleet.png new file mode 100644 index 000000000..adc248f2a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_fleet.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_galadriel.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_galadriel.png new file mode 100644 index 000000000..0558f5146 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_galadriel.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_gandalf.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_gandalf.png new file mode 100644 index 000000000..c99a8e2fa Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_gandalf.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_meeting.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_meeting.png new file mode 100644 index 000000000..604ce78b3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_meeting.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman.png new file mode 100644 index 000000000..be1625738 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman_with_palantir.png b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman_with_palantir.png new file mode 100644 index 000000000..83f46dfff Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_white_council_saruman_with_palantir.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_lth_yavanna.png b/tools/gfx_search/images/focuses/GFX_goal_lth_yavanna.png new file mode 100644 index 000000000..2ffd7bd54 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_lth_yavanna.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_meet_with_gandalf.png b/tools/gfx_search/images/focuses/GFX_goal_meet_with_gandalf.png new file mode 100644 index 000000000..f1e9f74c6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_meet_with_gandalf.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mir_deal_with_the_spiders.png b/tools/gfx_search/images/focuses/GFX_goal_mir_deal_with_the_spiders.png new file mode 100644 index 000000000..18f1a0692 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mir_deal_with_the_spiders.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mir_radagast_the_brown.png b/tools/gfx_search/images/focuses/GFX_goal_mir_radagast_the_brown.png new file mode 100644 index 000000000..ae53f5153 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mir_radagast_the_brown.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mir_spider_anarchy.png b/tools/gfx_search/images/focuses/GFX_goal_mir_spider_anarchy.png new file mode 100644 index 000000000..64346c255 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mir_spider_anarchy.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mir_thranduil.png b/tools/gfx_search/images/focuses/GFX_goal_mir_thranduil.png new file mode 100644 index 000000000..f684aa947 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mir_thranduil.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_moa_balrog.png b/tools/gfx_search/images/focuses/GFX_goal_moa_balrog.png new file mode 100644 index 000000000..d9e7d4d3a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_moa_balrog.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_azog_orc_revolt.png b/tools/gfx_search/images/focuses/GFX_goal_mor_azog_orc_revolt.png new file mode 100644 index 000000000..85f5526d6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_azog_orc_revolt.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_dark_dol_guldur_fortress.png b/tools/gfx_search/images/focuses/GFX_goal_mor_dark_dol_guldur_fortress.png new file mode 100644 index 000000000..889712281 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_dark_dol_guldur_fortress.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_dol_guldur_flag.png b/tools/gfx_search/images/focuses/GFX_goal_mor_dol_guldur_flag.png new file mode 100644 index 000000000..77bb9f36a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_dol_guldur_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_encroach_on_ithilien.png b/tools/gfx_search/images/focuses/GFX_goal_mor_encroach_on_ithilien.png new file mode 100644 index 000000000..b9b944022 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_encroach_on_ithilien.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_erebor_flag.png b/tools/gfx_search/images/focuses/GFX_goal_mor_erebor_flag.png new file mode 100644 index 000000000..380c1d07c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_erebor_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_escalate_the_attacks.png b/tools/gfx_search/images/focuses/GFX_goal_mor_escalate_the_attacks.png new file mode 100644 index 000000000..744970a28 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_escalate_the_attacks.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_golum.png b/tools/gfx_search/images/focuses/GFX_goal_mor_golum.png new file mode 100644 index 000000000..b2fe34c15 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_golum.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_grapes.png b/tools/gfx_search/images/focuses/GFX_goal_mor_grapes.png new file mode 100644 index 000000000..bac9b5a5a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_grapes.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_ithilien_encroach_landgrab.png b/tools/gfx_search/images/focuses/GFX_goal_mor_ithilien_encroach_landgrab.png new file mode 100644 index 000000000..712060765 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_ithilien_encroach_landgrab.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_meat_back_skulls_knife.png b/tools/gfx_search/images/focuses/GFX_goal_mor_meat_back_skulls_knife.png new file mode 100644 index 000000000..603319fbb Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_meat_back_skulls_knife.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_mordor_landscape.png b/tools/gfx_search/images/focuses/GFX_goal_mor_mordor_landscape.png new file mode 100644 index 000000000..cd35eff66 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_mordor_landscape.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_nazgul_ringwraiths.png b/tools/gfx_search/images/focuses/GFX_goal_mor_nazgul_ringwraiths.png new file mode 100644 index 000000000..024c02e4e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_nazgul_ringwraiths.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_second_wave.png b/tools/gfx_search/images/focuses/GFX_goal_mor_second_wave.png new file mode 100644 index 000000000..d7f72fb28 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_second_wave.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_servant_of_melkor_morgoth.png b/tools/gfx_search/images/focuses/GFX_goal_mor_servant_of_melkor_morgoth.png new file mode 100644 index 000000000..c92ae0af7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_servant_of_melkor_morgoth.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_tower_of_barad_dur.png b/tools/gfx_search/images/focuses/GFX_goal_mor_tower_of_barad_dur.png new file mode 100644 index 000000000..b42a1d49a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_tower_of_barad_dur.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_troll_warriors.png b/tools/gfx_search/images/focuses/GFX_goal_mor_troll_warriors.png new file mode 100644 index 000000000..b26f2a3cf Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_troll_warriors.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dale.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dale.png new file mode 100644 index 000000000..f605449a6 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dale.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dorwinion.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dorwinion.png new file mode 100644 index 000000000..afe92afa3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_dorwinion.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_erebor.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_erebor.png new file mode 100644 index 000000000..e0343390d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_erebor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_gondor.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_gondor.png new file mode 100644 index 000000000..26dd2e648 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_gondor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_harad.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_harad.png new file mode 100644 index 000000000..b33050fb3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_harad.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rhun.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rhun.png new file mode 100644 index 000000000..a6a00f108 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rhun.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rohan.png b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rohan.png new file mode 100644 index 000000000..c5873b286 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mor_wargoal_rohan.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mordor_deal.png b/tools/gfx_search/images/focuses/GFX_goal_mordor_deal.png new file mode 100644 index 000000000..15bc2a338 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mordor_deal.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_mordor_flag.png b/tools/gfx_search/images/focuses/GFX_goal_mordor_flag.png new file mode 100644 index 000000000..0c6d03c8c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_mordor_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_orthanc_destroyed.png b/tools/gfx_search/images/focuses/GFX_goal_orthanc_destroyed.png new file mode 100644 index 000000000..86166ccc0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_orthanc_destroyed.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rangers_of_the_north.png b/tools/gfx_search/images/focuses/GFX_goal_rangers_of_the_north.png new file mode 100644 index 000000000..389c70ea5 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rangers_of_the_north.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_resource_wood.png b/tools/gfx_search/images/focuses/GFX_goal_resource_wood.png new file mode 100644 index 000000000..d6cb8e793 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_resource_wood.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_dale_flag.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_dale_flag.png new file mode 100644 index 000000000..4a101ed8e Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_dale_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_dorwinion_flag.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_dorwinion_flag.png new file mode 100644 index 000000000..19896d53d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_dorwinion_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_nazghul_ringwraith_khamul.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_nazghul_ringwraith_khamul.png new file mode 100644 index 000000000..d773231c7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_nazghul_ringwraith_khamul.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_rhun_civil_war.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_rhun_civil_war.png new file mode 100644 index 000000000..6ed9fa701 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_rhun_civil_war.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_the_blue_wizards.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_the_blue_wizards.png new file mode 100644 index 000000000..487bcc519 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_the_blue_wizards.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_rhu_wargoal_mordor.png b/tools/gfx_search/images/focuses/GFX_goal_rhu_wargoal_mordor.png new file mode 100644 index 000000000..ed581a84a Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_rhu_wargoal_mordor.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_riv_council_of_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_riv_council_of_elrond.png new file mode 100644 index 000000000..8cb21cd2d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_riv_council_of_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_riv_elrond.png b/tools/gfx_search/images/focuses/GFX_goal_riv_elrond.png new file mode 100644 index 000000000..65dfc270d Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_riv_elrond.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_riv_elrond_ring_vilya.png b/tools/gfx_search/images/focuses/GFX_goal_riv_elrond_ring_vilya.png new file mode 100644 index 000000000..910cf9488 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_riv_elrond_ring_vilya.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_riv_reforge_blade_of_narsil.png b/tools/gfx_search/images/focuses/GFX_goal_riv_reforge_blade_of_narsil.png new file mode 100644 index 000000000..e1147efb4 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_riv_reforge_blade_of_narsil.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_allow_gandalf_into_rohan.png b/tools/gfx_search/images/focuses/GFX_goal_roh_allow_gandalf_into_rohan.png new file mode 100644 index 000000000..bf959dabd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_allow_gandalf_into_rohan.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_edoras.png b/tools/gfx_search/images/focuses/GFX_goal_roh_edoras.png new file mode 100644 index 000000000..0fc3938cd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_edoras.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_eomer.png b/tools/gfx_search/images/focuses/GFX_goal_roh_eomer.png new file mode 100644 index 000000000..241f47f67 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_eomer.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_eowyn_sorrow.png b/tools/gfx_search/images/focuses/GFX_goal_roh_eowyn_sorrow.png new file mode 100644 index 000000000..23bb115d0 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_eowyn_sorrow.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_grima_wormtongue.png b/tools/gfx_search/images/focuses/GFX_goal_roh_grima_wormtongue.png new file mode 100644 index 000000000..f77f710db Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_grima_wormtongue.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep.png b/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep.png new file mode 100644 index 000000000..85093fdb2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep_weakness.png b/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep_weakness.png new file mode 100644 index 000000000..11eef56dd Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_helms_deep_weakness.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_rohan_flag.png b/tools/gfx_search/images/focuses/GFX_goal_roh_rohan_flag.png new file mode 100644 index 000000000..1d4d50a4c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_rohan_flag.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_sick_theoden.png b/tools/gfx_search/images/focuses/GFX_goal_roh_sick_theoden.png new file mode 100644 index 000000000..609f143e2 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_sick_theoden.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_theodred.png b/tools/gfx_search/images/focuses/GFX_goal_roh_theodred.png new file mode 100644 index 000000000..4d9debc66 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_theodred.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_trust_gandalf.png b/tools/gfx_search/images/focuses/GFX_goal_roh_trust_gandalf.png new file mode 100644 index 000000000..9aee33022 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_trust_gandalf.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_roh_trust_saruman.png b/tools/gfx_search/images/focuses/GFX_goal_roh_trust_saruman.png new file mode 100644 index 000000000..9df4a32b1 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_roh_trust_saruman.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_saruman_enedwaith_tribes.png b/tools/gfx_search/images/focuses/GFX_goal_saruman_enedwaith_tribes.png new file mode 100644 index 000000000..5c78534f7 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_saruman_enedwaith_tribes.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_saruman_with_palantir.png b/tools/gfx_search/images/focuses/GFX_goal_saruman_with_palantir.png new file mode 100644 index 000000000..38fb6a1cf Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_saruman_with_palantir.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_sauron_eye.png b/tools/gfx_search/images/focuses/GFX_goal_sauron_eye.png new file mode 100644 index 000000000..bee791fea Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_sauron_eye.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_skull_treaty.png b/tools/gfx_search/images/focuses/GFX_goal_skull_treaty.png new file mode 100644 index 000000000..43c3f38cc Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_skull_treaty.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_stop_melkor_worship.png b/tools/gfx_search/images/focuses/GFX_goal_stop_melkor_worship.png new file mode 100644 index 000000000..ebfe6fd3b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_stop_melkor_worship.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_support_belligerent.png b/tools/gfx_search/images/focuses/GFX_goal_support_belligerent.png new file mode 100644 index 000000000..55026e565 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_support_belligerent.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_support_cooperative.png b/tools/gfx_search/images/focuses/GFX_goal_support_cooperative.png new file mode 100644 index 000000000..3d2e8c73f Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_support_cooperative.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_support_revolutionary.png b/tools/gfx_search/images/focuses/GFX_goal_support_revolutionary.png new file mode 100644 index 000000000..f9cae0d55 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_support_revolutionary.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_support_the_left_right.png b/tools/gfx_search/images/focuses/GFX_goal_support_the_left_right.png new file mode 100644 index 000000000..a5931d7d3 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_support_the_left_right.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_support_unaligned.png b/tools/gfx_search/images/focuses/GFX_goal_support_unaligned.png new file mode 100644 index 000000000..59be4390c Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_support_unaligned.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_the_one_ring.png b/tools/gfx_search/images/focuses/GFX_goal_the_one_ring.png new file mode 100644 index 000000000..710c83cf8 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_the_one_ring.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_union_of_working_orc_class.png b/tools/gfx_search/images/focuses/GFX_goal_union_of_working_orc_class.png new file mode 100644 index 000000000..230c3b843 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_union_of_working_orc_class.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_unleash_sauron.png b/tools/gfx_search/images/focuses/GFX_goal_unleash_sauron.png new file mode 100644 index 000000000..b209643b9 Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_unleash_sauron.png differ diff --git a/tools/gfx_search/images/focuses/GFX_goal_witch_king.png b/tools/gfx_search/images/focuses/GFX_goal_witch_king.png new file mode 100644 index 000000000..a14c6c82b Binary files /dev/null and b/tools/gfx_search/images/focuses/GFX_goal_witch_king.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_angmar.png b/tools/gfx_search/images/newsevents/GFX_news_event_angmar.png new file mode 100644 index 000000000..386d54fa9 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_angmar.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_angmar_carn_dum.png b/tools/gfx_search/images/newsevents/GFX_news_event_angmar_carn_dum.png new file mode 100644 index 000000000..6ad8ca24b Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_angmar_carn_dum.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_balrog.png b/tools/gfx_search/images/newsevents/GFX_news_event_balrog.png new file mode 100644 index 000000000..f6716047b Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_balrog.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_bilbo.png b/tools/gfx_search/images/newsevents/GFX_news_event_bilbo.png new file mode 100644 index 000000000..85048a07a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_bilbo.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_boromir_dead.png b/tools/gfx_search/images/newsevents/GFX_news_event_boromir_dead.png new file mode 100644 index 000000000..42a25753a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_boromir_dead.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_celeborn.png b/tools/gfx_search/images/newsevents/GFX_news_event_celeborn.png new file mode 100644 index 000000000..ab2f71f33 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_celeborn.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_council_of_elrond.png b/tools/gfx_search/images/newsevents/GFX_news_event_council_of_elrond.png new file mode 100644 index 000000000..75b91c9af Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_council_of_elrond.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_dagorlad_nazgul.png b/tools/gfx_search/images/newsevents/GFX_news_event_dagorlad_nazgul.png new file mode 100644 index 000000000..301ef3ef4 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_dagorlad_nazgul.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_diplomacy.png b/tools/gfx_search/images/newsevents/GFX_news_event_diplomacy.png new file mode 100644 index 000000000..e4dabeb2e Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_diplomacy.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_dolguldur.png b/tools/gfx_search/images/newsevents/GFX_news_event_dolguldur.png new file mode 100644 index 000000000..c24d7390f Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_dolguldur.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_dwarves.png b/tools/gfx_search/images/newsevents/GFX_news_event_dwarves.png new file mode 100644 index 000000000..c4a58ef22 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_dwarves.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_elrond.png b/tools/gfx_search/images/newsevents/GFX_news_event_elrond.png new file mode 100644 index 000000000..64acf89b8 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_elrond.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_enedwaith_saruman.png b/tools/gfx_search/images/newsevents/GFX_news_event_enedwaith_saruman.png new file mode 100644 index 000000000..9f4ac9498 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_enedwaith_saruman.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ents.png b/tools/gfx_search/images/newsevents/GFX_news_event_ents.png new file mode 100644 index 000000000..a1d46bb60 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ents.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_faramir_dead.png b/tools/gfx_search/images/newsevents/GFX_news_event_faramir_dead.png new file mode 100644 index 000000000..a0b6456be Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_faramir_dead.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_000.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_000.png new file mode 100644 index 000000000..b701a273c Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_000.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_001.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_001.png new file mode 100644 index 000000000..44a88fed2 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_001.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_002.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_002.png new file mode 100644 index 000000000..77da883e7 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_002.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_010.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_010.png new file mode 100644 index 000000000..b1b06e49f Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_010.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_011.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_011.png new file mode 100644 index 000000000..85723ca26 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_011.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_012.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_012.png new file mode 100644 index 000000000..51f0f9ea1 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_012.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_020.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_020.png new file mode 100644 index 000000000..3848e8537 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_020.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_021.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_021.png new file mode 100644 index 000000000..62631a43a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_021.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_022.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_022.png new file mode 100644 index 000000000..d645a0514 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_022.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_100.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_100.png new file mode 100644 index 000000000..67211d93a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_100.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_101.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_101.png new file mode 100644 index 000000000..3f343b2ea Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_101.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_102.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_102.png new file mode 100644 index 000000000..2199bf193 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_102.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_110.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_110.png new file mode 100644 index 000000000..6e109469c Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_110.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_111.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_111.png new file mode 100644 index 000000000..09ff028a4 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_111.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_112.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_112.png new file mode 100644 index 000000000..ceae49ef3 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_112.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_120.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_120.png new file mode 100644 index 000000000..d1a3b2897 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_120.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_121.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_121.png new file mode 100644 index 000000000..7ce23c6eb Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_121.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_122.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_122.png new file mode 100644 index 000000000..1f9368470 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_122.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_200.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_200.png new file mode 100644 index 000000000..71188af1a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_200.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_201.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_201.png new file mode 100644 index 000000000..9669eb163 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_201.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_202.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_202.png new file mode 100644 index 000000000..431a6f5a3 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_202.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_210.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_210.png new file mode 100644 index 000000000..37bc37fee Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_210.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_211.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_211.png new file mode 100644 index 000000000..50df37e07 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_211.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_212.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_212.png new file mode 100644 index 000000000..73623982e Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_212.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_220.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_220.png new file mode 100644 index 000000000..9aae72e9f Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_220.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_221.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_221.png new file mode 100644 index 000000000..618add296 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_221.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_fs_222.png b/tools/gfx_search/images/newsevents/GFX_news_event_fs_222.png new file mode 100644 index 000000000..823e246d8 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_fs_222.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_alliance.png b/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_alliance.png new file mode 100644 index 000000000..cb05ac64e Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_alliance.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_fight.png b/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_fight.png new file mode 100644 index 000000000..b12586689 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gandalf_saruman_fight.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gon_dead_army.png b/tools/gfx_search/images/newsevents/GFX_news_event_gon_dead_army.png new file mode 100644 index 000000000..ec166b40c Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gon_dead_army.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gon_denethor_suicide.png b/tools/gfx_search/images/newsevents/GFX_news_event_gon_denethor_suicide.png new file mode 100644 index 000000000..7ddcc5ffd Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gon_denethor_suicide.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gondor_army.png b/tools/gfx_search/images/newsevents/GFX_news_event_gondor_army.png new file mode 100644 index 000000000..208b8150e Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gondor_army.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_gondor_coronation.png b/tools/gfx_search/images/newsevents/GFX_news_event_gondor_coronation.png new file mode 100644 index 000000000..9120e3a96 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_gondor_coronation.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_harad.png b/tools/gfx_search/images/newsevents/GFX_news_event_harad.png new file mode 100644 index 000000000..5463f8b8b Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_harad.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_harad_war.png b/tools/gfx_search/images/newsevents/GFX_news_event_harad_war.png new file mode 100644 index 000000000..29567dd95 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_harad_war.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_hobbit_party.png b/tools/gfx_search/images/newsevents/GFX_news_event_hobbit_party.png new file mode 100644 index 000000000..e5ae2363c Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_hobbit_party.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_major_death.png b/tools/gfx_search/images/newsevents/GFX_news_event_major_death.png new file mode 100644 index 000000000..1e5db2b58 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_major_death.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_mirkwood_army.png b/tools/gfx_search/images/newsevents/GFX_news_event_mirkwood_army.png new file mode 100644 index 000000000..e84c9c165 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_mirkwood_army.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_moria_overrun.png b/tools/gfx_search/images/newsevents/GFX_news_event_moria_overrun.png new file mode 100644 index 000000000..b11c268b3 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_moria_overrun.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_rangers.png b/tools/gfx_search/images/newsevents/GFX_news_event_rangers.png new file mode 100644 index 000000000..bf16446d9 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_rangers.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_redhorn_storm.png b/tools/gfx_search/images/newsevents/GFX_news_event_redhorn_storm.png new file mode 100644 index 000000000..0c05c78bd Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_redhorn_storm.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_rhun_army.png b/tools/gfx_search/images/newsevents/GFX_news_event_rhun_army.png new file mode 100644 index 000000000..f93c1a553 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_rhun_army.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_boromir.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_boromir.png new file mode 100644 index 000000000..62603910d Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_boromir.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_destroyed.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_destroyed.png new file mode 100644 index 000000000..4d0115a39 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_destroyed.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_isengard.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_isengard.png new file mode 100644 index 000000000..12842b047 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_isengard.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_intercept.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_intercept.png new file mode 100644 index 000000000..fbdc38617 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_intercept.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_take.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_take.png new file mode 100644 index 000000000..bb2c00e21 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_lorien_take.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ring_shire.png b/tools/gfx_search/images/newsevents/GFX_news_event_ring_shire.png new file mode 100644 index 000000000..2ce7dfb77 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ring_shire.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_eowyn_marriage.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_eowyn_marriage.png new file mode 100644 index 000000000..044da52c7 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_eowyn_marriage.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_exiled.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_exiled.png new file mode 100644 index 000000000..9243f5b9d Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_grima_exiled.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_helmsdeep_breached.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_helmsdeep_breached.png new file mode 100644 index 000000000..ffe91e868 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_helmsdeep_breached.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_dead.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_dead.png new file mode 100644 index 000000000..5a0c027b6 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_dead.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_ill.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_ill.png new file mode 100644 index 000000000..d97cdf841 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theoden_ill.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_roh_theodred_dead.png b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theodred_dead.png new file mode 100644 index 000000000..8ed1c6d65 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_roh_theodred_dead.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_sailaway.png b/tools/gfx_search/images/newsevents/GFX_news_event_sailaway.png new file mode 100644 index 000000000..dc0853bd2 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_sailaway.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_saruman.png b/tools/gfx_search/images/newsevents/GFX_news_event_saruman.png new file mode 100644 index 000000000..93341887a Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_saruman.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_sauron.png b/tools/gfx_search/images/newsevents/GFX_news_event_sauron.png new file mode 100644 index 000000000..6938b0d7b Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_sauron.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_sauron_eye.png b/tools/gfx_search/images/newsevents/GFX_news_event_sauron_eye.png new file mode 100644 index 000000000..c9cb2480d Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_sauron_eye.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_ships.png b/tools/gfx_search/images/newsevents/GFX_news_event_ships.png new file mode 100644 index 000000000..586b8f102 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_ships.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_shire.png b/tools/gfx_search/images/newsevents/GFX_news_event_shire.png new file mode 100644 index 000000000..1437b6a20 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_shire.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_spiders.png b/tools/gfx_search/images/newsevents/GFX_news_event_spiders.png new file mode 100644 index 000000000..286a2562f Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_spiders.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_surrender.png b/tools/gfx_search/images/newsevents/GFX_news_event_surrender.png new file mode 100644 index 000000000..9fbd17b32 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_surrender.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_uprising.png b/tools/gfx_search/images/newsevents/GFX_news_event_uprising.png new file mode 100644 index 000000000..c8342c7f7 Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_uprising.png differ diff --git a/tools/gfx_search/images/newsevents/GFX_news_event_witch_king_angmar.png b/tools/gfx_search/images/newsevents/GFX_news_event_witch_king_angmar.png new file mode 100644 index 000000000..800aee56e Binary files /dev/null and b/tools/gfx_search/images/newsevents/GFX_news_event_witch_king_angmar.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia.png b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia.png new file mode 100644 index 000000000..0e05bdbc8 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_2.png b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_2.png new file mode 100644 index 000000000..2765f3749 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_3.png b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_3.png new file mode 100644 index 000000000..7b36b4c85 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_3.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_4.png b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_4.png new file mode 100644 index 000000000..e40436f56 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_denethor_paranoia_4.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance.png new file mode 100644 index 000000000..dd5d3d204 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance_grey.png new file mode 100644 index 000000000..8d22580cc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_alliance_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion.png new file mode 100644 index 000000000..42f9ea2a5 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion_grey.png new file mode 100644 index 000000000..9fcb15c25 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_expansion_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony.png new file mode 100644 index 000000000..c0b810ad9 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony_grey.png new file mode 100644 index 000000000..fa94dd668 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_hegemony_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry.png new file mode 100644 index 000000000..1473a6ac8 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry_grey.png new file mode 100644 index 000000000..c124746b6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_industry_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial.png new file mode 100644 index 000000000..a51ab4bfc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial_grey.png new file mode 100644 index 000000000..a57197e87 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_martial_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace.png new file mode 100644 index 000000000..e3cedeafd Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace_grey.png new file mode 100644 index 000000000..99b8e6939 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_peace_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research.png new file mode 100644 index 000000000..b2a281b9b Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research_grey.png new file mode 100644 index 000000000..73f2478fb Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_research_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade.png new file mode 100644 index 000000000..62fff1119 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade_grey.png new file mode 100644 index 000000000..bf0bcf6cd Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_trade_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union.png new file mode 100644 index 000000000..d81019a02 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union_grey.png b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union_grey.png new file mode 100644 index 000000000..e1c2fa952 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_ea_resolution_icon_union_grey.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_abandon_crown.png b/tools/gfx_search/images/spirits/GFX_idea_generic_abandon_crown.png new file mode 100644 index 000000000..0eeef7c6d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_abandon_crown.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_farming_reforms.png b/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_farming_reforms.png new file mode 100644 index 000000000..aee7cc564 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_farming_reforms.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_society.png b/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_society.png new file mode 100644 index 000000000..ea72d8ebf Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_agrarian_society.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_agression_wolf.png b/tools/gfx_search/images/spirits/GFX_idea_generic_agression_wolf.png new file mode 100644 index 000000000..92640d359 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_agression_wolf.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_air_skull_with_wings.png b/tools/gfx_search/images/spirits/GFX_idea_generic_air_skull_with_wings.png new file mode 100644 index 000000000..dc3f043f6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_air_skull_with_wings.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_air_support_bird.png b/tools/gfx_search/images/spirits/GFX_idea_generic_air_support_bird.png new file mode 100644 index 000000000..56f4c7abc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_air_support_bird.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_aloof_neutrality.png b/tools/gfx_search/images/spirits/GFX_idea_generic_aloof_neutrality.png new file mode 100644 index 000000000..b4d125b7d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_aloof_neutrality.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_arctic_wolves.png b/tools/gfx_search/images/spirits/GFX_idea_generic_arctic_wolves.png new file mode 100644 index 000000000..5dce3d305 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_arctic_wolves.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_belligerent_drift_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_belligerent_drift_bonus.png new file mode 100644 index 000000000..613d68607 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_belligerent_drift_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty.png b/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty.png new file mode 100644 index 000000000..88d4da0cc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty_torn.png b/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty_torn.png new file mode 100644 index 000000000..b380914c6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_bloody_treaty_torn.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_central_management.png b/tools/gfx_search/images/spirits/GFX_idea_generic_central_management.png new file mode 100644 index 000000000..99b244924 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_central_management.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_change_in_course.png b/tools/gfx_search/images/spirits/GFX_idea_generic_change_in_course.png new file mode 100644 index 000000000..3ae1c642b Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_change_in_course.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_chess_wargames.png b/tools/gfx_search/images/spirits/GFX_idea_generic_chess_wargames.png new file mode 100644 index 000000000..45b6ca651 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_chess_wargames.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_constitutional_guarantee.png b/tools/gfx_search/images/spirits/GFX_idea_generic_constitutional_guarantee.png new file mode 100644 index 000000000..5dc8451bc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_constitutional_guarantee.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_cooperative_drift_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_cooperative_drift_bonus.png new file mode 100644 index 000000000..3422a5833 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_cooperative_drift_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_cross_emblem.png b/tools/gfx_search/images/spirits/GFX_idea_generic_cross_emblem.png new file mode 100644 index 000000000..65ad2f40c Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_cross_emblem.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_crusade_against_democracy.png b/tools/gfx_search/images/spirits/GFX_idea_generic_crusade_against_democracy.png new file mode 100644 index 000000000..e49217a58 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_crusade_against_democracy.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_crush_peasant_revolt.png b/tools/gfx_search/images/spirits/GFX_idea_generic_crush_peasant_revolt.png new file mode 100644 index 000000000..117124fe8 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_crush_peasant_revolt.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_crush_the_revolution.png b/tools/gfx_search/images/spirits/GFX_idea_generic_crush_the_revolution.png new file mode 100644 index 000000000..0f829c90a Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_crush_the_revolution.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil.png b/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil.png new file mode 100644 index 000000000..fa510ee54 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil2.png new file mode 100644 index 000000000..e02793d3e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_deal_with_the_devil2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_democratic_opposition.png b/tools/gfx_search/images/spirits/GFX_idea_generic_democratic_opposition.png new file mode 100644 index 000000000..554261224 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_democratic_opposition.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_duplicate_research.png b/tools/gfx_search/images/spirits/GFX_idea_generic_duplicate_research.png new file mode 100644 index 000000000..6b8c591c6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_duplicate_research.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_economic_crisis.png b/tools/gfx_search/images/spirits/GFX_idea_generic_economic_crisis.png new file mode 100644 index 000000000..24a9b3d20 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_economic_crisis.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_empire.png b/tools/gfx_search/images/spirits/GFX_idea_generic_empire.png new file mode 100644 index 000000000..6bab5a36d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_empire.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_exploit_the_banks.png b/tools/gfx_search/images/spirits/GFX_idea_generic_exploit_the_banks.png new file mode 100644 index 000000000..7a22f4a07 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_exploit_the_banks.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy.png b/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy.png new file mode 100644 index 000000000..9264b66b9 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy2.png new file mode 100644 index 000000000..7036b2095 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_flexible_foreign_policy2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_flooding.png b/tools/gfx_search/images/spirits/GFX_idea_generic_flooding.png new file mode 100644 index 000000000..7d834a03d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_flooding.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_foreign_capital.png b/tools/gfx_search/images/spirits/GFX_idea_generic_foreign_capital.png new file mode 100644 index 000000000..ad80bab9e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_foreign_capital.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_gold_money.png b/tools/gfx_search/images/spirits/GFX_idea_generic_gold_money.png new file mode 100644 index 000000000..603ab7690 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_gold_money.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_golden_wolves.png b/tools/gfx_search/images/spirits/GFX_idea_generic_golden_wolves.png new file mode 100644 index 000000000..2dd77cc0a Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_golden_wolves.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_hidden_evil.png b/tools/gfx_search/images/spirits/GFX_idea_generic_hidden_evil.png new file mode 100644 index 000000000..571d01e3e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_hidden_evil.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_horse_cavalry.png b/tools/gfx_search/images/spirits/GFX_idea_generic_horse_cavalry.png new file mode 100644 index 000000000..5f20d29bb Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_horse_cavalry.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_ideology_drift_defense.png b/tools/gfx_search/images/spirits/GFX_idea_generic_ideology_drift_defense.png new file mode 100644 index 000000000..35dd57447 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_ideology_drift_defense.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_improved_industries.png b/tools/gfx_search/images/spirits/GFX_idea_generic_improved_industries.png new file mode 100644 index 000000000..7605dd8ec Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_improved_industries.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_industry_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_industry_bonus.png new file mode 100644 index 000000000..f7096d072 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_industry_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_intel_bonus_fist.png b/tools/gfx_search/images/spirits/GFX_idea_generic_intel_bonus_fist.png new file mode 100644 index 000000000..d8d44c18a Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_intel_bonus_fist.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_king_handled.png b/tools/gfx_search/images/spirits/GFX_idea_generic_king_handled.png new file mode 100644 index 000000000..4846b63b0 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_king_handled.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_large_knife.png b/tools/gfx_search/images/spirits/GFX_idea_generic_large_knife.png new file mode 100644 index 000000000..0215c7504 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_large_knife.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_local_self_management.png b/tools/gfx_search/images/spirits/GFX_idea_generic_local_self_management.png new file mode 100644 index 000000000..7b408faee Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_local_self_management.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_lone_wold.png b/tools/gfx_search/images/spirits/GFX_idea_generic_lone_wold.png new file mode 100644 index 000000000..3af999b44 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_lone_wold.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_men_at_arms.png b/tools/gfx_search/images/spirits/GFX_idea_generic_men_at_arms.png new file mode 100644 index 000000000..a0bed6d85 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_men_at_arms.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_mobilization_trumpet.png b/tools/gfx_search/images/spirits/GFX_idea_generic_mobilization_trumpet.png new file mode 100644 index 000000000..fbb315745 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_mobilization_trumpet.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_monarchist_uprising.png b/tools/gfx_search/images/spirits/GFX_idea_generic_monarchist_uprising.png new file mode 100644 index 000000000..4aea0c151 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_monarchist_uprising.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_monarchy_crown.png b/tools/gfx_search/images/spirits/GFX_idea_generic_monarchy_crown.png new file mode 100644 index 000000000..78d5d437c Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_monarchy_crown.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_morale_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_morale_bonus.png new file mode 100644 index 000000000..d11a4ceb4 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_morale_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_motorized_equipment_manufacturer_2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_motorized_equipment_manufacturer_2.png new file mode 100644 index 000000000..dce2fe7d1 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_motorized_equipment_manufacturer_2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_naval_anchor.png b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_anchor.png new file mode 100644 index 000000000..d5b16e5ca Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_anchor.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_naval_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_bonus.png new file mode 100644 index 000000000..45984081d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_1.png b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_1.png new file mode 100644 index 000000000..0ae4c6d4e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_1.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_2.png new file mode 100644 index 000000000..871d9d9a2 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_3.png b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_3.png new file mode 100644 index 000000000..9c5d4ea24 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_naval_manufacturer_3.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_drift_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_drift_bonus.png new file mode 100644 index 000000000..764ba69f1 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_drift_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_idea.png b/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_idea.png new file mode 100644 index 000000000..693b83d06 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_neutrality_idea.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior.png b/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior.png new file mode 100644 index 000000000..2f594dd07 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior2.png new file mode 100644 index 000000000..8bc7f85f7 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_nomad_warrior2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_nomads.png b/tools/gfx_search/images/spirits/GFX_idea_generic_nomads.png new file mode 100644 index 000000000..f9ff53e2f Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_nomads.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_northern_union.png b/tools/gfx_search/images/spirits/GFX_idea_generic_northern_union.png new file mode 100644 index 000000000..416cfca81 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_northern_union.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_oppression.png b/tools/gfx_search/images/spirits/GFX_idea_generic_oppression.png new file mode 100644 index 000000000..2db77fbb1 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_oppression.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_paganism.png b/tools/gfx_search/images/spirits/GFX_idea_generic_paganism.png new file mode 100644 index 000000000..2e6035f51 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_paganism.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_milita2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_milita2.png new file mode 100644 index 000000000..67aa61c7b Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_milita2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_militia.png b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_militia.png new file mode 100644 index 000000000..07b6b9780 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_militia.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes.png b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes.png new file mode 100644 index 000000000..2468bd988 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes2.png new file mode 100644 index 000000000..e49adce59 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_peasant_strikes2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_planning_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_planning_bonus.png new file mode 100644 index 000000000..2cadb6bce Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_planning_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_political_ban.png b/tools/gfx_search/images/spirits/GFX_idea_generic_political_ban.png new file mode 100644 index 000000000..1fbc6f256 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_political_ban.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_political_support.png b/tools/gfx_search/images/spirits/GFX_idea_generic_political_support.png new file mode 100644 index 000000000..452bfb22f Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_political_support.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_pp_unity_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_pp_unity_bonus.png new file mode 100644 index 000000000..703b0eed2 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_pp_unity_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_prisoner.png b/tools/gfx_search/images/spirits/GFX_idea_generic_prisoner.png new file mode 100644 index 000000000..ae9fc0543 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_prisoner.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_production_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_production_bonus.png new file mode 100644 index 000000000..4e75eaf8a Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_production_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_purge.png b/tools/gfx_search/images/spirits/GFX_idea_generic_purge.png new file mode 100644 index 000000000..3734db5b1 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_purge.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_relocate_gold_money.png b/tools/gfx_search/images/spirits/GFX_idea_generic_relocate_gold_money.png new file mode 100644 index 000000000..486046af5 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_relocate_gold_money.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_research_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_research_bonus.png new file mode 100644 index 000000000..2feec75b0 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_research_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_research_tech_supremacy.png b/tools/gfx_search/images/spirits/GFX_idea_generic_research_tech_supremacy.png new file mode 100644 index 000000000..5bf028c9b Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_research_tech_supremacy.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resistance.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance.png new file mode 100644 index 000000000..9f99c97eb Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resistance2.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance2.png new file mode 100644 index 000000000..411ce2571 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance2.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resistance3.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance3.png new file mode 100644 index 000000000..d8e488d87 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance3.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_fist.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_fist.png new file mode 100644 index 000000000..21c1291a3 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_fist.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_locked.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_locked.png new file mode 100644 index 000000000..763829ad3 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resistance_locked.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_resource_digging.png b/tools/gfx_search/images/spirits/GFX_idea_generic_resource_digging.png new file mode 100644 index 000000000..50f44bc99 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_resource_digging.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_drift_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_drift_bonus.png new file mode 100644 index 000000000..78638ebc9 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_drift_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_masters_of_our_own_fate.png b/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_masters_of_our_own_fate.png new file mode 100644 index 000000000..969bfce0d Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_revolutionary_masters_of_our_own_fate.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_risk_of_famine.png b/tools/gfx_search/images/spirits/GFX_idea_generic_risk_of_famine.png new file mode 100644 index 000000000..cccd69c94 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_risk_of_famine.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_shield_against_communism.png b/tools/gfx_search/images/spirits/GFX_idea_generic_shield_against_communism.png new file mode 100644 index 000000000..b8dc58a88 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_shield_against_communism.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_skull_death_nor_dishonor.png b/tools/gfx_search/images/spirits/GFX_idea_generic_skull_death_nor_dishonor.png new file mode 100644 index 000000000..c58820ffc Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_skull_death_nor_dishonor.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_special_forces.png b/tools/gfx_search/images/spirits/GFX_idea_generic_special_forces.png new file mode 100644 index 000000000..1c2f84170 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_special_forces.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_spy_eye_agency.png b/tools/gfx_search/images/spirits/GFX_idea_generic_spy_eye_agency.png new file mode 100644 index 000000000..61a58399c Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_spy_eye_agency.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_support_crown.png b/tools/gfx_search/images/spirits/GFX_idea_generic_support_crown.png new file mode 100644 index 000000000..130aa10c6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_support_crown.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_supremacy_of_will_brain.png b/tools/gfx_search/images/spirits/GFX_idea_generic_supremacy_of_will_brain.png new file mode 100644 index 000000000..74edd4ab4 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_supremacy_of_will_brain.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_sword_military.png b/tools/gfx_search/images/spirits/GFX_idea_generic_sword_military.png new file mode 100644 index 000000000..1bf3bb0aa Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_sword_military.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_taxed_nobility.png b/tools/gfx_search/images/spirits/GFX_idea_generic_taxed_nobility.png new file mode 100644 index 000000000..c973abd76 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_taxed_nobility.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_the_london_naval_treaty.png b/tools/gfx_search/images/spirits/GFX_idea_generic_the_london_naval_treaty.png new file mode 100644 index 000000000..0555bd699 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_the_london_naval_treaty.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_torchbearers.png b/tools/gfx_search/images/spirits/GFX_idea_generic_torchbearers.png new file mode 100644 index 000000000..de4827fab Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_torchbearers.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_trade_devalued.png b/tools/gfx_search/images/spirits/GFX_idea_generic_trade_devalued.png new file mode 100644 index 000000000..651080255 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_trade_devalued.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_treaty.png b/tools/gfx_search/images/spirits/GFX_idea_generic_treaty.png new file mode 100644 index 000000000..0135000bd Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_treaty.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_unaligned_drift_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_unaligned_drift_bonus.png new file mode 100644 index 000000000..075ab3bb2 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_unaligned_drift_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_viking_axe_weapons.png b/tools/gfx_search/images/spirits/GFX_idea_generic_viking_axe_weapons.png new file mode 100644 index 000000000..d48c03d0b Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_viking_axe_weapons.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_volunteer_expedition_bonus.png b/tools/gfx_search/images/spirits/GFX_idea_generic_volunteer_expedition_bonus.png new file mode 100644 index 000000000..a1f721f05 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_volunteer_expedition_bonus.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_generic_wolf_aggression_bite.png b/tools/gfx_search/images/spirits/GFX_idea_generic_wolf_aggression_bite.png new file mode 100644 index 000000000..7195f1809 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_generic_wolf_aggression_bite.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_gon_white_tree.png b/tools/gfx_search/images/spirits/GFX_idea_gon_white_tree.png new file mode 100644 index 000000000..41f649124 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_gon_white_tree.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_honor_morgoth.png b/tools/gfx_search/images/spirits/GFX_idea_honor_morgoth.png new file mode 100644 index 000000000..bb01fa8d5 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_honor_morgoth.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_immortal_endurance.png b/tools/gfx_search/images/spirits/GFX_idea_immortal_endurance.png new file mode 100644 index 000000000..f4124221f Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_immortal_endurance.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_limited_intervention.png b/tools/gfx_search/images/spirits/GFX_idea_limited_intervention.png new file mode 100644 index 000000000..7213b9f47 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_limited_intervention.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_a_necessary_evil.png b/tools/gfx_search/images/spirits/GFX_idea_lth_a_necessary_evil.png new file mode 100644 index 000000000..53bfc8a16 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_a_necessary_evil.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_aegis_of_light.png b/tools/gfx_search/images/spirits/GFX_idea_lth_aegis_of_light.png new file mode 100644 index 000000000..a641507b6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_aegis_of_light.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_anduin_commerce.png b/tools/gfx_search/images/spirits/GFX_idea_lth_anduin_commerce.png new file mode 100644 index 000000000..3dd764c6f Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_anduin_commerce.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_beacon_of_hope.png b/tools/gfx_search/images/spirits/GFX_idea_lth_beacon_of_hope.png new file mode 100644 index 000000000..645c4d071 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_beacon_of_hope.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_blades_of_the_eldar.png b/tools/gfx_search/images/spirits/GFX_idea_lth_blades_of_the_eldar.png new file mode 100644 index 000000000..3c77f634e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_blades_of_the_eldar.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala.png b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala.png new file mode 100644 index 000000000..dbb5ccf2e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala_mended.png b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala_mended.png new file mode 100644 index 000000000..887561b43 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_and_gala_mended.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_cele_gala_accord.png b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_gala_accord.png new file mode 100644 index 000000000..2c7dda421 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_cele_gala_accord.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_decadent_nobility.png b/tools/gfx_search/images/spirits/GFX_idea_lth_decadent_nobility.png new file mode 100644 index 000000000..4d6733cf0 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_decadent_nobility.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_elven_factions.png b/tools/gfx_search/images/spirits/GFX_idea_lth_elven_factions.png new file mode 100644 index 000000000..364a765bb Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_elven_factions.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_fate_of_mortals.png b/tools/gfx_search/images/spirits/GFX_idea_lth_fate_of_mortals.png new file mode 100644 index 000000000..bf34736db Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_fate_of_mortals.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_girdle_of_melian.png b/tools/gfx_search/images/spirits/GFX_idea_lth_girdle_of_melian.png new file mode 100644 index 000000000..3d2ac2e43 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_girdle_of_melian.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_great_beasts.png b/tools/gfx_search/images/spirits/GFX_idea_lth_great_beasts.png new file mode 100644 index 000000000..0eb8b397e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_great_beasts.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_great_schism.png b/tools/gfx_search/images/spirits/GFX_idea_lth_great_schism.png new file mode 100644 index 000000000..e45b82b86 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_great_schism.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_harmonic_ascendancy.png b/tools/gfx_search/images/spirits/GFX_idea_lth_harmonic_ascendancy.png new file mode 100644 index 000000000..40a57ac67 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_harmonic_ascendancy.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_last_eldar.png b/tools/gfx_search/images/spirits/GFX_idea_lth_last_eldar.png new file mode 100644 index 000000000..c58a9015e Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_last_eldar.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_last_stand.png b/tools/gfx_search/images/spirits/GFX_idea_lth_last_stand.png new file mode 100644 index 000000000..d0bd72301 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_last_stand.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_lead_by_example.png b/tools/gfx_search/images/spirits/GFX_idea_lth_lead_by_example.png new file mode 100644 index 000000000..f11f8d4f7 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_lead_by_example.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_loose_giant.png b/tools/gfx_search/images/spirits/GFX_idea_lth_loose_giant.png new file mode 100644 index 000000000..27f5c32d3 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_loose_giant.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_meritocracy.png b/tools/gfx_search/images/spirits/GFX_idea_lth_meritocracy.png new file mode 100644 index 000000000..3aec573aa Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_meritocracy.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_noldor_elite.png b/tools/gfx_search/images/spirits/GFX_idea_lth_noldor_elite.png new file mode 100644 index 000000000..969b8d93f Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_noldor_elite.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_peasant_assembly.png b/tools/gfx_search/images/spirits/GFX_idea_lth_peasant_assembly.png new file mode 100644 index 000000000..3be408fa6 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_peasant_assembly.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_prisoner_vivisections.png b/tools/gfx_search/images/spirits/GFX_idea_lth_prisoner_vivisections.png new file mode 100644 index 000000000..64e0e53ed Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_prisoner_vivisections.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees.png b/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees.png new file mode 100644 index 000000000..21743ac71 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees_fading.png b/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees_fading.png new file mode 100644 index 000000000..a1196f7c1 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_sacred_trees_fading.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_sealed_borders.png b/tools/gfx_search/images/spirits/GFX_idea_lth_sealed_borders.png new file mode 100644 index 000000000..72a0ba10a Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_sealed_borders.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_silvan_elite_warriors.png b/tools/gfx_search/images/spirits/GFX_idea_lth_silvan_elite_warriors.png new file mode 100644 index 000000000..410980324 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_silvan_elite_warriors.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_silverthorn_arrows.png b/tools/gfx_search/images/spirits/GFX_idea_lth_silverthorn_arrows.png new file mode 100644 index 000000000..a4b6c9ce8 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_silverthorn_arrows.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_sky_soil_and_water.png b/tools/gfx_search/images/spirits/GFX_idea_lth_sky_soil_and_water.png new file mode 100644 index 000000000..0d509e9b9 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_sky_soil_and_water.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_the_new_order.png b/tools/gfx_search/images/spirits/GFX_idea_lth_the_new_order.png new file mode 100644 index 000000000..1a4735c51 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_the_new_order.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_total_isolation.png b/tools/gfx_search/images/spirits/GFX_idea_lth_total_isolation.png new file mode 100644 index 000000000..7fca02046 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_total_isolation.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_unflinching_defender.png b/tools/gfx_search/images/spirits/GFX_idea_lth_unflinching_defender.png new file mode 100644 index 000000000..2ecabde16 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_unflinching_defender.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_lth_unity_in_division.png b/tools/gfx_search/images/spirits/GFX_idea_lth_unity_in_division.png new file mode 100644 index 000000000..5af537216 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_lth_unity_in_division.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_one_ring.png b/tools/gfx_search/images/spirits/GFX_idea_one_ring.png new file mode 100644 index 000000000..3f94fddb4 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_one_ring.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_sauron_eye.png b/tools/gfx_search/images/spirits/GFX_idea_sauron_eye.png new file mode 100644 index 000000000..54254ef48 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_sauron_eye.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_swan_knights.png b/tools/gfx_search/images/spirits/GFX_idea_swan_knights.png new file mode 100644 index 000000000..aae412fc3 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_swan_knights.png differ diff --git a/tools/gfx_search/images/spirits/GFX_idea_weary_armed_forces.png b/tools/gfx_search/images/spirits/GFX_idea_weary_armed_forces.png new file mode 100644 index 000000000..66559db54 Binary files /dev/null and b/tools/gfx_search/images/spirits/GFX_idea_weary_armed_forces.png differ diff --git a/tools/gfx_search/newsevents.html b/tools/gfx_search/newsevents.html new file mode 100644 index 000000000..ff725f397 --- /dev/null +++ b/tools/gfx_search/newsevents.html @@ -0,0 +1,241 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

NewsEvents

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + +
GFX_news_event_angmar
+
GFX_news_event_angmar_carn_dum
+
GFX_news_event_balrog
+
GFX_news_event_bilbo
+
GFX_news_event_boromir_dead
+
GFX_news_event_celeborn
+
GFX_news_event_council_of_elrond
+
GFX_news_event_dagorlad_nazgul
+
GFX_news_event_diplomacy
+
GFX_news_event_dolguldur
+
GFX_news_event_dwarves
+
GFX_news_event_elrond
+
GFX_news_event_enedwaith_saruman
+
GFX_news_event_ents
+
GFX_news_event_faramir_dead
+
GFX_news_event_fs_000
+
GFX_news_event_fs_001
+
GFX_news_event_fs_002
+
GFX_news_event_fs_010
+
GFX_news_event_fs_011
+
GFX_news_event_fs_012
+
GFX_news_event_fs_020
+
GFX_news_event_fs_021
+
GFX_news_event_fs_022
+
GFX_news_event_fs_100
+
GFX_news_event_fs_101
+
GFX_news_event_fs_102
+
GFX_news_event_fs_110
+
GFX_news_event_fs_111
+
GFX_news_event_fs_112
+
GFX_news_event_fs_120
+
GFX_news_event_fs_121
+
GFX_news_event_fs_122
+
GFX_news_event_fs_200
+
GFX_news_event_fs_201
+
GFX_news_event_fs_202
+
GFX_news_event_fs_210
+
GFX_news_event_fs_211
+
GFX_news_event_fs_212
+
GFX_news_event_fs_220
+
GFX_news_event_fs_221
+
GFX_news_event_fs_222
+
GFX_news_event_gandalf_saruman_alliance
+
GFX_news_event_gandalf_saruman_fight
+
GFX_news_event_gondor_army
+
GFX_news_event_gondor_coronation
+
GFX_news_event_gon_dead_army
+
GFX_news_event_gon_denethor_suicide
+
GFX_news_event_harad
+
GFX_news_event_harad_war
+
GFX_news_event_hobbit_party
+
GFX_news_event_major_death
+
GFX_news_event_mirkwood_army
+
GFX_news_event_moria_overrun
+
GFX_news_event_rangers
+
GFX_news_event_redhorn_storm
+
GFX_news_event_rhun_army
+
GFX_news_event_ring_boromir
+
GFX_news_event_ring_destroyed
+
GFX_news_event_ring_isengard
+
GFX_news_event_ring_lorien_intercept
+
GFX_news_event_ring_lorien_take
+
GFX_news_event_ring_shire
+
GFX_news_event_roh_grima_eowyn_marriage
+
GFX_news_event_roh_grima_exiled
+
GFX_news_event_roh_helmsdeep_breached
+
GFX_news_event_roh_theoden_dead
+
GFX_news_event_roh_theoden_ill
+
GFX_news_event_roh_theodred_dead
+
GFX_news_event_sailaway
+
GFX_news_event_saruman
+
GFX_news_event_sauron
+
GFX_news_event_sauron_eye
+
GFX_news_event_ships
+
GFX_news_event_shire
+
GFX_news_event_spiders
+
GFX_news_event_surrender
+
GFX_news_event_uprising
+
GFX_news_event_witch_king_angmar
+
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/gfx_search/settings.json b/tools/gfx_search/settings.json new file mode 100644 index 000000000..491e2f847 --- /dev/null +++ b/tools/gfx_search/settings.json @@ -0,0 +1,39 @@ +{ + "categories": { + + "focuses": { + "name": "Focuses", + "gfx_file": "interface/auto_generated/lotr_goals.gfx", + "img_size_x": 100, + "img_size_y": 100 + }, + + "spirits": { + "name": "Spirits", + "gfx_file": "interface/auto_generated/lotr_spirits.gfx", + "img_size_x": 100, + "img_size_y": 100 + }, + + "decisions": { + "name": "Decisions", + "gfx_file": "interface/auto_generated/lotr_decisions.gfx", + "img_size_x": 260, + "img_size_y": 55 + }, + + "events": { + "name": "Events", + "gfx_file": "interface/auto_generated/lotr_events.gfx", + "img_size_x": 210, + "img_size_y": 180 + }, + + "newsevents": { + "name": "NewsEvents", + "gfx_file": "interface/auto_generated/lotr_newsevents.gfx", + "img_size_x": 500, + "img_size_y": 185 + } + } +} \ No newline at end of file diff --git a/tools/gfx_search/spirits.html b/tools/gfx_search/spirits.html new file mode 100644 index 000000000..0156464d4 --- /dev/null +++ b/tools/gfx_search/spirits.html @@ -0,0 +1,326 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

Spirits

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + +
GFX_idea_generic_belligerent_drift_bonus
+
GFX_idea_generic_cooperative_drift_bonus
+
GFX_idea_generic_revolutionary_drift_bonus
+
GFX_idea_generic_unaligned_drift_bonus
+
GFX_idea_ea_resolution_icon_alliance
+
GFX_idea_ea_resolution_icon_alliance_grey
+
GFX_idea_ea_resolution_icon_expansion
+
GFX_idea_ea_resolution_icon_expansion_grey
+
GFX_idea_ea_resolution_icon_hegemony
+
GFX_idea_ea_resolution_icon_hegemony_grey
+
GFX_idea_ea_resolution_icon_industry
+
GFX_idea_ea_resolution_icon_industry_grey
+
GFX_idea_ea_resolution_icon_martial
+
GFX_idea_ea_resolution_icon_martial_grey
+
GFX_idea_ea_resolution_icon_peace
+
GFX_idea_ea_resolution_icon_peace_grey
+
GFX_idea_ea_resolution_icon_research
+
GFX_idea_ea_resolution_icon_research_grey
+
GFX_idea_ea_resolution_icon_trade
+
GFX_idea_ea_resolution_icon_trade_grey
+
GFX_idea_ea_resolution_icon_union
+
GFX_idea_ea_resolution_icon_union_grey
+
GFX_idea_denethor_paranoia
+
GFX_idea_denethor_paranoia_2
+
GFX_idea_denethor_paranoia_3
+
GFX_idea_denethor_paranoia_4
+
GFX_idea_gon_white_tree
+
GFX_idea_swan_knights
+
GFX_idea_weary_armed_forces
+
GFX_idea_immortal_endurance
+
GFX_idea_limited_intervention
+
GFX_idea_lth_aegis_of_light
+
GFX_idea_lth_anduin_commerce
+
GFX_idea_lth_a_necessary_evil
+
GFX_idea_lth_beacon_of_hope
+
GFX_idea_lth_blades_of_the_eldar
+
GFX_idea_lth_cele_and_gala
+
GFX_idea_lth_cele_and_gala_mended
+
GFX_idea_lth_cele_gala_accord
+
GFX_idea_lth_decadent_nobility
+
GFX_idea_lth_elven_factions
+
GFX_idea_lth_fate_of_mortals
+
GFX_idea_lth_girdle_of_melian
+
GFX_idea_lth_great_beasts
+
GFX_idea_lth_great_schism
+
GFX_idea_lth_harmonic_ascendancy
+
GFX_idea_lth_last_eldar
+
GFX_idea_lth_last_stand
+
GFX_idea_lth_lead_by_example
+
GFX_idea_lth_loose_giant
+
GFX_idea_lth_meritocracy
+
GFX_idea_lth_noldor_elite
+
GFX_idea_lth_peasant_assembly
+
GFX_idea_lth_prisoner_vivisections
+
GFX_idea_lth_sacred_trees
+
GFX_idea_lth_sacred_trees_fading
+
GFX_idea_lth_sealed_borders
+
GFX_idea_lth_silvan_elite_warriors
+
GFX_idea_lth_silverthorn_arrows
+
GFX_idea_lth_sky_soil_and_water
+
GFX_idea_lth_the_new_order
+
GFX_idea_lth_total_isolation
+
GFX_idea_lth_unflinching_defender
+
GFX_idea_lth_unity_in_division
+
GFX_idea_honor_morgoth
+
GFX_idea_one_ring
+
GFX_idea_sauron_eye
+
GFX_idea_generic_abandon_crown
+
GFX_idea_generic_agrarian_farming_reforms
+
GFX_idea_generic_agrarian_society
+
GFX_idea_generic_agression_wolf
+
GFX_idea_generic_air_skull_with_wings
+
GFX_idea_generic_air_support_bird
+
GFX_idea_generic_aloof_neutrality
+
GFX_idea_generic_arctic_wolves
+
GFX_idea_generic_bloody_treaty
+
GFX_idea_generic_bloody_treaty_torn
+
GFX_idea_generic_central_management
+
GFX_idea_generic_change_in_course
+
GFX_idea_generic_chess_wargames
+
GFX_idea_generic_constitutional_guarantee
+
GFX_idea_generic_cross_emblem
+
GFX_idea_generic_crusade_against_democracy
+
GFX_idea_generic_crush_peasant_revolt
+
GFX_idea_generic_crush_the_revolution
+
GFX_idea_generic_deal_with_the_devil
+
GFX_idea_generic_deal_with_the_devil2
+
GFX_idea_generic_democratic_opposition
+
GFX_idea_generic_duplicate_research
+
GFX_idea_generic_economic_crisis
+
GFX_idea_generic_empire
+
GFX_idea_generic_exploit_the_banks
+
GFX_idea_generic_flexible_foreign_policy
+
GFX_idea_generic_flexible_foreign_policy2
+
GFX_idea_generic_flooding
+
GFX_idea_generic_foreign_capital
+
GFX_idea_generic_golden_wolves
+
GFX_idea_generic_gold_money
+
GFX_idea_generic_hidden_evil
+
GFX_idea_generic_horse_cavalry
+
GFX_idea_generic_ideology_drift_defense
+
GFX_idea_generic_improved_industries
+
GFX_idea_generic_industry_bonus
+
GFX_idea_generic_intel_bonus_fist
+
GFX_idea_generic_king_handled
+
GFX_idea_generic_large_knife
+
GFX_idea_generic_local_self_management
+
GFX_idea_generic_lone_wold
+
GFX_idea_generic_men_at_arms
+
GFX_idea_generic_mobilization_trumpet
+
GFX_idea_generic_monarchist_uprising
+
GFX_idea_generic_monarchy_crown
+
GFX_idea_generic_morale_bonus
+
GFX_idea_generic_motorized_equipment_manufacturer_2
+
GFX_idea_generic_naval_anchor
+
GFX_idea_generic_naval_bonus
+
GFX_idea_generic_naval_manufacturer_1
+
GFX_idea_generic_naval_manufacturer_2
+
GFX_idea_generic_naval_manufacturer_3
+
GFX_idea_generic_neutrality_drift_bonus
+
GFX_idea_generic_neutrality_idea
+
GFX_idea_generic_nomads
+
GFX_idea_generic_nomad_warrior
+
GFX_idea_generic_nomad_warrior2
+
GFX_idea_generic_northern_union
+
GFX_idea_generic_oppression
+
GFX_idea_generic_paganism
+
GFX_idea_generic_peasant_milita2
+
GFX_idea_generic_peasant_militia
+
GFX_idea_generic_peasant_strikes
+
GFX_idea_generic_peasant_strikes2
+
GFX_idea_generic_planning_bonus
+
GFX_idea_generic_political_ban
+
GFX_idea_generic_political_support
+
GFX_idea_generic_pp_unity_bonus
+
GFX_idea_generic_prisoner
+
GFX_idea_generic_production_bonus
+
GFX_idea_generic_purge
+
GFX_idea_generic_relocate_gold_money
+
GFX_idea_generic_research_bonus
+
GFX_idea_generic_research_tech_supremacy
+
GFX_idea_generic_resistance
+
GFX_idea_generic_resistance2
+
GFX_idea_generic_resistance3
+
GFX_idea_generic_resistance_fist
+
GFX_idea_generic_resistance_locked
+
GFX_idea_generic_resource_digging
+
GFX_idea_generic_revolutionary_masters_of_our_own_fate
+
GFX_idea_generic_risk_of_famine
+
GFX_idea_generic_shield_against_communism
+
GFX_idea_generic_skull_death_nor_dishonor
+
GFX_idea_generic_special_forces
+
GFX_idea_generic_spy_eye_agency
+
GFX_idea_generic_support_crown
+
GFX_idea_generic_supremacy_of_will_brain
+
GFX_idea_generic_sword_military
+
GFX_idea_generic_taxed_nobility
+
GFX_idea_generic_the_london_naval_treaty
+
GFX_idea_generic_torchbearers
+
GFX_idea_generic_trade_devalued
+
GFX_idea_generic_treaty
+
GFX_idea_generic_viking_axe_weapons
+
GFX_idea_generic_volunteer_expedition_bonus
+
GFX_idea_generic_wolf_aggression_bite
+
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/gfx_search/spirits_temp.html b/tools/gfx_search/spirits_temp.html new file mode 100644 index 000000000..e3239975e --- /dev/null +++ b/tools/gfx_search/spirits_temp.html @@ -0,0 +1,213 @@ + + + + + + + + + + Image Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

Spirits

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ +
GFX_idea_one_ring
+
GFX_idea_sauron_eye
+
GFX_idea_ea_resolution_icon_alliance
+
GFX_idea_ea_resolution_icon_alliance_grey
+
GFX_idea_ea_resolution_icon_expansion
+
GFX_idea_ea_resolution_icon_expansion_grey
+
GFX_idea_ea_resolution_icon_hegemony
+
GFX_idea_ea_resolution_icon_hegemony_grey
+
GFX_idea_ea_resolution_icon_industry
+
GFX_idea_ea_resolution_icon_industry_grey
+
GFX_idea_ea_resolution_icon_martial
+
GFX_idea_ea_resolution_icon_martial_grey
+
GFX_idea_ea_resolution_icon_peace
+
GFX_idea_ea_resolution_icon_peace_grey
+
GFX_idea_ea_resolution_icon_research
+
GFX_idea_ea_resolution_icon_research_grey
+
GFX_idea_ea_resolution_icon_trade
+
GFX_idea_ea_resolution_icon_trade_grey
+
GFX_idea_ea_resolution_icon_union
+
GFX_idea_ea_resolution_icon_union_grey
+
GFX_idea_denethor_paranoia
+
GFX_idea_denethor_paranoia_2
+
GFX_idea_denethor_paranoia_3
+
GFX_idea_denethor_paranoia_4
+
GFX_idea_swan_knights
+
GFX_idea_weary_armed_forces
+
GFX_idea_immortal_endurance
+
GFX_idea_limited_intervention
+
GFX_idea_lth_aegis_of_light
+
GFX_idea_lth_anduin_commerce
+
GFX_idea_lth_a_necessary_evil
+
GFX_idea_lth_beacon_of_hope
+
GFX_idea_lth_blades_of_the_eldar
+
GFX_idea_lth_cele_and_gala
+
GFX_idea_lth_cele_and_gala_mended
+
GFX_idea_lth_cele_gala_accord
+
GFX_idea_lth_decadent_nobility
+
GFX_idea_lth_elven_factions
+
GFX_idea_lth_fate_of_mortals
+
GFX_idea_lth_girdle_of_melian
+
GFX_idea_lth_great_beasts
+
GFX_idea_lth_great_schism
+
GFX_idea_lth_harmonic_ascendancy
+
GFX_idea_lth_last_eldar
+
GFX_idea_lth_last_stand
+
GFX_idea_lth_lead_by_example
+
GFX_idea_lth_loose_giant
+
GFX_idea_lth_meritocracy
+
GFX_idea_lth_noldor_elite
+
GFX_idea_lth_peasant_assembly
+
GFX_idea_lth_prisoner_vivisections
+
GFX_idea_lth_sacred_trees
+
GFX_idea_lth_sacred_trees_fading
+
GFX_idea_lth_sealed_borders
+
GFX_idea_lth_silvan_elite_warriors
+
GFX_idea_lth_silverthorn_arrows
+
GFX_idea_lth_sky_soil_and_water
+
GFX_idea_lth_the_new_order
+
GFX_idea_lth_total_isolation
+
GFX_idea_lth_unflinching_defender
+
GFX_idea_lth_unity_in_division
+
+ +
+ Website inspired by HoI4-GFX-Search by Yard1 +
+ All images are © Copyright Paradox Development Studio. Hearts of Iron® is a registered trademark of Paradox + Interactive. +
+ This site is not affiliated in any way with Paradox Development Studio or Paradox Interactive. +
+ +
+ + + + + diff --git a/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-310.pyc b/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-310.pyc new file mode 100644 index 000000000..5b7706c39 Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-310.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-311.pyc b/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-311.pyc new file mode 100644 index 000000000..276ca4fce Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/gfxparser.cpython-311.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-310.pyc b/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-310.pyc new file mode 100644 index 000000000..4e3849fd0 Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-310.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-311.pyc b/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-311.pyc new file mode 100644 index 000000000..6c89569e9 Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/imageconverter.cpython-311.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-310.pyc b/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-310.pyc new file mode 100644 index 000000000..6f5e62f8f Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-310.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-311.pyc b/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-311.pyc new file mode 100644 index 000000000..a1eb533bb Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/settingsreader.cpython-311.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-310.pyc b/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-310.pyc new file mode 100644 index 000000000..9224a7a0a Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-310.pyc differ diff --git a/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-311.pyc b/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-311.pyc new file mode 100644 index 000000000..c74b1e7be Binary files /dev/null and b/tools/gfx_search/subscripts/__pycache__/templatebuilder.cpython-311.pyc differ diff --git a/tools/gfx_search/subscripts/gfxparser.py b/tools/gfx_search/subscripts/gfxparser.py new file mode 100644 index 000000000..33f108dbd --- /dev/null +++ b/tools/gfx_search/subscripts/gfxparser.py @@ -0,0 +1,10 @@ +import re + +def parse_gfx_file(gfx_file_path): + with open(gfx_file_path, 'r') as file: + content = file.read() + + # Extract sprite entries using regular expressions + sprite_entries = re.findall(r'spriteType = {\s+name = "?([^"\n]+)"?.+?texturefile = "?([^"\n]+)"?.+?}', content, re.DOTALL) + + return sprite_entries diff --git a/tools/gfx_search/subscripts/imageconverter.py b/tools/gfx_search/subscripts/imageconverter.py new file mode 100644 index 000000000..9d5b4f657 --- /dev/null +++ b/tools/gfx_search/subscripts/imageconverter.py @@ -0,0 +1,25 @@ +from wand.image import Image +import os + +def convert_to_png(file_in, file_out): + if os.path.exists(file_out): + if get_image_hash(file_in) == get_image_hash(file_out): + return False + + # Open the image using Wand and convert it to PNG format + try: + with Image(filename=file_in) as img: + img.save(filename=file_out) + return True + except Exception as e: + print(f'Error: {e}') + return False + + +def get_image_hash(image_path): + with Image(filename=image_path) as img: + # Get the perceptual hash of the image + perceptual_hash = img.signature + return perceptual_hash + + diff --git a/tools/gfx_search/subscripts/settingsreader.py b/tools/gfx_search/subscripts/settingsreader.py new file mode 100644 index 000000000..0113f5c40 --- /dev/null +++ b/tools/gfx_search/subscripts/settingsreader.py @@ -0,0 +1,18 @@ +import json + +def read_json(file_path): + try: + with open(file_path, 'r') as file: + json_data = json.load(file) + return json_data + except FileNotFoundError: + print(f"Error: File '{file_path}' not found.") + return None + except json.JSONDecodeError: + print(f"Error: Invalid JSON format in '{file_path}'.") + return None + +# Example usage: +# settings_data = read_settings("settings.json") +# if settings_data: +# print(settings_data) diff --git a/tools/gfx_search/subscripts/templatebuilder.py b/tools/gfx_search/subscripts/templatebuilder.py new file mode 100644 index 000000000..c9ef9d480 --- /dev/null +++ b/tools/gfx_search/subscripts/templatebuilder.py @@ -0,0 +1,10 @@ + +def write_template(template_path, output_path, replace_dict): + with open(template_path, 'r') as template: + t = template.read() + for key, value in replace_dict.items(): + t = t.replace(key, value) + + f = open(output_path, "w") + f.write(t) + f.close() diff --git a/tools/gfx_search/templates/gfx_search_category_template.html b/tools/gfx_search/templates/gfx_search_category_template.html new file mode 100644 index 000000000..677c411d9 --- /dev/null +++ b/tools/gfx_search/templates/gfx_search_category_template.html @@ -0,0 +1,162 @@ + + + + + + + + + + HoI4-LotR GFX Search + + + + +
+ +
+

HoI4 LotR Mod GFX Search

+

$CATEGORY_NAME_TOKEN$

+
+ + + +
Search for icons and click on them to copy their GFX entry!
+ +
+ +
+ +
+
+ +
+ + + +
+ + $IMAGE_LIST_TOKEN$ +
+ +
+ This website is intended to aid in the development of the fan-made Lord of the Rings Mod for Hearts of Iron IV +
+ Concept inspired by HoI4-GFX-Search (made by Yard1) +
+
+ +
+ + + + + \ No newline at end of file diff --git a/tools/goals.bat b/tools/goals.bat index e5ce2c1e2..f56d75381 100644 --- a/tools/goals.bat +++ b/tools/goals.bat @@ -1,2 +1,3 @@ python.exe .\make_gfx.py -s goals -o lotr_goals +python.exe .\make_gfx.py -s shines -o lotr_shines pause \ No newline at end of file diff --git a/tools/misc/get_diff_locs.py b/tools/misc/get_diff_locs.py new file mode 100644 index 000000000..a1b110165 --- /dev/null +++ b/tools/misc/get_diff_locs.py @@ -0,0 +1,52 @@ +import re + + +# This script lets you find the differences in two loc files + + +def custom_yaml_parser(file_content): + data = {} + duplicate_keys = set() + current_key = None + + lines = file_content.split('\n') + for line in lines: + # Use regular expression to extract key, value, and string + match = re.match(r'^\s*([a-zA-Z0-9_]+)(:\d+)?\s+"(.+)"\s*$', line) + if match: + key, _, value = match.groups() + if key in data: + duplicate_keys.add(key) + data[key] = value + elif current_key: + # Handle multi-line strings + data[current_key] += f'\n{line.strip()}' + + if duplicate_keys: + print("Warning: Duplicate keys found in the YAML file:", ', '.join(duplicate_keys)) + + return data + +def load_yaml(file_path): + try: + with open(file_path, 'r', encoding='utf-8') as file: + file_content = file.read() + return custom_yaml_parser(file_content) + except Exception as e: + print(f"Error loading YAML file {file_path}: {e}") + return {} + +vanilla = load_yaml(r'C:\Program Files (x86)\Steam\steamapps\common\Hearts of Iron IV BETA\localisation\english\unit_l_english.yml') +custom = load_yaml(r'C:\Users\Kahl\Documents\Paradox Interactive\Hearts of Iron IV\mod\lotr\localisation\english\replace\unit_l_english.yml') + +#for key, value in data.items(): +# print(f"Key: {key}") +# print(f"Value: {value}") +# print("-" * 20) + +for key, value in custom.items(): + if key not in vanilla: + print(key+":0 \""+value+"\"") + else: + if value != vanilla[key]: + print(key+":0 \""+value+"\"") \ No newline at end of file diff --git a/tools/misc/pull_locs_from_gui.py b/tools/misc/pull_locs_from_gui.py new file mode 100644 index 000000000..a09cfbe89 --- /dev/null +++ b/tools/misc/pull_locs_from_gui.py @@ -0,0 +1,46 @@ +import re + +def process_instant_text_boxes(input_file): + pattern = re.compile(r'instantTextBoxType\s*=\s*{((?:[^{}]*\{[^{}]*\}[^{}]*)*)}', re.DOTALL) + replacements = [] + + with open(input_file, 'r', encoding='utf-8') as file: + content = file.read() + matches = pattern.findall(content) + + for match in matches: + name_match = re.search(r'name\s*=\s*\"([^\"]+)\"', match) + text_match = re.search(r'text\s*=\s*\"([^\"]+)\"', match) + + if name_match and text_match: + name = name_match.group(1) + text = text_match.group(1) + + # Skip if text is an integer, "lol boat", or "Happy-Go-Lucky-Tank" + if text.isdigit() or text == "lol boat" or text == "Happy-Go-Lucky-Tank": + continue + + print(f"Name: {name}") + print(f"Text: {text}") + + confirmation = input("Do you want to replace the text? (y/n): ").lower() + if confirmation == 'y': + # Perform the replacement in the original content + content = re.sub(f'text\s*=\s*\"{re.escape(text)}\"', f'text = "{name}"', content) + + # Add to replacements list + replacements.append(f'{name}:0 "{text}"') + + # Output the list of processed occurrences + print("\nProcessed occurrences:") + for replacement in replacements: + print(replacement) + + # Write the modified content back to the file + with open(input_file, 'w', encoding='utf-8') as file: + file.write(content) + +# Example usage: +# Assuming your input file is named 'input.txt' +input_file = r'C:\Users\Kahl\Documents\Paradox Interactive\Hearts of Iron IV\mod\lotr\interface\countrytechtreeview.gui' +process_instant_text_boxes(input_file) diff --git a/tools/newseventpictures.bat b/tools/newseventpictures.bat index 2d233f215..42559ebdf 100644 --- a/tools/newseventpictures.bat +++ b/tools/newseventpictures.bat @@ -1,2 +1,2 @@ -python.exe .\make_gfx.py -s news_eventpictures -o newseventpictures +python.exe .\make_gfx.py -s news_eventpictures -o lotr_newsevents pause \ No newline at end of file diff --git a/tools/spirits.bat b/tools/spirits.bat index 4cece2fcc..3e551b5fa 100644 --- a/tools/spirits.bat +++ b/tools/spirits.bat @@ -1,2 +1,2 @@ -python.exe .\make_gfx.py -s spirits -o spirits +python.exe .\make_gfx.py -s spirits -o lotr_spirits pause \ No newline at end of file diff --git a/tools/subscripts/goals.py b/tools/subscripts/goals.py index 863d57ca9..4b9062060 100644 --- a/tools/subscripts/goals.py +++ b/tools/subscripts/goals.py @@ -9,36 +9,6 @@ name = GFX_goal_FILE_ID texturefile = FILE_PATH } - spriteType = { - name = GFX_goal_FILE_ID_shine - texturefile = FILE_PATH - effectFile = gfx/FX/buttonstate.lua - animation = { - animationmaskfile = FILE_PATH - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = -90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - animation = { - animationmaskfile = FILE_PATH - animationtexturefile = gfx/interface/goals/shine_overlay.dds - animationrotation = 90.0 - animationlooping = no - animationtime = 0.75 - animationdelay = 0 - animationblendmode = "add" - animationtype = "scrolling" - animationrotationoffset = { x = 0.0 y = 0.0 } - animationtexturescale = { x = 1.0 y = 1.0 } - } - legacy_lazy_load = no - } """ @@ -53,6 +23,9 @@ if file.endswith(".dds"): file_id = file[0:len(file)-4] file_path = os.path.join(root[6:], file).replace('\\', '/') + + # Ignore the shine-files + if file_id == "shine_mask" or file_id == "shine_overlay": continue print(str.replace("FILE_ID", file_id).replace("FILE_PATH", file_path)) diff --git a/tools/subscripts/shines.py b/tools/subscripts/shines.py new file mode 100644 index 000000000..ce73102d4 --- /dev/null +++ b/tools/subscripts/shines.py @@ -0,0 +1,60 @@ +import sys +import glob +import os + + + + +str = """ spriteType = { + name = GFX_goal_FILE_ID_shine + texturefile = FILE_PATH + effectFile = gfx/FX/buttonstate.lua + animation = { + animationmaskfile = FILE_PATH + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = -90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + animation = { + animationmaskfile = FILE_PATH + animationtexturefile = gfx/interface/goals/shine_overlay.dds + animationrotation = 90.0 + animationlooping = no + animationtime = 0.75 + animationdelay = 0 + animationblendmode = "add" + animationtype = "scrolling" + animationrotationoffset = { x = 0.0 y = 0.0 } + animationtexturescale = { x = 1.0 y = 1.0 } + } + legacy_lazy_load = no + } +""" + + + + +print("spriteTypes = {") +print("\t# This file was auto-generated by the GFX-Maker.py") + + +for root, dirs, files in os.walk("../../gfx/interface/goals"): + for file in files: + if file.endswith(".dds"): + file_id = file[0:len(file)-4] + file_path = os.path.join(root[6:], file).replace('\\', '/') + + # Ignore the shine-files + if file_id == "shine_mask" or file_id == "shine_overlay": continue + + print(str.replace("FILE_ID", file_id).replace("FILE_PATH", file_path)) + + +print("}") +exit(0) \ No newline at end of file