#	Example:
# 
#	example_effect = {
#		add_political_power = 66
#		add_popularity = {
#			ideology = fascism
#			popularity = 0.33
#		}
#	}
#
#
#	In a script file:
#
#	effect = {
#		example_effect = yes
#	}
#

#####################################
### emergency_factory_conversion ####
#####################################

#This is going to give misleading and ugly tooltips. Making it nice will take effort. TODO_WTT_CD make nice or ignore and remove comment. Easiest solution is just making a custom tooltip that says "5 civilian factories will be converted to military factories" and ignore telling the player the states where it will happen.

replace_civ_with_arms_factories = {	

	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}
	
	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}

	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}

	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}

	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}
}

#Country scope
ROOT_inherit_current_scope_wars_effect = {
	custom_effect_tooltip = ROOT_inherit_current_scope_wars_effect
	hidden_effect = {	
		every_country = {
			limit = {
				has_defensive_war_with = PREV
			}
			ROOT = { declare_war_on = { target = PREV type = annex_everything } }
		}
		every_country = {
			limit = {
				has_offensive_war_with = PREV
			}
			declare_war_on = { target = ROOT type = annex_everything }
		}
	}
}


print_variable_log_effect = {
	print_variables = {
		file = variables_yug
		append = yes
	}
}


remove_naval_treaty_effect = {
	if = {
		limit = {
			has_idea = MTG_naval_treaty_adherent
		}
		remove_ideas = MTG_naval_treaty_adherent
	}
	else_if = {
		limit = {
			has_idea = MTG_naval_treaty_cheating
		}
		remove_ideas = MTG_naval_treaty_cheating
	}
	else_if = {
		limit = {
			has_idea = MTG_naval_treaty_adherent_reduced
		}
		remove_ideas = MTG_naval_treaty_adherent_reduced
	}
	else_if = {
		limit = {
			has_idea = MTG_naval_treaty_cheating_reduced
		}
		remove_ideas = MTG_naval_treaty_cheating_reduced
	}
	set_country_flag = MTG_naval_treaty_abandoned
}

clear_sabotaged_resources_if_necesary = {
	if = {
		limit = {
			not = {
				has_dynamic_modifier = {
					modifier = sabotaged_resources
				}
			}
		}
		
		clear_variable = sabotaged_oil
		clear_variable = sabotaged_aluminium
		clear_variable = sabotaged_rubber
		clear_variable = sabotaged_tungsten
		clear_variable = sabotaged_steel
		clear_variable = sabotaged_chromium
	}
}

#expectes a temp variable country_to_initiate which should contain original_tag to instantiate as a collabration government
instantiate_collaboration_government = {
	custom_effect_tooltip = compliance_80_effect_tooltip
	hidden_effect = {
		set_variable = { collaboration_formed@var:country_to_initiate = 1 }
		
		if = {
			# if country_to_initiate does not exist, simply release it as a puppet
			limit = { 
				var:country_to_initiate = {
					exists = no
				}
			}
			var:country_to_initiate = { set_variable = { collaboration_formed_by = PREV } }
			release_autonomy = {
				target = country_to_initiate
				autonomy_state = autonomy_collaboration_government
				freedom_level = 0.5
				release_non_owned_controlled = yes
			}
		}
		else = {
			# if country_to_initiate exists, create a dynamic country as our new puppet
			
			create_dynamic_country = {
				original_tag = country_to_initiate
			
				set_variable = { collaboration_formed_by = PREV }
				set_temp_variable = { new_country = this }
				
				PREV = {
					every_controlled_state = {
						limit = { occupied_country_tag = country_to_initiate }
						
						var:new_country = {
							transfer_state = PREV
						}
					}
					
					puppet = new_country
					
					set_autonomy = {
						target = new_country
						autonomy_state = autonomy_collaboration_government
						freedom_level = 0.5
					}
				}
			}
		}
	}
}

on_daily = {

}

