namespace = Plus

#reserved: Plus.1000 to Plus.1099

#######################################
# WAYLIT SIEGE EVENTS
#
# Original events by waylit
# Re-written by Rylock
#######################################

# On start of siege, send an event to the defender
character_event = {
	id = Plus.1000

	is_triggered_only = yes # on_siege_pulse
	hide_window = yes

	trigger = {
		siege = {
			is_attacker = yes

			enemy = { # There is a defending siege leader
				leader = {
					siege = {
						is_attacker = no
					}
				}
			}
		}

		rebel = no

		NOR = {
			has_landed_title = e_rebels

			any_liege = {
				OR = {
					rebel = yes
					has_landed_title = e_rebels
				}
			}
		}

		location = {
			any_province_lord = {
				is_capital = PREV

				capital_holding = {
					has_siege = yes
					is_occupied = no
				}

				OR = {
					AND = {
						at_location = ROOT
						is_inaccessible_trigger = no

						NOR = {
							has_character_modifier = left_at_siege
							has_character_modifier = stalwart_defender
						}
					}

					any_courtier = {
						host = { character = PREVPREV }
						at_location = ROOT
						prisoner = no
						is_inaccessible_trigger = no
						NOT = { character = PREV }

						OR = {
							dynasty = PREV
							is_ruler = yes
							any_close_relative = { is_ruler = yes }
						}

						NOR = {
							has_character_modifier = left_at_siege
							has_character_modifier = stalwart_defender
						}
					}
				}
			}
		}
	}

	immediate = {
		location = {
			random_province_lord = {
				limit = {
					is_capital = PREV

					capital_holding = {
						has_siege = yes
						is_occupied = no
					}

					OR = {
						AND = {
							at_location = ROOT
							is_inaccessible_trigger = no

							NOR = {
								has_character_modifier = left_at_siege
								has_character_modifier = stalwart_defender
							}
						}

						any_courtier = {
							host = { character = PREVPREV }
							at_location = ROOT
							prisoner = no
							is_inaccessible_trigger = no
							NOT = { character = PREV }

							OR = {
								dynasty = PREV
								is_ruler = yes
								any_close_relative = { is_ruler = yes }
							}

							NOR = {
								has_character_modifier = left_at_siege
								has_character_modifier = stalwart_defender
							}
						}
					}
				}

				save_event_target_as = siege_ruler

				any_courtier = {
					limit = {
						OR = {
							dynasty = PREV
							is_ruler = yes
							any_close_relative = { is_ruler = yes }
						}

						host = { character = PREVPREV }
						at_location = ROOT
						prisoner = no
						is_inaccessible_trigger = no
						NOT = { character = PREV }

						NOR = {
							is_close_relative = PREV
							has_character_modifier = left_at_siege
							has_character_modifier = stalwart_defender
						}
					}

					set_character_flag = in_danger

					if = {
						limit = { ai = yes }
						set_character_flag = siege_escape_@PREV
					}
					else = {
						character_event = { id = Plus.1002 }
					}
				}

				if = {
					limit = {
						OR = {
							AND = {
								at_location = ROOT
								is_inaccessible_trigger = no

								NOR = {
									has_character_modifier = left_at_siege
									has_character_modifier = stalwart_defender
								}
							}

							any_courtier = {
								is_close_relative = PREV
								at_location = ROOT
								host = { character = PREVPREV }
								prisoner = no
								is_inaccessible_trigger = no
								NOT = { character = PREV }

								NOR = {
									has_character_modifier = left_at_siege
									has_character_modifier = stalwart_defender
								}
							}
						}
					}

					character_event = { id = Plus.1001 }
				}
				else = {
					random_courtier = {
						limit = { has_character_flag = siege_escape_@PREV }
						character_event = { id = Plus.1003 }
					}
				}
			}
		}
	}
}

