######################################################################
### GLOBAL ON_ACTION — 基础设施层（不含国家历史 / 叙事系统钩子）
######################################################################
on_yearly_pulse = {
	on_actions = {
		ztr_main_script_on_yearly_pulse
	}
}

ztr_main_script_on_yearly_pulse = {
	effect = {
		every_country = {
			limit = {
				OR = {
					has_technology_researched = modern_urban_planning
					year > 1950
				}
				NOT = {
					has_building = building_modern_state_baseline
				}
			}
			capital = {
				create_building = {
					building = "building_modern_state_baseline"
					level = 1
				}
			}
		}
		every_country = {
			limit = {
				any_scope_state = {
					is_capital = no
					OR = {
						has_building = building_research_center
						has_building = building_fusion_power_plant
						has_building = building_modern_state_baseline
					}
					count > 0
				}
			}
			every_scope_state = {
				limit = {
					is_capital = no
					OR = {
						has_building = building_research_center
						has_building = building_fusion_power_plant
						has_building = building_modern_state_baseline
					}
				}
				remove_building = building_research_center
				remove_building = building_fusion_power_plant
				remove_building = building_modern_state_baseline
			}
		}
		every_country = {
			limit = {
				NOT = {
					has_variable = has_progressist_ideology
				}
				has_technology_researched = human_rights
			}
			set_variable = {
				name = has_progressist_ideology
				value = 1
			}
			ztr_apply_early_progressist_ideologies = yes
		}
		every_country = {
			limit = {
				has_variable = has_progressist_ideology
				var:has_progressist_ideology = 1
				has_technology_researched = socialdemocracy
			}
			change_variable = {
				name = has_progressist_ideology
				add = 1
			}
			ztr_apply_mid_progressist_ideologies = yes
		}
		every_country = {
			limit = {
				has_variable = has_progressist_ideology
				var:has_progressist_ideology = 2
				has_technology_researched = neoliberism
			}
			change_variable = {
				name = has_progressist_ideology
				add = 1
			}
			ztr_apply_late_progressist_ideologies = yes
		}
	}
}

#####################################################################
### COUNTRY ON_ACTION — 通用机制（GDP 分级、医疗、耕地、核能建筑清理）
#####################################################################
on_yearly_pulse_country = {
	on_actions = {
		economy_update_on_yearly_pulse_country
		healthcare_on_yearly_pulse_country
		arable_land_on_yearly_pulse_country
		atomic_on_yearly_pulse_country
		modern_individualism_on_yearly_pulse_country
	}
}

modern_individualism_on_yearly_pulse_country = {
	events = {
		ztr_modern_individualism.1
	}
}

economy_update_on_yearly_pulse_country = {
	events = {
		ztr_economic_update.1
		ztr_economic_update.2
		ztr_economic_update.3
		ztr_economic_update.4
		ztr_economic_update.5
		ztr_economic_update.6
		ztr_economic_update.7
		ztr_economic_update.8
		ztr_economic_update.9
		ztr_economic_update.10
		ztr_economic_update.11
		ztr_economic_update.12
		ztr_economic_update.13
		ztr_economic_update.14
		ztr_economic_update.15
		ztr_economic_update.16
		ztr_economic_update.17
	}
}

healthcare_on_yearly_pulse_country = {
	events = {
		ztr_healthcare.1
		ztr_healthcare.2
		ztr_healthcare.3
		ztr_healthcare.4
		ztr_healthcare.5
	}
}

arable_land_on_yearly_pulse_country = {
	events = {
		ztr_arable_land.1
		ztr_arable_land.2
	}
}

atomic_on_yearly_pulse_country = {
	events = {
		nuclear_warfare_system.2
	}
	effect = {
		if = {
			limit = {
				NOT = {
					has_modifier = nuclear_capability
				}
				NOT = {
					has_variable = nuclear_program_started
				}
				any_scope_state = {
					any_scope_building = {
						OR = {
							is_building_type = building_nuclear_weapons_silo
						}
					}
				}
			}
			every_scope_state = {
				limit = {
					has_building = building_nuclear_weapons_silo
				}
				remove_building = building_nuclear_weapons_silo
			}
		}
		if = {
			limit = {
				has_variable = nuclear_program_started
				OR = {
					NOT = {
						has_law_or_variant = law_type:law_uranium_full_usage
					}
					has_variable = signed_nuclear_non_proliferation_treaty
					is_subject = yes
				}
			}
			remove_variable = nuclear_program_started
		}
	}
}

on_monthly_pulse_country = {
	on_actions = {
		yeet_pops_on_monthly_pulse_country
	}
}

yeet_pops_on_monthly_pulse_country = {
	events = {
		yeet_pops.1
		yeet_pops.2
	}
}

#####################################################################
### TECHNOLOGY ON_ACTION — 资源矿床随科技解锁
#####################################################################
on_acquired_technology = {
	on_actions = {
		on_acquired_technology_deposits
	}
}

on_acquired_technology_deposits = {
	effect = {
		if = {
			limit = {
				NOT = {
					has_global_variable = ztr_bauxite_added_var
				}
				has_technology_researched = bauxite_processing
			}
			set_global_variable = ztr_bauxite_added_var
			bauxite_nano_add_deposits = yes
			bauxite_small_add_deposits = yes
			bauxite_medium_add_deposits = yes
			bauxite_big_add_deposits = yes
			bauxite_huge_add_deposits = yes
		}
		if = {
			limit = {
				NOT = {
					has_global_variable = ztr_advancedores_added_var
				}
				has_technology_researched = quartz_glass
			}
			set_global_variable = ztr_advancedores_added_var
			advancedores_nano_add_deposits = yes
			advancedores_small_add_deposits = yes
			advancedores_medium_add_deposits = yes
			advancedores_big_add_deposits = yes
		}
		if = {
			limit = {
				NOT = {
					has_global_variable = ztr_uranium_added_var
				}
				has_technology_researched = verrier_modern_physics_tech
			}
			set_global_variable = ztr_uranium_added_var
			good_uranium_small_add_deposits = yes
			good_uranium_medium_add_deposits = yes
			good_uranium_big_add_deposits = yes
		}
		if = {
			limit = {
				NOT = {
					has_global_variable = ztr_gas_added_var
				}
				has_technology_researched = natural_gas_extraction
			}
			set_global_variable = ztr_gas_added_var
			gas_small_add_deposits = yes
			gas_medium_add_deposits = yes
			gas_big_add_deposits = yes
			gas_huge_add_deposits = yes
		}
		if = {
			limit = {
				NOT = {
					has_global_variable = ztr_rare_earths_added_var
				}
				has_technology_researched = rare_earths
			}
			set_global_variable = ztr_rare_earths_added_var
			rare_earths_small_add_deposits = yes
			rare_earths_medium_add_deposits = yes
			rare_earths_big_add_deposits = yes
		}
	}
}
