﻿on_game_start_after_lobby = {
	on_actions = {
		on_game_start_after_lobby_olympia_culling
	}
}

on_game_start_after_lobby_olympia_culling = {
	events = {
		olympia_culling.1000
		olympia_culling.2000	#Upfront, massive culling at start of game
	}
}

yearly_global_pulse = {
	on_actions = {
		yearly_global_pulse_acotw
	}
}

yearly_global_pulse_acotw = {
	events = {
		olympia_culling.1001	#Checks dipolomatic ranges, then triggers 1009 to apply correct traits and modifiers
	}
}

five_year_playable_pulse = {
	on_actions = {
		five_year_playable_pulse_acotw
	}
}

five_year_playable_pulse_acotw = {
	events = {
		olympia_culling.1004	#Check if the correct modifiers are in place for ruler AI rarely needed fire only once every 5 years
	}
}

five_year_everyone_pulse = {
	on_actions = {
		five_year_everyone_pulse_acotw
	}
}

five_year_everyone_pulse_acotw = {
	trigger = {
		has_trait = acotw_obscured
		olympia_possible_cull_trigger = yes
	}
	
	events = {
		olympia_culling.1002	#Cull the Weak
	}
}

on_birthday = {
	on_actions = {
		on_birthday_acotw_ruler_every_year
	}
}

on_birthday_acotw_ruler_every_year = {
	events = {
		olympia_culling.1005	#Check to see if you have the correct obscured status as do your courtiers
		olympia_culling.1010	#Check on ruler's birthday if they are still obscured or not, spreading out the checks throughout the year instead of on Jan 1
	}
}

on_guest_arrived_from_pool = {
	on_actions = {
		on_guest_arrived_from_pool_acotw
	}
}

on_guest_arrived_from_pool_acotw = {

	events = {
		olympia_culling.1006	#Add/Remove any Obscurity Traits & Modifers as determined by the new Liege
	}
}

on_join_court = {
	on_actions = {
		on_join_court_acotw
	}
	
}

on_join_court_acotw = {

	events = {
		olympia_culling.1006	#Add/Remove any Obscurity Traits & Modifers as determined by the new Liege
	}
}

on_birth_child = {
	on_actions = {
		on_birth_child_acotw
	}
}

on_birth_child_acotw = {

	events = {
		olympia_culling.1007	#Adds immunity to cull flags to important characters even if obscured
	}
}

on_domicile_moved = {
	on_actions = {
		on_domicile_moved_acotw
	}
}

on_domicile_moved_acotw = {
	trigger = {
		scope:owner = { is_ai = no }				#Any time a player changes their domicile (typically their camp) recheck obscurity
	}
	
	effect = {
		scope:owner = {
			#trigger_event = olympia_culling.1008
			trigger_event = olympia_culling.1009
		}
	}
}

on_death = {
	on_actions = {
		on_death_acotw
	}
}

on_death_acotw = {
	effect = {
		if = {
			limit = {
				is_ai = no
				OR = {
					has_character_modifier = acotw_olympia_adjust_diplomatic_range_75
					has_character_modifier = acotw_olympia_adjust_diplomatic_range_50
					has_character_modifier = acotw_olympia_adjust_diplomatic_range_25
					
					has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_75
					has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_50
					has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_25
				}
			}
			
			if = {
				limit = { has_character_modifier = acotw_olympia_adjust_diplomatic_range_75 }
				player_heir ?= {
					add_character_modifier = acotw_olympia_adjust_diplomatic_range_75
				}
			}
			else_if = {
				limit = { has_character_modifier = acotw_olympia_adjust_diplomatic_range_50 }
				player_heir ?= {
					add_character_modifier = acotw_olympia_adjust_diplomatic_range_50
				}
			}
			else_if = {
				limit = { has_character_modifier = acotw_olympia_adjust_diplomatic_range_25 }
				player_heir ?= {
					add_character_modifier = acotw_olympia_adjust_diplomatic_range_25
				}
			}
			
			else_if = {
				limit = { has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_75 }
				player_heir ?= {
					add_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_75
				}
			}
			else_if = {
				limit = { has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_50 }
				player_heir ?= {
					add_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_50
				}
			}
			else_if = {
				limit = { has_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_25 }
				player_heir ?= {
					add_character_modifier = acotw_landless_olympia_adjust_diplomatic_range_25
				}
			}
		}

		if = {
			limit = {
				is_ruler = yes
				has_trait = acotw_obscured
				exists = primary_heir	
			}
			primary_heir ?= {
				actow_olympia_add_health_modifiers = yes
				actow_olympia_add_heir_modifiers = yes
			}
		}
	}
}

on_war_started = {
	on_actions = {
		on_war_started_acotw
	}
}

on_war_started_acotw = {
	effect = {
		scope:war = { olympia_acotw_clear_modifiers_for_war = yes }
	}
}

on_war_transferred = {
	on_actions = {
		on_war_transferred_acotw
	}
}

on_war_transferred_acotw = {
	effect = {
		scope:war = { olympia_acotw_clear_modifiers_for_war = yes }
	}
}

on_join_war_as_secondary = {
	on_actions = {
		on_join_war_as_secondary_acotw
	}
}

on_join_war_as_secondary_acotw = {
	effect = {	
		scope:war = { olympia_acotw_clear_modifiers_for_war = yes }
	}
}

on_war_invalidated = {
	on_actions = {
		on_war_invalidated_acotw
	}
}

on_war_white_peace = {
	on_actions = {
		on_war_white_peace_acotw
	}
}

on_war_won_attacker = {
	on_actions = {
		on_war_won_attacker_acotw
	}
}

on_war_white_peace_acotw = {
	effect = {
		scope:war = { olympia_acotw_clear_immunity_flags_for_peace = yes }
	}
}

on_war_invalidated_acotw = {
	effect = {
		scope:war = { olympia_acotw_clear_immunity_flags_for_peace = yes }
	}
}

on_war_won_attacker_acotw = {
	effect = {
		scope:war = { olympia_acotw_clear_immunity_flags_for_peace = yes }
	}
}