# Ruler notified of capital being besieged, given options
character_event = {
	id = Plus.1001
	title = EVTNAME_Plus_1001
	picture = GFX_evt_escape_siege
	border = GFX_event_normal_frame_war

	desc = {
		text = EVTDESC_Plus_1001
		trigger = {
			at_location = FROM
			is_adult = yes
			prisoner = no
			is_incapable = no
		}
	}
	desc = {
		text = EVTDESC_Plus_1001_prisoner
		trigger = {
			prisoner = yes
			at_location = FROM
		}
	}
	desc = {
		text = EVTDESC_Plus_1001_incapable
		trigger = {
			is_incapable = yes
			at_location = FROM
			prisoner = no
		}
	}
	desc = {
		text = EVTDESC_Plus_1001_child
		trigger = {
			is_adult = no
			at_location = FROM
			prisoner = no
			is_incapable = no
		}
	}
	desc = {
		text = EVTDESC_Plus_1001_away
		trigger = {
			NOT = { at_location = FROM }
		}
	}

	is_triggered_only = yes

	immediate = {
		save_event_target_as = siege_ruler

		if = {
			limit = {
				NAND = {
					at_location = FROM
					is_adult = yes
					prisoner = no
					is_incapable = no
				}
			}

			any_courtier = {
				limit = {
					is_close_relative = ROOT
					at_location = FROM
					host = { character = ROOT }
					prisoner = no
					is_inaccessible_trigger = no

					NOR = {
						has_character_modifier = left_at_siege
						has_character_modifier = stalwart_defender
					}
				}

				set_character_flag = in_danger
			}
		}

		if = {
			limit = {
				any_courtier = {
					is_close_relative = ROOT
					at_location = FROM
					host = { character = ROOT }
					prisoner = no
					is_inaccessible_trigger = no

					NOR = {
						has_character_modifier = left_at_siege
						has_character_modifier = stalwart_defender
					}
				}
			}

			set_character_flag = has_family_present
		}
	}

	option = {
		# Ruler is not present, prisoner, incapable, or child and cannot make decision
		# Any family present will automatically flee
		name = {
			text = EVTOPTA_Plus_1001
			trigger = {
				NOT = { at_location = FROM }
			}
		}
		name = {
			text = EVTOPTA_Plus_1001_prisoner
			trigger = {
				prisoner = yes
				at_location = FROM
			}
		}
		name = {
			text = EVTOPTA_Plus_1001_incapable
			trigger = {
				is_incapable = yes
				at_location = FROM
				prisoner = no
			}
		}
		name = {
			text = EVTOPTA_Plus_1001_child
			trigger = {
				is_adult = no
				at_location = FROM
				prisoner = no
				is_incapable = no
			}
		}

		if = {
			limit = {
				at_location = FROM
				prisoner = no
			}

			# Attempts to flee
			escape_siege_effect = yes
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				at_location = FROM
				host = { character = ROOT }
				prisoner = no
				is_inaccessible_trigger = no

				NOR = {
					has_character_modifier = left_at_siege
					has_character_modifier = stalwart_defender
				}
			}

			# Attempts to flee
			tooltip = { escape_siege_effect = yes }
			set_character_flag = siege_escape_@event_target:siege_ruler
		}

		clr_character_flag = has_family_present

		hidden_effect = {
			random_courtier = {
				limit = { has_character_flag = siege_escape_@event_target:siege_ruler }
				character_event = { id = Plus.1003 }
			}
		}
	}

	option = { # Ruler is present, flees on their own
		name = {
			text = EVTOPTB_Plus_1001_alone
			trigger = { NOT = { has_character_flag = has_family_present } }
		}
		name = {
			text = EVTOPTB_Plus_1001_family
			trigger = { has_character_flag = has_family_present }
		}

		trigger = {
			at_location = FROM
			prisoner = no
			is_incapable = no
			is_adult = yes
		}

		if = {
			limit = { has_character_flag = has_family_present }

			prestige = -50

			if = {
				limit = { trait = brave }
				remove_trait = brave
			}
			else_if = {
				limit = { NOT = { trait = craven } }

				random = {
					chance = 25
					add_trait_craven_effect = yes
				}
			}
		}

		random_list = {
			12 = {
				mult_modifier = {
					factor = 1.5
					trait = genius
				}

				mult_modifier = {
					factor = 1.25

					OR = {
						trait = quick
						trait = shrewd
					}
				}

				mult_modifier = {
					factor = 0.75
					trait = brave
				}

				mult_modifier = {
					factor = 1.25
					trait = craven
				}

				mult_modifier = {
					factor = 0.75
					trait = wounded
				}

				mult_modifier = {
					factor = 0.5
					trait = infirm
				}

				mult_modifier = {
					factor = 0.5
					is_maimed_trigger = yes
				}

				mult_modifier = {
					factor = 0.9

					intrigue < 2
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 0.9

					intrigue < 4
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 0.9

					intrigue < 6
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 0.9

					intrigue < 8
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 1.1

					intrigue >= 10
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 1.1
					is_adult = yes
					is_incapable = no
					intrigue = 12
				}

				mult_modifier = {
					factor = 1.1

					intrigue >= 14
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 1.1

					intrigue >= 16
					is_adult = yes
					is_incapable = no
				}

				mult_modifier = {
					factor = 1.1

					intrigue >= 18
					is_adult = yes
					is_incapable = no
				}

				custom_tooltip = {
					text = EVTTOOLTIPsiegehide

					add_trait = in_hiding
					set_character_flag = in_hiding_siege
				}
			}

			1 = {
				custom_tooltip = {
					text = EVTTOOLTIPsiegeremain

					set_character_flag = has_siege_effect

					add_character_modifier = {
						name = left_at_siege
						months = 6
					}
				}
			}
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				host = { character = ROOT }
				at_location = FROM
				prisoner = no
				is_inaccessible_trigger = no

				NOR = {
					has_character_modifier = left_at_siege
					has_character_modifier = stalwart_defender
				}
			}

			# Left behind
			clr_character_flag = in_danger

			custom_tooltip = {
				text = EVTTOOLTIPsiegeremain

				set_character_flag = has_siege_effect

				add_character_modifier = {
					name = left_at_siege
					months = 6
				}

				opinion = {
					name = opinion_outraged
					who = ROOT
					years = 3
				}
			}
		}

		clr_character_flag = has_family_present

		hidden_effect = {
			random_courtier = {
				limit = { has_character_flag = siege_escape_@event_target:siege_ruler }
				character_event = { id = Plus.1003 }
			}
		}

		ai_chance = {
			factor = 3

			trigger = { trait = craven }
		}
	}

	option = { # Ruler is present, flees with family
		name = EVTOPTC_Plus_1001

		trigger = {
			has_character_flag = has_family_present
			at_location = FROM
			is_adult = yes
			prisoner = no
			is_incapable = no
		}

		escape_siege_effect = yes

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				at_location = FROM
				host = { character = ROOT }
				prisoner = no
				is_inaccessible_trigger = no

				NOR = {
					has_character_modifier = left_at_siege
					has_character_modifier = stalwart_defender
				}
			}

			# Attempts to flee
			tooltip = { escape_siege_effect = yes }
			set_character_flag = siege_escape_@event_target:siege_ruler
		}

		clr_character_flag = has_family_present

		hidden_effect = {
			random_courtier = {
				limit = { has_character_flag = siege_escape_@event_target:siege_ruler }
				character_event = { id = Plus.1003 }
			}
		}

		ai_chance = { factor = 10 }
	}

	option = { # Ruler is present, stays to defend
		name = {
			text = EVTOPTD_Plus_1001_alone
			trigger = { NOT = { has_character_flag = has_family_present } }
		}
		name = {
			text = EVTOPTD_Plus_1001_family
			trigger = { has_character_flag = has_family_present }
		}

		trigger = {
			at_location = FROM
			is_adult = yes
			prisoner = no
			is_incapable = no
		}

		# Stalwart defender
		prestige = 50
		set_character_flag = has_siege_effect
		set_character_flag = defending_the_castle

		add_character_modifier = {
			name = stalwart_defender
			months = 6
		}

		if = {
			limit = { trait = craven }
			remove_trait = craven
		}
		else_if = {
			limit = { NOT = { trait = brave } }

			random = {
				chance = 25
				add_trait_brave_effect = yes
			}
		}

		hidden_effect = {
			any_courtier = {
				limit = {
					is_close_relative = ROOT
					at_location = FROM
					host = { character = ROOT }
					prisoner = no

					OR = {
						in_command = yes
						trait = brave
						martial >= 12
					}

					NOR = {
						has_character_modifier = left_at_siege
						has_character_modifier = stalwart_defender
						is_inaccessible_trigger = yes
					}
				}

				# Stalwart defender
				prestige = 25
				set_character_flag = has_siege_effect

				add_character_modifier = {
					name = stalwart_defender
					months = 6
				}
			}
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				NOT = { character = ROOT }
				host = { character = ROOT }
				at_location = FROM
				prisoner = no
				in_command = no
				martial < 12
				is_inaccessible_trigger = no

				NOR = {
					trait = brave
					has_character_modifier = left_at_siege
					has_character_modifier = stalwart_defender
				}
			}

			# Attempts to flee
			tooltip = { escape_siege_effect = yes }
			set_character_flag = siege_escape_@event_target:siege_ruler
		}

		clr_character_flag = has_family_present

		hidden_effect = {
			random_courtier = {
				limit = { has_character_flag = siege_escape_@event_target:siege_ruler }
				character_event = { id = Plus.1003 }
			}
		}

		ai_chance = {
			factor = 3

			trigger = {
				OR = {
					trait = brave
					trait = lunatic
					trait = possessed
					trait = proud
				}

				NOT = { trait = craven }
			}

			mult_modifier = {
				factor = 0.5
				real_tier = KING
			}

			mult_modifier = {
				factor = 0.25
				real_tier = EMPEROR
			}
		}
	}
}

# Player courtier decides whether to flee siege
character_event = {
	id = Plus.1002
	title = EVTNAME_Plus_1001
	picture = GFX_evt_escape_siege
	border = GFX_event_normal_frame_war

	desc = {
		text = EVTDESC_Plus_1001
		trigger = {
			is_adult = yes
			is_incapable = no
		}
	}
	desc = {
		text = EVTDESC_Plus_1001_incapable
		trigger = { is_incapable = yes }
	}
	desc = {
		text = EVTDESC_Plus_1001_child
		trigger = {
			is_adult = no
			is_incapable = no
		}
	}

	is_triggered_only = yes

	option = {
		name = EVTOPTB_Plus_1001_alone # Flee!

		escape_siege_effect = yes
		clr_character_flag = in_danger
	}

	option = {
		name = EVTOPTD_Plus_1001_alone # Valiantly remain

		trigger = {
			is_adult = yes
			is_incapable = no
		}

		prestige = 25

		add_character_modifier = {
			name = stalwart_defender
			months = 6
		}

		random = {
			chance = 25
			add_trait_partially_brave_effect = yes
		}

		clr_character_flag = in_danger
	}
}

