namespace = est_chivalry

#Chivalry adopt, previous ruler gets chivalry trait.
country_event = {
	id = est_chivalry.1
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_adopt
		from = {
			Not = {
				has_trait = leader_trait_admiral_est_chivalry
				has_trait = leader_trait_general_est_chivalry
				has_trait = leader_trait_governor_est_chivalry
				has_trait = leader_trait_scientist_est_chivalry
			}		
		}
	}

	immediate = {
		from = {
			if = {
				limit = { leader_class = admiral }
				add_trait = leader_trait_admiral_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = general }
				add_trait = leader_trait_general_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = governor }
				add_trait = leader_trait_governor_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = scientist }
				add_trait = leader_trait_scientist_est_chivalry
				break = yes
			}
		}
	}
}
	
#Chivalry adopt, spawned leader gets chivalry trait.
country_event = {
	id = est_chivalry.2
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_adopt
		from = {
			Not = {
				has_trait = leader_trait_admiral_est_chivalry
				has_trait = leader_trait_general_est_chivalry
				has_trait = leader_trait_governor_est_chivalry
				has_trait = leader_trait_scientist_est_chivalry
			}		
		}
	}

	immediate = {
		from = {
			if = {
				limit = { leader_class = admiral }
				add_trait = leader_trait_admiral_est_chivalry
				add_ruler_trait = leader_trait_ruler_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = general }
				add_trait = leader_trait_general_est_chivalry
				add_ruler_trait = leader_trait_ruler_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = governor }
				add_trait = leader_trait_governor_est_chivalry
				add_ruler_trait = leader_trait_ruler_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = scientist }
				add_trait = leader_trait_scientist_est_chivalry
				add_ruler_trait = leader_trait_ruler_est_chivalry
				break = yes
			}
			if = {
				limit = { leader_class = ruler }
				add_ruler_trait = leader_trait_ruler_est_chivalry
				break = yes
			}
		}
	}
}

#Chivalry adopt, hero trait on defense.
country_event = {
	id = est_chivalry.3
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_adopt
	}
	
	immediate = {
		fromfrom = {
			set_timed_planet_flag = {
				flag = est_chivalry_adopt_tmp_planet_flag
				days = 1
			}
		}
		random_list = {
			1 = {}
			1 = {
				random_owned_army = {
					limit = {
						exists = leader
						planet = {
							has_planet_flag = est_chivalry_adopt_tmp_planet_flag
						}
					}
					leader = {
						add_trait = leader_trait_general_est_chivalry_hero
						add_ruler_trait = leader_trait_ruler_est_chivalry_hero
					}
				}
			}
		}
	}	
}

#Chivalry adopt, hero trait on conquest.
country_event = {
	id = est_chivalry.4
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_adopt
		fromfrom = {
			exists = leader
		}
	}
	
	immediate = {
		fromfrom = {
			set_timed_planet_flag = {
				flag = est_chivalry_adopt_tmp_planet_flag
				days = 1
			}
		}
		random_list = {
			4 = {}
			1 = {
				random_owned_army = {
					limit = {
						exists = leader
						planet = {
							has_planet_flag = est_chivalry_adopt_tmp_planet_flag
						}
					}
					leader = {
						add_trait = leader_trait_general_est_chivalry_hero
						add_ruler_trait = leader_trait_ruler_est_chivalry_hero
					}
				}
			}
		}
	}	
}