get_best_alliance_match_absolutist_effect = { #arguably a trigger, but it does stuff so we keep it in here. If this is your first time seeing this, welcome to my personal hell.
	if = {
		limit = {
			any_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = absolutist
				not = { has_war_with = ROOT }
				set_temp_variable = { ROOT.best_leader = this }
				set_temp_variable = { ROOT.best_leader_score = 0 }
			}
		}
	}
	if = {
		limit = {
			all_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = absolutist
				not = { has_war_with = ROOT }
				set_temp_variable = { this.leader_score = num_of_factories }
				add_to_temp_variable = { this.leader_score = num_battalions }
				all_of_scopes = {
					array = allies
					add_to_temp_variable = { PREV.leader_score = num_of_factories }
					add_to_temp_variable = { PREV.leader_score = num_battalions }
				}
				if = {
					limit = {
						capital_scope = {
							is_on_continent = ROOT
						}
					}
					multiply_temp_variable = { leader_score = 2 }
				}
				if = {
					limit = {
						any_neighbor_country = { tag = ROOT }
					}
					multiply_temp_variable = { leader_score = 1.25 }
				}
				if = {
					limit = {
						check_variable = { ROOT.best_leader_score < leader_score }
						set_temp_variable = { ROOT.best_leader = this }
						set_temp_variable = { ROOT.best_leader_score = leader_score }
					}
				}
			}
		}
	}
}

get_best_alliance_match_communism_effect = { #arguably a trigger, but it does stuff so we keep it in here. If this is your first time seeing this, welcome to my personal hell.
	if = {
		limit = {
			any_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = communism
				not = { has_war_with = ROOT }
				set_temp_variable = { ROOT.best_leader = this }
				set_temp_variable = { ROOT.best_leader_score = 0 }
			}
		}
	}
	if = {
		limit = {
			all_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = communism
				not = { has_war_with = ROOT }
				set_temp_variable = { this.leader_score = num_of_factories }
				add_to_temp_variable = { this.leader_score = num_battalions }
				all_of_scopes = {
					array = allies
					add_to_temp_variable = { PREV.leader_score = num_of_factories }
					add_to_temp_variable = { PREV.leader_score = num_battalions }
				}
				if = {
					limit = {
						capital_scope = {
							is_on_continent = ROOT
						}
					}
					multiply_temp_variable = { leader_score = 2 }
				}
				if = {
					limit = {
						any_neighbor_country = { tag = ROOT }
					}
					multiply_temp_variable = { leader_score = 1.25 }
				}
				if = {
					limit = {
						check_variable = { ROOT.best_leader_score < leader_score }
						set_temp_variable = { ROOT.best_leader = this }
						set_temp_variable = { ROOT.best_leader_score = leader_score }
					}
				}
			}
		}
	}
}

get_best_alliance_match_democratic_effect = { #arguably a trigger, but it does stuff so we keep it in here. If this is your first time seeing this, welcome to my personal hell.
	if = {
		limit = {
			any_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = democratic
				not = { has_war_with = ROOT }
				set_temp_variable = { ROOT.best_leader = this }
				set_temp_variable = { ROOT.best_leader_score = 0 }
			}
		}
	}
	if = {
		limit = {
			all_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = democratic
				not = { has_war_with = ROOT }
				set_temp_variable = { this.leader_score = num_of_factories }
				add_to_temp_variable = { this.leader_score = num_battalions }
				all_of_scopes = {
					array = allies
					add_to_temp_variable = { PREV.leader_score = num_of_factories }
					add_to_temp_variable = { PREV.leader_score = num_battalions }
				}
				if = {
					limit = {
						capital_scope = {
							is_on_continent = ROOT
						}
					}
					multiply_temp_variable = { leader_score = 2 }
				}
				if = {
					limit = {
						any_neighbor_country = { tag = ROOT }
					}
					multiply_temp_variable = { leader_score = 1.25 }
				}
				if = {
					limit = {
						check_variable = { ROOT.best_leader_score < leader_score }
						set_temp_variable = { ROOT.best_leader = this }
						set_temp_variable = { ROOT.best_leader_score = leader_score }
					}
				}
			}
		}
	}
}