# Randomized check for success
character_event = {
	id = Plus.1003

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		escape_siege_effect = yes
		clr_character_flag = siege_escape_@event_target:siege_ruler
		clr_character_flag = in_danger

		location = {
			random_province_character = {
				limit = { has_character_flag = siege_escape_@event_target:siege_ruler }
				character_event = { id = Plus.1003 }
			}
		}
	}
}

# Escape from a siege where you have not hidden
character_event = {
	id = Plus.1005 # formerly 1100099992
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1005
	picture = GFX_evt_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	only_rulers = yes
	min_age = 16
	only_capable = yes
	is_patrician = no
	prisoner = no

	trigger = {
		has_character_modifier = stalwart_defender
		at_location = FROM
		location = { is_capital = yes }
		health >= 4

		siege = {
			is_attacker = no

			enemy = {
				leader = {
					NOT = { has_landed_title = e_rebels }
					rebel = no
				}
			}
		}

		had_character_flag = {
			flag = defending_the_castle
			days >= 20
		}
	}

	option = {
		name = EVTOPTA_Plus_1005 # Slip out a postern door at midnight.

		hidden_effect = {
			clr_character_flag = defending_the_castle

			random = {
				chance = 25
				add_trait_fully_brave_effect = yes
			}

			random = {
				chance = 10
				remove_trait_slothful_effect = yes
			}

			random = {
				chance = 10
				remove_trait_content_effect = yes
			}
		}

		random_list = {
			33 = {
				character_event = {
					id = Plus.1007
					tooltip = EVTTOOLTIPsiegeescaped
				}
			}

			66 = {
				custom_tooltip = {
					text = EVTTOOLTIPsiegecapturedenemy
					set_character_flag = captured
				}

				character_event = { id = Plus.1006 }
				siege = { enemy = { leader = { character_event = { id = Plus.1010 } } } }
			}
		}

		ai_chance = {
			factor = 0.75

			mult_modifier = {
				factor = 0.5
				trait = craven
			}

			mult_modifier = {
				factor = 2
				trait = brave
			}

			mult_modifier = {
				factor = 1.5
				trait = ambitious
			}

			mult_modifier = {
				factor = 0.75
				trait = slothful
			}
		}
	}

	option = {
		name = EVTOPTB_Plus_1005 # Brave the sewers

		hidden_effect = {
			clr_character_flag = defending_the_castle

			random = {
				chance = 25
				add_trait_fully_brave_effect = yes
			}

			random = {
				chance = 25
				add_trait_fully_humble_effect = yes
			}

			random = {
				chance = 10
				add_trait_slothful_effect = yes
			}

			random = {
				chance = 10
				remove_trait_content_effect = yes
			}

			random = {
				chance = 10
				give_ill_effect = yes
			}

			random = {
				chance = 5
				add_trait_wounded_effect = yes
			}

			random = {
				chance = 5
				give_pneumonic_effect = yes
			}

			random = {
				chance = 5
				add_trait_infirm_effect =yes
			}

			random = {
				chance = 1
				add_maimed_trait_effect = yes
			}
		}

		custom_tooltip = {
			text = dis_chance

			random = {
				chance = 1
				give_consumption_effect = yes
			}

			random = {
				chance = 1
				give_bubonic_plague_effect = yes
			}

			random = {
				chance = 1
				give_slow_fever_effect = yes
			}

			random = {
				chance = 1
				give_food_poisoning_effect = yes
			}

			random = {
				chance = 1
				give_smallpox_effect = yes
			}

			random = {
				chance = 1
				give_measles_effect = yes
			}

			random = {
				chance = 1
				add_trait = leper
			}
		}

		random_list = {
			75 = {
				character_event = {
					id = Plus.1008
					tooltip = EVTTOOLTIPsiegeescaped
				}
			}

			25 = {
				custom_tooltip = {
					text = EVTTOOLTIPsiegecapturedenemy

					set_character_flag = captured
					character_event = { id = Plus.1006 }
					siege = { enemy = { leader = { character_event = { id = Plus.1010 } } } }
				}
			}
		}

		ai_chance = {
			factor = 0.5

			mult_modifier = {
				factor = 5
				trait = ambitious
			}

			mult_modifier = {
				factor = 20
				trait = brave
			}

			mult_modifier = {
				factor = 20
				trait = humble
			}

			mult_modifier = {
				factor = 0.5
				trait = craven
			}

			mult_modifier = {
				factor = 0.75
				trait = slothful
			}
		}
	}

	option = {
		name = EVTOPTC_Plus_1005 # Just give me a rope...

		trigger = {
			is_ill = no
			is_weak_trigger = no
		}

		clr_character_flag = defending_the_castle

		hidden_effect = {
			random = {
				chance = 50
				add_trait_fully_brave_effect = yes
			}

			random = {
				chance = 50
				add_trait_fully_proud_effect = yes
			}

			random = {
				chance = 20
				add_trait_lunatic_effect = yes
			}

			random = {
				chance = 20
				add_trait_fully_trusting_effect = yes
			}

			random = {
				chance = 20
				remove_trait_slothful_effect = yes
				remove_trait_content_effect = yes
			}

			random = {
				chance = 5
				add_trait_wounded_effect = yes
			}

			random = {
				chance = 10
				add_maimed_trait_effect = yes
			}
		}

		random_list = {
			70 = {
				character_event = {
					id = Plus.1009
					tooltip = EVTTOOLTIPsiegeescaped
				}
			}

			20 = {
				custom_tooltip = {
					text = EVTTOOLTIPsiegecapturedenemy

					set_character_flag = captured
					character_event = { id = Plus.1006 }
					siege = { enemy = { leader = { character_event = { id = Plus.1010 } } } }
				}
			}

			10 = {
				death = { death_reason = death_battle }
			}
		}

		ai_chance = {
			factor = 0.1

			mult_modifier = {
				factor = 5
				trait = ambitious
			}

			mult_modifier = {
				factor = 20
				trait = lunatic
			}

			mult_modifier = {
				factor = 20
				trait = possessed
			}

			mult_modifier = {
				factor = 10
				trait = brave
			}

			mult_modifier = {
				factor = 0.5
				trait = craven
			}

			mult_modifier = {
				factor = 0.5
				trait = slothful
			}

			mult_modifier = {
				factor = 0.1
				trait = clubfooted
			}
		}
	}

	option = {
		name = EVTOPTD_Plus_1005 # I think it's better we wait.

		hidden_effect = {
			clr_character_flag = defending_the_castle

			random = {
				chance = 25
				add_trait_fully_patient_effect = yes
			}

			random = {
				chance = 25
				add_trait_stressed_effect = yes
			}

			random = {
				chance = 5
				add_trait_fully_craven_effect = yes
			}

			random = {
				chance = 5
				add_trait_fully_temperate_effect = yes
			}

			random = {
				chance = 5
				add_trait_fully_paranoid_effect = yes
			}
		}

		ai_chance = {
			factor = 5

			mult_modifier = {
				factor = 2
				trait = content
			}

			mult_modifier = {
				factor = 2
				trait = patient
			}

			mult_modifier = {
				factor = 2
				trait = craven
			}

			mult_modifier = {
				factor = 0.5
				trait = ambitious
			}

			mult_modifier = {
				factor = 0.1
				trait = brave
			}

			mult_modifier = {
				factor = 2
				trait = slothful
			}
		}
	}
}

# Captured by the enemy while trying to flee the castle
character_event = {
	id = Plus.1006 # formerly 1100099993
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1006
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = CURSES

		remove_character_modifier = stalwart_defender

		custom_tooltip = { text = EVTTOOLWAYfamilyhatesyou }
	}
}