#Chivalry adopt, hero trait on fleet victory.
country_event = {
	id = est_chivalry.5
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_adopt
		fromfrom = {
			exists = leader		
		}
	}
	
	immediate = {
		fromfrom = {
			if = {
				limit = {
					has_hp_percentage > 0.95
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.8
				}
				random_list = {
					9 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.6
				}
				random_list = {
					6 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.4
				}
				random_list = {
					3 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.2
				}
				random_list = {
					1 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			random_list = {
				1 = {}
				3 = {
					leader = {
						add_trait = leader_trait_admiral_est_chivalry_hero
						add_ruler_trait = leader_trait_ruler_est_chivalry_hero
					
					}
				}
			}
		}
	}	
}

#Chivalry adopt, hero trait on fleet victory, emergency FTL. Only one admiral can gain the trait.
fleet_event = {
	id = est_chivalry.6
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		any_combatant_fleet = {
			owner = {
				has_active_tradition = tr_est_chivalry_adopt
			}
			exists = leader			
		}	
	}
	
	immediate = {
		every_combatant_fleet = {
			limit = {
				owner = {
					has_active_tradition = tr_est_chivalry_adopt
				}
				exists = leader		
			}
			if = {
				limit = {
					has_hp_percentage > 0.95
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.8
				}
				random_list = {
					9 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.6
				}
				random_list = {
					6 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					has_hp_percentage > 0.4
				}
				random_list = {
					3 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			if = {
				limit = {
					fromfrom = {
						has_hp_percentage > 0.2
					}
				}
				random_list = {
					1 = {}
					1 = {
						leader = {
							add_trait = leader_trait_admiral_est_chivalry_hero
							add_ruler_trait = leader_trait_ruler_est_chivalry_hero
						
						}
					}
				}
				break = yes
			}
			random_list = {
				1 = {}
				3 = {
					leader = {
						add_trait = leader_trait_admiral_est_chivalry_hero
						add_ruler_trait = leader_trait_ruler_est_chivalry_hero
					
					}
				}
			}
		}
	}	
}

#Chivalry 5, gives unity when destroying ships.
country_event = {
	id = est_chivalry.7
	hide_window = yes
	is_triggered_only = yes
	
	trigger = {
		has_active_tradition = tr_est_chivalry_5
	}
	
	immediate = {
		FromFromFrom = {
			switch = {
				trigger = is_ship_size
				
				corvette = { root = {add_resource = { unity = 5 } } break = yes}
				destroyer = { root = {add_resource = { unity = 20 } } break = yes}
				cruiser = { root = {add_resource = { unity = 80 } } break = yes}
				battleship = { root = {add_resource = { unity = 160 } } break = yes}
				titan = { root = {add_resource = { unity = 640 } } break = yes}
				
				transport = { break = yes}
				constructor = { break = yes}
				colonizer = { break = yes}
				science = { break = yes}
				
				military_station_small = { root = {add_resource = { unity = 20 } } break = yes}
				military_station_medium = { root = {add_resource = { unity = 60 } } break = yes}
				military_station_large = { root = {add_resource = { unity = 120 } } break = yes}				
				
				mining_station = { break = yes}
				research_station = { break = yes}					
				observation_station = { break = yes}
				
				starbase_outpost = { root = {add_resource = { unity = 20 } } break = yes}
				starbase_starport = { root = {add_resource = { unity = 80 } } break = yes}
				starbase_starhold = { root = {add_resource = { unity = 160 } } break = yes}
				starbase_starfortress = { root = {add_resource = { unity = 320 } } break = yes}
				starbase_citadel = { root = {add_resource = { unity = 640 } } break = yes}

				starbase_swarm = { root = {add_resource = { unity = 160 } } break = yes}
				starbase_ai = { root = {add_resource = { unity = 160 } } break = yes}
				starbase_exd = { root = {add_resource = { unity = 160 } } break = yes}
				starbase_marauder = { root = {add_resource = { unity = 160 } } break = yes}
				ion_cannon = { root = {add_resource = { unity = 80 } } break = yes}

				colossus  = { root = {add_resource = { unity = 2500 } } break = yes}
				
				small_ship_swarm = { root = {add_resource = { unity = 5 } } break = yes}
				large_ship_swarm = { root = {add_resource = { unity = 20 } } break = yes}
				large_ship_carrier_swarm = { root = {add_resource = { unity = 80 } } break = yes}
				queen_swarm = { root = {add_resource = { unity = 160 } } break = yes}
				construction_ship_swarm = { break = yes}
				colony_ship_swarm = { break = yes}
				transport_ship_swarm = { break = yes}
				 
				small_ship_fallen_empire = { root = {add_resource = { unity = 30 } } break = yes}
				large_ship_fallen_empire = { root = {add_resource = { unity = 160 } } break = yes}
				massive_ship_fallen_empire = { root = {add_resource = { unity = 600 } } break = yes}
				military_station_large_fallen_empire = { root = {add_resource = { unity = 240 } } break = yes}
				military_station_small_fallen_empire = { root = {add_resource = { unity = 30 } } break = yes}
				 
				small_ship_ed = { root = {add_resource = { unity = 20 } } break = yes}
				medium_ship_ed = { root = {add_resource = { unity = 80 } } break = yes}
				large_ship_ed = { root = {add_resource = { unity = 160 } } break = yes}
				construction_ship_ed = { break = yes}
				dimensional_portal_ed = { break = yes}
				 
				psionic_avatar = { root = {add_resource = { unity = 600 } } break = yes}
				corrupted_avatar = { root = {add_resource = { unity = 600 } } break = yes}
				shroud_manifestation = { root = {add_resource = { unity = 600 } } break = yes}
				warped_consciousness = { root = {add_resource = { unity = 600 } } break = yes}
				
				enclave_station = { break = yes}
				space_dragon_red = { root = {add_resource = { unity = 5000 } } break = yes}
				stellarite = { root = {add_resource = { unity = 5000 } } break = yes}
				sphere = { root = {add_resource = { unity = 5000 } } break = yes}
				galleon = { root = {add_resource = { unity = 2500 } } break = yes}
				station_xl = { root = {add_resource = { unity = 2500 } } break = yes}
				station_l = { root = {add_resource = { unity = 1200 } } break = yes}
				station_m = { root = {add_resource = { unity = 1200 } } break = yes}
				station_s = { root = {add_resource = { unity = 160 } } break = yes}
				station_xs = { root = {add_resource = { unity = 60 } } break = yes}
				dimensional_horror = { root = {add_resource = { unity = 5000 } } break = yes}
				npc_warship_01 = { root = {add_resource = { unity = 1200 } } break = yes}
				homebase = { root = {add_resource = { unity = 1200 } } break = yes}
				hive_asteroid = { root = {add_resource = { unity = 600 } } break = yes}
				wraith_01_blue = { root = {add_resource = { unity = 5000 } } break = yes}
				wraith_01_red = { root = {add_resource = { unity = 5000 } } break = yes}
				wraith_01_yellow = { root = {add_resource = { unity = 5000 } } break = yes}
				space_dragon_baby = { root = {add_resource = { unity = 600 } } break = yes}
				 				 
				pirate_corvette = { root = {add_resource = { unity = 5 } } break = yes}
				pirate_destroyer = { root = {add_resource = { unity = 20 } } break = yes}
				pirate_cruiser = { root = {add_resource = { unity = 80 } } break = yes}
				pirate_station = { root = {add_resource = { unity = 40 } } break = yes}				 
				 
				marauder_corvette = { root = {add_resource = { unity = 5 } } break = yes}
				marauder_destroyer = { root = {add_resource = { unity = 20 } } break = yes}
				marauder_cruiser = { root = {add_resource = { unity = 80 } } break = yes}
				marauder_galleon = { root = {add_resource = { unity = 160 } } break = yes}
				marauder_station = { root = {add_resource = { unity = 40 } } break = yes}
				marauder_void_dwelling = { break = yes}				
				
				space_cloud = { root = {add_resource = { unity = 80 } } break = yes}
				space_amoeba = { root = {add_resource = { unity = 20 } } break = yes}
				space_amoeba_mother = { root = {add_resource = { unity = 80 } } break = yes}
				ancient_mining_drone = { root = {add_resource = { unity = 5 } } break = yes}
				ancient_corvette = { root = {add_resource = { unity = 5 } } break = yes}
				ancient_destroyer = { root = {add_resource = { unity = 20 } } break = yes}				
				
				small_ship_ai = { root = {add_resource = { unity = 80 } } break = yes}
				large_ship_ai = { root = {add_resource = { unity = 10 } } break = yes}
				military_station_large_ai = { root = {add_resource = { unity = 100 } } break = yes}
				military_station_small_ai = { root = {add_resource = { unity = 40 } } break = yes}
				core_ai = { break = yes}
				final_core_ai = { break = yes}
				construction_ship_ai = { break = yes}
				colony_ship_ai = { break = yes}
				transport_ship_ai = { break = yes}
			}
			root = {
				add_resource = { unity = 5 }
			} 
		}		
	}
}

#Chivalry finish, select a virtue.
country_event = {
	id = est_chivalry.8
	#hide_window = yes
	is_triggered_only = yes
	title = "est_chivalry_finish.name"
	desc =  "est_chivalry_finish.desc"
	picture = GFX_evt_throne_room
	
	trigger = {
		has_active_tradition = tr_est_chivalry_finish
	}
	
	immediate = {
		switch = {
			trigger = has_modifier 
			
			mod_est_chivalry_finish_courage = { remove_modifier = "mod_est_chivalry_finish_courage" }
			mod_est_chivalry_finish_charity = { remove_modifier = "mod_est_chivalry_finish_charity" }
			mod_est_chivalry_finish_humility = { remove_modifier = "mod_est_chivalry_finish_humility" }
			mod_est_chivalry_finish_duty = { remove_modifier = "mod_est_chivalry_finish_duty" }
			mod_est_chivalry_finish_kindness = { remove_modifier = "mod_est_chivalry_finish_kindness" }
			mod_est_chivalry_finish_patience = { remove_modifier = "mod_est_chivalry_finish_patience" }
			mod_est_chivalry_finish_moderation = { remove_modifier = "mod_est_chivalry_finish_moderation" }
			mod_est_chivalry_finish_diligence = { remove_modifier = "mod_est_chivalry_finish_diligence" }
		}
	}
	
	option = {
		name = "est_chivalty_finish.option.courage"
		add_modifier = {
			modifier = mod_est_chivalry_finish_courage
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.charity"
		add_modifier = {
			modifier = mod_est_chivalry_finish_charity
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.humility"
		custom_tooltip = "est_chivalty_finish_humility_tooltip"
		add_modifier = {
			modifier = mod_est_chivalry_finish_humility
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.duty"
		add_modifier = {
			modifier = mod_est_chivalry_finish_duty
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.kindness"
		add_modifier = {
			modifier = mod_est_chivalry_finish_kindness
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.patience"
		add_modifier = {
			modifier = mod_est_chivalry_finish_patience
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.moderation"
		add_modifier = {
			modifier = mod_est_chivalry_finish_moderation
			days = -1
		}
	}
	option = {
		name = "est_chivalty_finish.option.diligence"
		add_modifier = {
			modifier = mod_est_chivalry_finish_diligence
			days = -1
		}
	}	
}