get_best_alliance_match_fascism_effect = { #arguably a trigger, but it does stuff so we keep it in here. If this is your first time seeing this, welcome to my personal hell.
	if = {
		limit = {
			any_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = fascism
				not = { has_war_with = ROOT }
				set_temp_variable = { ROOT.best_leader = this }
				set_temp_variable = { ROOT.best_leader_score = 0 }
			}
		}
	}
	if = {
		limit = {
			all_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = fascism
				not = { has_war_with = ROOT }
				set_temp_variable = { this.leader_score = num_of_factories }
				add_to_temp_variable = { this.leader_score = num_battalions }
				all_of_scopes = {
					array = allies
					add_to_temp_variable = { PREV.leader_score = num_of_factories }
					add_to_temp_variable = { PREV.leader_score = num_battalions }
				}
				if = {
					limit = {
						capital_scope = {
							is_on_continent = ROOT
						}
					}
					multiply_temp_variable = { leader_score = 2 }
				}
				if = {
					limit = {
						any_neighbor_country = { tag = ROOT }
					}
					multiply_temp_variable = { leader_score = 1.25 }
				}
				if = {
					limit = {
						check_variable = { ROOT.best_leader_score < leader_score }
						set_temp_variable = { ROOT.best_leader = this }
						set_temp_variable = { ROOT.best_leader_score = leader_score }
					}
				}
			}
		}
	}
}

get_best_alliance_match_radical_effect = { #arguably a trigger, but it does stuff so we keep it in here. If this is your first time seeing this, welcome to my personal hell.
	if = {
		limit = {
			any_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = radical
				not = { has_war_with = ROOT }
				set_temp_variable = { ROOT.best_leader = this }
				set_temp_variable = { ROOT.best_leader_score = 0 }
			}
		}
	}
	if = {
		limit = {
			all_other_country = {
				is_faction_leader = yes
				is_major = yes
				has_government = radical
				not = { has_war_with = ROOT }
				set_temp_variable = { this.leader_score = num_of_factories }
				add_to_temp_variable = { this.leader_score = num_battalions }
				all_of_scopes = {
					array = allies
					add_to_temp_variable = { PREV.leader_score = num_of_factories }
					add_to_temp_variable = { PREV.leader_score = num_battalions }
				}
				if = {
					limit = {
						capital_scope = {
							is_on_continent = ROOT
						}
					}
					multiply_temp_variable = { leader_score = 2 }
				}
				if = {
					limit = {
						any_neighbor_country = { tag = ROOT }
					}
					multiply_temp_variable = { leader_score = 1.25 }
				}
				if = {
					limit = {
						check_variable = { ROOT.best_leader_score < leader_score }
						set_temp_variable = { ROOT.best_leader = this }
						set_temp_variable = { ROOT.best_leader_score = leader_score }
					}
				}
			}
		}
	}
}
remove_from_allowed_party = {
	if = {
		limit = { has_government = absolutist }
		set_temp_variable = { allowed_party_absolutist = 0 }
	}
	else_if = {
		limit = { has_government = communism }
		set_temp_variable = { allowed_party_communism = 0 }
	}
	else_if = {
		limit = { has_government = democratic }
		set_temp_variable = { allowed_party_democratic = 0 }
	}
	else_if = {
		limit = { has_government = fascism }
		set_temp_variable = { allowed_party_fascism = 0 }
	}
	else_if = {
		limit = { has_government = neutrality }
		set_temp_variable = { allowed_party_neutrality = 0 }
	}
	else_if = {
		limit = { has_government = radical }
		set_temp_variable = { allowed_party_radical = 0 }
	}
}