# Successful escape by postern door
character_event = {
	id = Plus.1007 # formerly 1100099994
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1007
	picture = GFX_evt_escape_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTTOOLTIPsiegeescaped

		add_trait = in_hiding
		set_character_flag = in_hiding_siege

		hidden_effect = {
			remove_character_modifier = left_at_siege
			remove_character_modifier = stalwart_defender
		}

		add_character_modifier = {
			name = escaped_siege
			years = 1
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				at_location = ROOT
				in_command = no
				is_inaccessible_trigger = no
			}

			opinion = {
				name = left_behind
				who = ROOT
				years = 1
			}
		}
	}
}

# Successful escape by sewer
character_event = {
	id = Plus.1008 # formerly 1100099995
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1008
	picture = GFX_evt_escape_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTTOOLTIPsiegeescaped

		add_trait = in_hiding
		set_character_flag = in_hiding_siege

		hidden_effect = {
			remove_character_modifier = left_at_siege
			remove_character_modifier = stalwart_defender
		}

		add_character_modifier = {
			name = escaped_siege
			years = 1
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				at_location = ROOT
				in_command = no
				is_inaccessible_trigger = no
			}

			opinion = {
				name = left_behind
				who = ROOT
				years = 1
			}
		}
	}
}

# Successful escape by wall
character_event = {
	id = Plus.1009 # formerly 1100099996
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1009
	picture = GFX_evt_escape_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTTOOLTIPsiegeescaped

		add_trait = in_hiding
		set_character_flag = in_hiding_siege

		hidden_effect = {
			remove_character_modifier = left_at_siege
			remove_character_modifier = stalwart_defender
		}

		add_character_modifier = {
			name = escaped_siege
			years = 1
		}

		any_courtier = {
			show_scope_change = no

			limit = {
				is_close_relative = ROOT
				at_location = ROOT
				in_command = no
				is_inaccessible_trigger = no
			}

			opinion = {
				name = left_behind
				who = ROOT
				years = 1
			}
		}
	}
}

# Notify siege leader that ruler was captured
character_event = {
	id = Plus.1010 # formerly 1100099997
	title = EVTNAME_Plus_1005
	desc = EVTDESC_Plus_1010
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTOPTA_Plus_1010

		siege = {
			show_scope_change = no

			enemy = {
				show_scope_change = no

				leader = {
					show_scope_change = no

					if = {
						limit = {
							has_character_flag = captured
							is_inaccessible_trigger = no
						}

						imprison = ROOT
						clr_character_flag = captured

						hidden_effect = {
							remove_character_modifier = left_at_siege
							remove_character_modifier = stalwart_defender

							any_courtier = {
								limit = {
									is_close_relative = PREV
									at_location = PREV
									in_command = no
									is_inaccessible_trigger = no
								}

								opinion = {
									name = left_behind
									who = PREV
									years = 1
								}
							}
						}
					}
				}
			}
		}
	}
}

### SIEGE SUCCESS EVENTS -- IMPRISONMENT

# Unit leader at the siege gets the main imprisonment event (if not unreformed pagan)
character_event = {
	id = Plus.1020

	is_triggered_only = yes # on_siege_won_leader
	hide_window = yes

	trigger = {
		rebel = no

		NOR = {
			has_landed_title = e_rebels
			has_landed_title = e_aztec_empire
			any_liege = { has_landed_title = e_aztec_empire }
		}

		OR = {
			is_not_unreformed_pagan_trigger = yes
			FROM = { holder_scope = { religion = ROOT } }
		}

		FROM = {
			holder_scope = {
				OR = {
					war_with = ROOT
					ROOT = { war_with = PREV }
				}
				NOT = { character = ROOT }
				capital_holding = { title = PREVPREV }
			}
		}
	}

	immediate = {
		FROM = {
			save_event_target_as = siege_holding
			holder_scope = { save_event_target_as = siege_owner }
		}

		location = { save_event_target_as = siege_province }

		if = {
			limit = {
				has_minor_title = title_commander

				liege = {
					event_target:siege_owner = {
						OR = { # Note: Not symmetric
							war_with = PREV
							PREV = { war_with = event_target:siege_owner }
						}
					}
				}
			}

			event_target:siege_owner = {
				if = {
					limit = {
						OR = {
							at_location = ROOT

							any_courtier = {
								OR = {
									is_ruler = yes
									dynasty = PREV
									any_close_relative = { is_ruler = yes }
								}

								at_location = ROOT
								in_command = no
								prisoner = no
							}
						}
					}

					ROOT = {
						liege = {
							character_event = { id = Plus.1021 } # Not present but family present
						}
					}
				}

				if = {
					limit = {
						any_courtier = {
							prisoner = yes
							host = { character = PREVPREV }
						}
					}

					ROOT = {
						liege = {
							character_event = { id = Plus.1024 } # Prisoners present
						}
					}
				}
			}
		}
		else_if = {
			limit = {
				is_ruler = yes

				event_target:siege_owner = {
					OR = { # Note: Not symmetric
						war_with = PREV
						PREV = { war_with = event_target:siege_owner }
					}
				}
			}

			event_target:siege_owner = {
				if = {
					limit = {
						OR = {
							at_location = ROOT

							any_courtier = {
								OR = {
									is_ruler = yes
									dynasty = PREV
									any_close_relative = { is_ruler = yes }
								}

								at_location = ROOT
								in_command = no
								prisoner = no
							}
						}
					}

					ROOT = {
						character_event = { id = Plus.1021 } # Not present but family present
					}
				}

				if = {
					limit = {
						any_courtier = {
							prisoner = yes
							host = { character = PREVPREV }
						}
					}

					ROOT = {
						character_event = { id = Plus.1024 } # Prisoners present
					}
				}
			}
		}
	}
}

# Siege resolution - normal
character_event = {
	id = Plus.1021
	desc = EVTDESC_Plus_1021
	picture = GFX_evt_siege
	border = GFX_event_normal_frame_war

	desc = {
		text = EVTDESC_Plus_1021
		trigger = {
			event_target:siege_owner = {
				at_location = FROM
				is_inaccessible_trigger = no
			}
		}
	}
	desc = {
		text = EVTDESC_Plus_1022
		trigger = {
			event_target:siege_owner = {
				at_location = FROM
				is_inaccessible_trigger = yes
			}
		}
	}
	desc = {
		text = EVTDESC_Plus_1023
		trigger = {
			event_target:siege_owner = {
				NOT = { at_location = FROM }
			}
		}
	}

	is_triggered_only = yes
	hide_from = yes

	immediate = {
		save_event_target_as = siege_attacker
	}

	option = {
		name = {
			text = EVTOPTA_Plus_1021 # Take him prisoner at once
			trigger = { event_target:siege_owner = { is_inaccessible_trigger = no } }
		}
		name = {
			text = EVTOPTA_Plus_1022 # Find him -- he's the only one we want
			trigger = { event_target:siege_owner = { is_inaccessible_trigger = yes } }
		}

		trigger = {
			event_target:siege_owner = { at_location = FROM }
		}

		if = {
			limit = {
				NOT = { trait = just }

				event_target:siege_owner = {
					any_courtier = {
						OR = {
							is_ruler = yes
							dynasty = PREV
							any_close_relative = { is_ruler = yes }
						}

						at_location = FROM
						prisoner = no
						in_command = no
					}
				}
			}

			random = {
				chance = 5
				add_trait_partially_just_effect = yes
			}
		}

		event_target:siege_owner = {
			show_scope_change = no

			siege_capture_check_effect = yes
		}

		ai_chance = {
			factor = 10

			mult_modifier = {
				factor = 50
				event_target:siege_owner = { higher_real_tier_than = COUNT }
			}

			mult_modifier = {
				factor = 100
				event_target:siege_owner = { higher_real_tier_than = DUKE }
			}

			mult_modifier = {
				factor = 0.25
				event_target:siege_owner = { lower_real_tier_than = COUNT }
			}

			mult_modifier = {
				factor = 2
				trait = cruel
			}

			mult_modifier = {
				factor = 2
				trait = greedy
			}

			mult_modifier = {
				factor = 2
				trait = envious
			}

			mult_modifier = {
				factor = 10
				trait = impaler
			}

			mult_modifier = {
				factor = 10
				trait = wroth
			}

			mult_modifier = {
				factor = 0.25
				trait = charitable
			}

			mult_modifier = {
				factor = 1.5
				trait = just
			}
		}
	}

	option = {
		name = {
			text = EVTOPTB_Plus_1021 # Imprison him and anyone else we find
			trigger = {
				event_target:siege_owner = {
					at_location = FROM
					is_inaccessible_trigger = no
				}
			}
		}
		name = {
			text = EVTOPTB_Plus_1022 # Find him and anyone else of importance
			trigger = {
				event_target:siege_owner = {
					at_location = FROM
					is_inaccessible_trigger = yes
				}
			}
		}
		name = {
			text = EVTOPTA_Plus_1023 # Grab anyone of importance we can find
			trigger = {
				event_target:siege_owner = {
					NOT = { at_location = FROM }
				}
			}
		}

		trigger = {
			event_target:siege_owner = {
				any_courtier = {
					OR = {
						is_ruler = yes
						dynasty = PREV
						any_close_relative = { is_ruler = yes }
					}

					at_location = FROM
					prisoner = no
					in_command = no
				}
			}
		}

		ai_chance = {
			factor = 0.5

			trigger = { NOT = { trait = kind } }

			mult_modifier = {
				factor = 0.1
				event_target:siege_owner = { lower_real_tier_than = COUNT }
			}

			mult_modifier = {
				factor = 40

				event_target:siege_owner = {
					any_dynasty_member = { higher_real_tier_than = COUNT }
				}
			}

			mult_modifier = {
				factor = 100

				event_target:siege_owner = {
					any_dynasty_member = { higher_real_tier_than = DUKE }
				}
			}

			mult_modifier = {
				factor = 8
				trait = cruel
			}

			mult_modifier = {
				factor = 8
				trait = greedy
			}

			mult_modifier = {
				factor = 20
				trait = impaler
			}

			mult_modifier = {
				factor = 20
				trait = wroth
			}
		}

		random = {
			chance = 10
			add_trait_partially_greedy_effect = yes
		}

		event_target:siege_owner = {
			if = {
				limit = { at_location = FROM }

				siege_capture_check_effect = yes
				custom_tooltip = { text = ALL_HOST_COURTIERS }

				any_courtier = {
					show_scope_change = no

					limit = {
						OR = {
							is_ruler = yes
							dynasty = PREV
							any_close_relative = { is_ruler = yes }
						}

						at_location = FROM
						host = { character = event_target:siege_owner }
						prisoner = no
						in_command = no
						NOT = { character = event_target:siege_owner }
					}

					set_character_flag = siege_capture_@event_target:siege_owner
					tooltip = { siege_capture_check_effect = yes }
				}

				hidden_effect = {
					random_courtier = {
						limit = { has_character_flag = siege_capture_@event_target:siege_owner }
						character_event = { id = Plus.1034 }
					}
				}
			}
		}
	}

	option = {
		name = {
			text = EVTOPTC_Plus_1021 # Kill him and anyone else within
			trigger = {
				event_target:siege_owner = {
					at_location = FROM
					is_inaccessible_trigger = no
				}
			}
		}
		name = {
			text = EVTOPTC_Plus_1022 # Kill everyone we can find
			trigger = {
				event_target:siege_owner = {
					NAND = {
						at_location = FROM
						is_inaccessible_trigger = no
					}
				}
			}
		}

		trigger = {
			NOR = {
				trait = just
				trait = kind
			}
		}

		if = {
			limit = { lifestyle_traits < 1 }

			random = {
				chance = 50
				add_trait = impaler
			}
		}

		random = {
			chance = 50
			add_trait_fully_cruel_effect = yes
		}

		random = {
			chance = 20
			add_trait_fully_arbitrary_effect = yes
		}

		if = {
			limit = { religion = event_target:siege_owner }
			dishonorable_plus_1_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			if = {
				limit = { at_location = FROM }

				siege_kill_check_effect = yes
				custom_tooltip = { text = ALL_HOST_COURTIERS }

				any_courtier = {
					show_scope_change = no

					limit = {
						OR = {
							is_ruler = yes
							dynasty = PREV
							any_close_relative = { is_ruler = yes }
						}

						at_location = FROM
						host = { character = event_target:siege_owner }
						prisoner = no
						in_command = no
						NOT = { character = event_target:siege_owner }
					}

					set_character_flag = siege_kill_@event_target:siege_owner
					tooltip = { siege_kill_check_effect = yes }
				}

				hidden_effect = {
					random_courtier = {
						limit = { has_character_flag = siege_kill_@event_target:siege_owner }
						character_event = { id = Plus.1035 }
					}
				}
			}
		}

		ai_chance = {
			factor = 0.5

			trigger = {
				NOT = { is_close_relative = event_target:siege_owner }

				trigger_if = {
					limit = { independent = no }

					liege = {
						NOR = {
							is_close_relative = event_target:siege_owner
							dynasty = event_target:siege_owner
						}
					}
				}
			}

			mult_modifier = {
				factor = 0.1
				dynasty = event_target:siege_owner
			}

			mult_modifier = {
				factor = 20
				trait = cruel
			}

			mult_modifier = {
				factor = 10
				trait = arbitrary
			}

			mult_modifier = {
				factor = 0.5
				trait = diligent
			}

			mult_modifier = {
				factor = 20
				trait = impaler
			}

			mult_modifier = {
				factor = 20
				trait = wroth
			}

			mult_modifier = {
				factor = 0.3
				trait = charitable
			}

			mult_modifier = {
				factor = 0.3
				trait = humble
			}

			mult_modifier = {
				factor = 0.5
				trait = honest
			}
		}
	}

	option = {
		name = {
			text = EVTOPTD_Plus_1021 # Leave him and his family be
			trigger = {
				event_target:siege_owner = {
					at_location = FROM
				}
			}
		}
		name = {
			text = EVTOPTC_Plus_1023 #Leave them be.
			trigger = {
				event_target:siege_owner = {
					NOT = { at_location = FROM }
				}
			}
		}

		ai_chance = {
			factor = 1

			mult_modifier = {
				factor = 10
				trait = kind
			}

			mult_modifier = {
				factor = 3
				trait = charitable
			}

			mult_modifier = {
				factor = 3
				trait = humble
			}

			mult_modifier = {
				factor = 0.5
				trait = wroth
			}

			mult_modifier = {
				factor = 0.5
				trait = greedy
			}

			mult_modifier = {
				factor = 0.5
				trait = cruel
			}
		}

		random = {
			chance = 10
			add_trait_partially_kind_effect = yes
		}

		random = {
			chance = 10
			add_trait_partially_charitable_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			if = {
				limit = { at_location = FROM }

				opinion = {
					name = opinion_relieved
					who = ROOT
					years = 1
				}
			}

			any_courtier = {
				show_scope_change = no

				limit = {
					OR = {
						is_ruler = yes
						dynasty = PREV
						any_close_relative = { is_ruler = yes }
					}

					at_location = FROM
					host = { character = event_target:siege_owner }
					prisoner = no
					in_command = no
					NOT = { character = event_target:siege_owner }
				}

				opinion = {
					name = opinion_relieved
					who = ROOT
					years = 1
				}
			}
		}
	}
}

# Attacker gets the option to release any prisoners within
character_event = {
	id = Plus.1024
	desc = EVTDESC_Plus_1024
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_war

	is_triggered_only = yes
	hide_from = yes

	option = {
		name = EVTOPTA_Plus_1024 # Release all prisoners

		trigger = {
			event_target:siege_owner = {
				war_with = ROOT

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}
			}
		}

		random = {
			chance = 10
			add_trait_partially_kind_effect = yes
		}

		random = {
			chance = 10
			add_trait_partially_charitable_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			any_courtier = {
				show_scope_change = no

				limit = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}

				imprison = no
			}
		}

		ai_chance = {
			factor = 0.25

			trigger = {
				NOR = {
					trait = cruel
					trait = greedy
				}
			}

			mult_modifier = {
				factor = 2
				trait = kind
			}

			mult_modifier = {
				factor = 2
				trait = trusting
			}

			mult_modifier = {
				factor = 2
				trait = charitable
			}

			mult_modifier = {
				factor = 0.5
				trait = wroth
			}

			mult_modifier = {
				factor = 0.5
				trait = cynical
			}

			mult_modifier = {
				factor = 0.5
				trait = paranoid
			}
		}
	}

	option = {
		name = EVTOPTB_Plus_1024 # Transfer them to my dungeon!

		trigger = {
			event_target:siege_owner = {
				war_with = ROOT

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}

				NOT = {
					any_courtier = {
						prisoner = yes
						host = { character = event_target:siege_owner }

						OR = {
							dynasty = ROOT
							is_close_relative = ROOT
						}
					}
				}
			}
		}

		ai_chance = {
			factor = 0.1

			trigger = {
				NOR = {
					trait = kind
					trait = charitable
				}
			}

			mult_modifier = {
				factor = 0.1
				trait = just
			}

			mult_modifier = {
				factor = 10
				trait = ambitious
			}

			mult_modifier = {
				factor = 10
				trait = cruel
			}

			mult_modifier = {
				factor = 10
				trait = greedy
			}

			mult_modifier = {
				factor = 5
				trait = wroth
			}

			mult_modifier = {
				factor = 5
				trait = cynical
			}

			mult_modifier = {
				factor = 5
				trait = paranoid
			}
		}

		random = {
			chance = 10
			add_trait_partially_cruel_effect = yes
		}

		random = {
			chance = 10
			add_trait_partially_greedy_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			any_courtier = {
				show_scope_change = no

				limit = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}

				custom_tooltip = {
					text = MOVED_TO_MY_DUNGEON

					imprison = no
					imprison = ROOT
				}

				opinion = {
					name = opinion_angry
					who = ROOT
					years = 5
				}
			}
		}
	}

	option = {
		name = EVTOPTC_Plus_1024 # Release anyone within whom we have common cause

		trigger = {
			event_target:siege_owner = {
				war_with = ROOT

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }
					NOT = { war_with = ROOT }

					OR = {
						war_with = PREV
						same_realm = ROOT
						is_vassal_or_below_of = ROOT
						is_liege_or_above_of = ROOT
					}
				}
			}
		}

		random = {
			chance = 10
			add_trait_partially_just_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			any_courtier = {
				show_scope_change = no

				limit = {
					prisoner = yes
					host = { character = event_target:siege_owner }
					NOT = { war_with = ROOT }

					OR = {
						war_with = PREV
						same_realm = ROOT
						is_vassal_or_below_of = ROOT
						is_liege_or_above_of = ROOT
					}
				}

				imprison = no
			}
		}

		ai_chance = {
			factor = 1.5

			mult_modifier = {
				factor = 2
				trait = kind
			}

			mult_modifier = {
				factor = 2
				trait = trusting
			}

			mult_modifier = {
				factor = 2
				trait = just
			}

			mult_modifier = {
				factor = 0.5
				trait = cruel
			}

			mult_modifier = {
				factor = 0.5
				trait = wroth
			}

			mult_modifier = {
				factor = 0.5
				trait = cynical
			}

			mult_modifier = {
				factor = 0.5
				trait = paranoid
			}
		}
	}

	option = {
		name = EVTOPTD_Plus_1024 # Release only my relatives

		trigger = {
			event_target:siege_owner = {
				war_with = ROOT

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }

					OR = {
						is_close_relative = ROOT
						dynasty = ROOT
					}
				}

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }

					NOR = {
						is_close_relative = ROOT
						dynasty = ROOT
					}
				}
			}
		}

		random = {
			chance = 10
			add_trait_partially_paranoid_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			any_courtier = {
				show_scope_change = no

				limit = {
					prisoner = yes
					host = { character = event_target:siege_owner }

					OR = {
						is_close_relative = ROOT
						dynasty = ROOT
					}
				}

				imprison = no
			}
		}

		ai_chance = {
			factor = 0.75

			mult_modifier = {
				factor = 0.9
				trait = kind
			}

			mult_modifier = {
				factor = 0.9
				trait = trusting
			}

			mult_modifier = {
				factor = 0.75
				trait = just
			}

			mult_modifier = {
				factor = 1.5
				trait = cruel
			}

			mult_modifier = {
				factor = 1.5
				trait = wroth
			}

			mult_modifier = {
				factor = 2
				trait = cynical
			}

			mult_modifier = {
				factor = 2
				trait = paranoid
			}
		}
	}

	option = {
		name = EVTOPTE_Plus_1024 # Leave them

		trigger = {
			event_target:siege_owner = {
				war_with = ROOT

				any_courtier = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}
			}
		}

		random = {
			chance = 20
			add_trait_partially_cruel_effect = yes
		}

		event_target:siege_owner = {
			show_scope_change = no

			any_courtier = {
				show_scope_change = no

				limit = {
					prisoner = yes
					host = { character = event_target:siege_owner }
				}

				opinion = {
					name = left_to_rot
					who = ROOT
					years = 5
				}
			}
		}

		ai_chance = {
			factor = 0.01

			mult_modifier = {
				factor = 0.1
				trait = kind
			}

			mult_modifier = {
				factor = 0.1
				trait = just
			}

			mult_modifier = {
				factor = 10
				trait = ambitious
			}

			mult_modifier = {
				factor = 10
				trait = cruel
			}

			mult_modifier = {
				factor = 10
				trait = wroth
			}

			mult_modifier = {
				factor = 10
				trait = cynical
			}

			mult_modifier = {
				factor = 10
				trait = paranoid
			}
		}
	}
}

# When liberating a friendly castle
character_event = {
	id = Plus.1025

	is_triggered_only = yes
	hide_window = yes

	trigger = {
		rebel = no
		is_looting = no

		NOR = {
			has_landed_title = e_rebels
			has_landed_title = e_aztec_empire
			any_liege = { has_landed_title = e_aztec_empire }
		}

		FROM = {
			holder_scope = {
				NOR = {
					war_with = ROOT
					character = ROOT
				}
			}
		}
	}

	immediate = {
		prestige = 10

		FROM = {
			holder_scope = {
				if = {
					limit = { at_location = ROOT }

					opinion = {
						name = liberated
						who = ROOT
						years = 1
					}

					remove_character_modifier = stalwart_defender
					remove_character_modifier = left_at_siege
				}

				any_courtier = {
					if = {
						limit = {
							at_location = ROOT
							NOT = { war_with = ROOT }
						}

						opinion = {
							name = liberated
							who = ROOT
							years = 1
						}

						remove_character_modifier = stalwart_defender
						remove_character_modifier = left_at_siege
					}
				}
			}
		}
	}
}

# Character notified that they were killed by siege
character_event = {
	id = Plus.1026
	desc = EVTDESC_Plus_1026
	picture = GFX_evt_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTOPTA_Plus_1026

		death = {
			death_reason = death_battle
			killer = event_target:siege_attacker
		}

		hidden_effect = {
			event_target:siege_attacker = {
				ROOT = { save_event_target_as = kinslayer_target }
				add_kinslayer_trait_effect = yes

				if = {
					limit = { is_married = ROOT }

					ROOT = {
						any_dynasty_member = {
							limit = {
								NOR = {
									character = event_target:siege_attacker

									has_opinion_modifier = {
										name = executed_kin
										who = event_target:siege_attacker
									}
								}
							}

							opinion = {
								name = executed_kin
								who = event_target:siege_attacker
								years = 100
							}
						}
					}
				}
			}

			any_close_relative = {
				limit = {
					OR = {
						is_parent_of = PREV
						is_child_of = PREV
						sibling = PREV
						is_married = PREV
					}

					NOT = { character = event_target:siege_attacker }
				}

				opinion = {
					name = executed_kin
					who = event_target:siege_attacker
					years = 10
				}
			}
		}
	}
}

# Character notified that they were taken prisoner during siege
character_event = {
	id = Plus.1027
	desc = EVTDESC_Plus_1027
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = CURSES

		log = EVTDESC_Plus_1027
		imprison = event_target:siege_attacker
		event_target:siege_attacker = { character_event = { id = Plus.1028 } }
	}
}

# Notification to a human attacker that a prisoner was taken
character_event = {
	id = Plus.1028
	desc = EVTDESC62101
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_war

	is_triggered_only = yes
	notification = yes

	ai = no

	option = {
		name = OK
	}
}

# Unit leader at the siege gets the main imprisonment event
character_event = {
	id = Plus.1030

	is_triggered_only = yes
	hide_window = yes

	trigger = {
		is_unreformed_pagan_trigger = yes
		rebel = no

		NOR = {
			has_landed_title = e_rebels
			has_landed_title = e_aztec_empire
			any_liege = { has_landed_title = e_aztec_empire }
		}

		FROM = {
			holder_scope = {
				capital_holding = { title = PREVPREV }

				NOR = {
					religion = ROOT
					character = ROOT
				}

				OR = { # Found war_with was not commutative with raiding ver 2.8.1.1
					war_with = ROOT
					ROOT = { war_with = PREV }
				}
			}
		}
	}

	immediate = {
		FROM = {
			save_event_target_as = siege_holding
			holder_scope = { save_event_target_as = siege_owner }
		}

		location = { save_event_target_as = siege_province }

		top_liege = {
			any_realm_character = {
				limit = {
					is_adult = yes
					at_location = ROOT
					prisoner = no
				}

				set_character_flag = wants_to_loot
			}
		}

		if = {
			limit = {
				has_minor_title = title_commander

				liege = {
					event_target:siege_owner = {
						OR = { # Note: Not symmetric
							war_with = PREV
							PREV = { war_with = event_target:siege_owner }
						}
					}
				}
			}

			liege = {
				character_event = { id = Plus.1031 } # Base post-looting event
			}

			event_target:siege_owner = {
				if = {
					limit = {
						any_courtier = {
							prisoner = yes
							host = { character = event_target:siege_owner }
						}
					}

					ROOT = {
						liege = {
							character_event = { id = Plus.1024 } # Prisoners present
						}
					}
				}
			}
		}
		else_if = {
			limit = {
				is_ruler = yes

				event_target:siege_owner = {
					OR = { # Note: Not symmetric
						war_with = PREV
						PREV = { war_with = event_target:siege_owner }
					}
				}
			}

			character_event = { id = Plus.1031 } # Base post-looting event

			event_target:siege_owner = {
				if = {
					limit = {
						any_courtier = {
							prisoner = yes
							host = { character = event_target:siege_owner }
						}
					}

					ROOT = {
						character_event = { id = Plus.1024 } # Prisoners present
					}
				}
			}
		}
	}
}

# Post-looting event for unreformed pagans
character_event = {
	id = Plus.1031
	desc = EVTDESC_Plus_1031
	picture = GFX_evt_siege
	border = GFX_event_normal_frame_war

	is_triggered_only = yes
	hide_from = yes

	immediate = {
		save_event_target_as = siege_attacker
	}

	option = {
		name = EVTOPTA_Plus_1031 # I want prisoners

		trigger = {
			event_target:siege_owner = {
				OR = {
					at_location = FROM

					any_courtier = {
						at_location = FROM
						prisoner = no

						OR = {
							is_ruler = yes
							is_consort = yes
							any_close_relative = { is_ruler = yes }
							wealth >= 25

							trigger_if = {
								limit = { is_female = yes }

								is_adult = yes
								practical_age < 28
								is_lowborn = no
								NOT = { trait = ugly }
							}
						}
					}
				}
			}
		}

		prestige = -25

		custom_tooltip = {
			text = MEN_ARE_ANGERED

			hidden_tooltip = {
				generate_tooltip = no

				top_liege = {
					any_realm_character = {
						limit = { has_character_flag = wants_to_loot }

						opinion = {
							name = not_allowed_to_loot
							who = ROOT
							years = 2
						}
					}
				}
			}
		}

		event_target:siege_owner = {
			show_scope_change = no

			if = {
				limit = { at_location = FROM }

				siege_capture_check_effect = yes
				custom_tooltip = { text = ALL_HOST_COURTIERS }

				any_courtier = {
					show_scope_change = no

					limit = {
						host = { character = event_target:siege_owner }
						at_location = FROM
						prisoner = no
						NOT = { character = event_target:siege_owner }

						OR = {
							is_ruler = yes
							is_consort = yes
							any_close_relative = { is_ruler = yes }
							wealth >= 25

							trigger_if = {
								limit = { is_female = yes }

								is_adult = yes
								practical_age < 28
								is_lowborn = no
								NOT = { trait = ugly }
							}
						}
					}

					set_character_flag = siege_capture_@event_target:siege_owner
					tooltip = { siege_capture_check_effect = yes }
				}

				hidden_effect = {
					random_courtier = {
						limit = { has_character_flag = siege_capture_@event_target:siege_owner }
						character_event = { id = Plus.1034 }
					}
				}
			}
		}

		hidden_effect = {
			top_liege = {
				any_realm_character = {
					limit = { has_character_flag = wants_to_loot }
					clr_character_flag = wants_to_loot
				}
			}
		}

		ai_chance = {
			factor = 40

			mult_modifier = {
				factor = 2
				trait = greedy
			}

			mult_modifier = {
				factor = 1.5
				trait = envious
			}

			mult_modifier = {
				factor = 0.5
				prestige < 250
			}
		}
	}

	option = {
		name = EVTOPTB_Plus_1031 # Let them celebrate

		ai_chance = {
			factor = 40

			mult_modifier = {
				factor = 1.5
				trait = lustful
			}

			mult_modifier = {
				factor = 2
				trait = diligent
			}

			mult_modifier = {
				factor = 1.5
				trait = kind
			}
		}

		event_target:siege_owner = {
			show_scope_change = no

			if = {
				limit = { at_location = FROM }

				siege_pagan_capture_check_effect = yes
				custom_tooltip = { text = ALL_HOST_COURTIERS }

				any_courtier = {
					show_scope_change = no

					limit = {
						host = { character = event_target:siege_owner }
						at_location = FROM
						prisoner = no
						NOT = { character = event_target:siege_owner }

						OR = {
							is_ruler = yes
							is_consort = yes
							any_close_relative = { is_ruler = yes }
							wealth >= 25

							trigger_if = {
								limit = { is_female = yes }

								is_adult = yes
								practical_age < 28
								is_lowborn = no
								NOT = { trait = ugly }
							}
						}
					}

					set_character_flag = siege_pagan_capture_@event_target:siege_owner
					tooltip = { siege_pagan_capture_check_effect = yes }
				}

				hidden_effect = {
					random_courtier = {
						limit = { has_character_flag = siege_pagan_capture_@event_target:siege_owner }
						character_event = { id = Plus.1036 }
					}
				}
			}
		}

		hidden_effect = {
			top_liege = {
				any_realm_character = {
					limit = { has_character_flag = wants_to_loot }
					clr_character_flag = wants_to_loot
				}
			}
		}
	}

	option = {
		name = EVTOPTC_Plus_1031 # Tonight we offer sacrifices!

		trigger = {
			event_target:siege_owner = {
				OR = {
					at_location = FROM

					any_courtier = {
						at_location = FROM
						prisoner = no

						OR = {
							is_ruler = yes
							is_consort = yes
							any_close_relative = { is_ruler = yes }
							wealth >= 25

							trigger_if = {
								limit = { is_female = yes }

								is_adult = yes
								practical_age < 28
								is_lowborn = no
								NOT = { trait = ugly }
							}
						}
					}
				}
			}
		}

		ai_chance = {
			factor = 20

			mult_modifier = {
				factor = 4
				trait = zealous
			}

			mult_modifier = {
				factor = 0.5
				trait = cynical
			}
		}

		piety = 25

		custom_tooltip = {
			text = MEN_ARE_PLEASED

			hidden_effect = {
				generate_tooltip = no

				top_liege = {
					any_realm_character = {
						limit = { has_character_flag = wants_to_loot }

						opinion = {
							name = loot_sacrifice
							who = ROOT
							years = 2
						}
					}
				}
			}
		}

		custom_tooltip = {
			text = ENEMY_REALM_HORRIFIED

			hidden_effect = {
				generate_tooltip = no

				event_target:siege_owner = {
					top_liege = {
						opinion = {
							name = opinion_barbarian
							who = ROOT
							years = 5
						}

						any_realm_character = {
							limit = {
								NOR = {
									religion_group = ROOT
									character = PREV
								}
							}

							opinion = {
								name = opinion_barbarian
								who = ROOT
								years = 5
							}
						}
					}
				}
			}
		}

		event_target:siege_owner = {
			show_scope_change = no

			if = {
				limit = { at_location = FROM }

				siege_pagan_sacrifice_check_effect = yes
				custom_tooltip = { text = ALL_HOST_COURTIERS }

				any_courtier = {
					show_scope_change = no

					limit = {
						at_location = FROM
						host = { character = event_target:siege_owner }
						prisoner = no
						NOT = { character = event_target:siege_owner }

						OR = {
							is_ruler = yes
							is_consort = yes
							any_close_relative = { is_ruler = yes }
							wealth >= 25

							trigger_if = {
								limit = { is_female = yes }

								is_adult = yes
								practical_age < 28
								is_lowborn = no
								NOT = { trait = ugly }
							}
						}
					}

					set_character_flag = siege_pagan_sacrifice_@event_target:siege_owner
					tooltip = { siege_pagan_sacrifice_check_effect = yes }
				}

				hidden_effect = {
					random_courtier = {
						limit = { has_character_flag = siege_pagan_sacrifice_@event_target:siege_owner }
						character_event = { id = Plus.1037 }
					}
				}
			}
		}

		hidden_effect = {
			top_liege = {
				any_realm_character = {
					limit = { has_character_flag = wants_to_loot }
					clr_character_flag = wants_to_loot
				}
			}
		}
	}
}

# Character notified they were injured after a siege
character_event = {
	id = Plus.1032
	desc = EVTDESC_Plus_1032
	picture = GFX_evt_bloody_man
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTOPTA_Plus_1032

		random_list = {
			50 = { add_trait_wounded_effect = yes }
			20 = { add_maimed_trait_effect = yes }

			30 = {
				health = -0.5

				random = {
					chance = 50

					if = {
						limit = { is_female = yes }
						add_trait = scarred_female
					}
					else = {
						add_trait = scarred
					}
				}

				if = {
					limit = {
						is_female = yes
						is_adult = yes
						practical_age < 60
						NOT = { trait = great_pox }
					}

					random = {
						chance = 30
						add_trait = great_pox
					}
				}

				if = {
					limit = {
						is_female = yes
						is_adult = yes
						practical_age < 45
						fertility >= 0.33
					}

					random = {
						chance = 30
						impregnate = 0
					}
				}
			}
		}
	}
}

# Character notified that they were sacrificed at the siege
character_event = {
	id = Plus.1033
	desc = EVTDESC_Plus_1033
	picture = GFX_evt_viking_battle_oldgods
	border = GFX_event_normal_frame_war

	is_triggered_only = yes

	option = {
		name = EVTOPTA_Plus_1026

		death = {
			death_reason = death_sacrificed
			killer = event_target:siege_attacker
		}

		hidden_effect = {
			any_close_relative = {
				limit = {
					OR = {
						is_parent_of = ROOT
						is_child_of = ROOT
						sibling = ROOT
						is_married = ROOT
					}

					NOT = { character = event_target:siege_attacker }
				}

				opinion = {
					name = executed_kin
					who = event_target:siege_attacker
					years = 10
				}
			}
		}
	}
}

# Recursive checks (to ensure randomized results)
character_event = {
	id = Plus.1034

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		clr_character_flag = siege_capture_@event_target:siege_owner
		siege_capture_check_effect = yes

		location = {
			random_province_character = {
				limit = { has_character_flag = siege_capture_@event_target:siege_owner }
				character_event = { id = Plus.1034 }
			}
		}
	}
}

character_event = {
	id = Plus.1035

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		clr_character_flag = siege_kill_@event_target:siege_owner
		siege_kill_check_effect = yes

		location = {
			random_province_character = {
				limit = { has_character_flag = siege_kill_@event_target:siege_owner }
				character_event = { id = Plus.1035 }
			}
		}
	}
}

character_event = {
	id = Plus.1036

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		clr_character_flag = siege_pagan_capture_@event_target:siege_owner
		siege_pagan_capture_check_effect = yes

		location = {
			random_province_character = {
				limit = { has_character_flag = siege_pagan_capture_@event_target:siege_owner }
				character_event = { id = Plus.1036 }
			}
		}
	}
}

character_event = {
	id = Plus.1037

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		clr_character_flag = siege_pagan_sacrifice_@event_target:siege_owner
		siege_pagan_sacrifice_check_effect = yes

		location = {
			random_province_character = {
				limit = { has_character_flag = siege_pagan_sacrifice_@event_target:siege_owner }
				character_event = { id = Plus.1037 }
			}
		}
	}
}