#############################################
#
# Hedge Knights Event Series
#
# Event ID 71000-71999 is reserved
#
#############################################
# Written by Johan Andersson

# Group of Hedge Knights visiting
character_event = {
	id = 71000
	desc = EVTDESC71000
	picture = GFX_evt_emissary

	is_triggered_only = yes # on_yearly_pulse, random_events

	only_playable = yes
	religion_group = christian
	min_age = 16
	prisoner = no
	war = no

	trigger = {
		job_chancellor = { always = yes }

		is_heretic = no
		in_seclusion = no
		in_command_trigger = no

		NOR = {
			has_character_flag = hedge_knights_visiting
			has_character_flag = hates_hedge_knights
		}
	}

	weight_multiplier = {
		factor = 1

		mult_modifier = {
			factor = 1.25
			trait = gregarious
		}

		mult_modifier = {
			factor = 1.25
			prestige >= 100
		}

		mult_modifier = {
			factor = 1.25
			real_tier = COUNT
		}

		mult_modifier = {
			factor = 0.5
			real_tier = KING
		}

		mult_modifier = {
			factor = 0.2
			real_tier = EMPEROR
		}

		mult_modifier = {
			factor = 0.8
			trait = stressed
		}

		mult_modifier = {
			factor = 0.8
			trait = depressed
		}

		mult_modifier = {
			factor = 0.75
			trait = lunatic
		}

		mult_modifier = {
			factor = 0.75
			trait = possessed
		}

		mult_modifier = {
			factor = 0.9
			is_ill = yes
		}

		mult_modifier = {
			factor = 0.8
			trait = pneumonic
		}

		mult_modifier = {
			factor = 0.8
			trait = great_pox
		}

		mult_modifier = {
			factor = 0.5
			trait = leper
		}

		mult_modifier = {
			factor = 0.9
			trait = wounded
		}

		mult_modifier = {
			factor = 0.8
			is_maimed_trigger = yes
		}

		mult_modifier = {
			factor = 0.5
			trait = infirm
		}

		mult_modifier = {
			factor = 0.4
			is_incapable = yes
		}

		mult_modifier = {
			factor = 0.5
			trait = drunkard
		}

		mult_modifier = {
			factor = 0.5
			trait = consumption
		}

		mult_modifier = {
			factor = 0.5
			trait = slow_fever
		}

		mult_modifier = {
			factor = 0.5
			trait = camp_fever
		}

		mult_modifier = {
			factor = 0.5
			trait = bubonic_plague
		}

		mult_modifier = {
			factor = 0.5
			trait = measles
		}

		mult_modifier = {
			factor = 0.5
			trait = smallpox
		}

	}

	option = {
		name = EVTOPTA71000 # Welcome them with a lavish feast

		set_character_flag = hedge_knights_visiting
		wealth = -10
		prestige = 10

		# if = {
		# 	limit = { trait = greedy }
		#
		# 	scaled_wealth = -0.4
		# 	remove_trait = greedy
		# }
		# else = {
		# 	scaled_wealth = -0.2
		# }

		random = {
			chance = 33
			add_trait_fully_silently_gregarious_effect = yes
		}

		ai_chance = {
			factor = 10

			trigger = {
				NOR = {
					trait = greedy
					trait = shy
				}
			}

			mult_modifier = {
				factor = 2
				trait = gregarious
			}

			mult_modifier = {
				factor = 2
				trait = charitable
			}
		}
	}

	option = {
		name = EVTOPTB71000 # Welcome them reluctantly

		set_character_flag = hedge_knights_visiting
		wealth = -5

		ai_chance = {
			factor = 10

			trigger = {
				NOR = {
					trait = gregarious
					trait = proud
					trait = ambitious
					trait = charitable
				}
			}
		}
	}

	option = {
		name = EVTOPTC71000 # Refuse them Access

		prestige = -5
		set_character_flag = hates_hedge_knights

		any_courtier = {
			show_scope_change = no

			opinion = {
				name = tight_ruler
				who = ROOT
			}
		}

		ai_chance = {
			factor = 1

			trigger = { trait = greedy }
		}
	}

	after = {
		if = {
			limit = { has_character_flag = hedge_knights_visiting }

			character_event = {
				id = 71007 # Tombola 1st time
				days = 10
				random = 10
			}

			character_event = {
				id = 71007 # Tombola 2nd time
				days = 21
				random = 10
			}

			character_event = {
				id = 71005 # Hedge knights leaving
				days = 35
				random = 10
			}
		}
	}
}

# Hedge Knight Tombola
character_event = {
	id = 71007

	is_triggered_only = yes
	hide_window = yes

	only_playable = yes
	has_character_flag = hedge_knights_visiting
	prisoner = no

	fail_trigger_effect = {
		clr_character_flag = hedge_knights_visiting
		clr_character_flag = hedge_knight_recruited
		clr_character_flag = hedge_knight_woman_seduced
	}

	immediate = {
		random_list = {
			30 = { } # Nothing

			30 = { # Minor Tournament Hedge Knight Injured
				trigger = {
					NOR = {
						has_character_flag = hedge_knight_recruited
						has_character_flag = hedge_knight_woman_seduced
					}
				}

				character_event = { id = 71001 }
			}

			6 = { # One hedge knight distinguishes himself
				trigger = {
					ai = no

					NOR = {
						has_character_flag = hedge_knight_recruited
						has_character_flag = hedge_knight_woman_seduced
					}
				}

				mult_modifier = {
					factor = 2
					trait = gregarious
				}

				character_event = { id = 71002 }
			}

			20 = { # Male courtier insulted by hedge knights
				trigger = {
					any_courtier = {
						is_adult = yes
						is_female = no

						OR = {
							trait = cruel
							trait = proud
							trait = wroth
							trait = zealous
							trait = envious
							prestige >= 100
						}
					}
				}

				mult_modifier = {
					factor = 1.11
					trait = arbitrary
				}

				mult_modifier = {
					factor = 0.2
					has_character_flag = hedge_knight_recruited
				}

				mult_modifier = {
					factor = 0.2
					has_character_flag = hedge_knight_woman_seduced
				}

				character_event = { id = 71003 }
			}

			30 = { # A young woman has been seduced by a hedge knight
				trigger = {
					ai = no

					any_courtier = {
						is_female = yes
						is_adult = yes
						age < 20
						fertility >= 0.3
						is_married = no
						is_pregnant = no
						has_lover = no
						NOT = { trait = homosexual }
					}

					NOR = {
						has_character_flag = hedge_knight_recruited
						has_character_flag = hedge_knight_woman_seduced
					}
				}

				mult_modifier = {
					factor = 2
					trait = gregarious
				}

				character_event = { id = 71004 }
			}
		}
	}
}

# Minor Tournament Hedge Knight Injured
character_event = {
	id = 71001
	desc = EVTDESC71001
	picture = GFX_evt_joust

	is_triggered_only = yes

	immediate = {
		clr_character_flag = hedge_knights_visiting
		clr_character_flag = hedge_knight_recruited
		clr_character_flag = hedge_knight_woman_seduced
	}

	option = {
		name = EVTOPTA71001 # Pay for their expenses, and send them on their way

		wealth = -5
		piety = 5
	}

	option = {
		name = EVTOPTB71001 # Let them stay at the castle while recovering

		prestige = -5
		piety = 5

		if = {
			limit = { personality_traits < 5 }
			add_trait_fully_silently_just_effect = yes
		}
	}
}

# One hedge knight distinguishes himself
character_event = {
	id = 71002
	desc = EVTDESC71002
	picture = GFX_evt_joust

	is_triggered_only = yes

	immediate = {
		set_character_flag = hedge_knight_recruited
	}

	option = {
		name = EVTOPTA71002 # Take him in your service

		create_character = {
			random_traits = no
			dynasty = random
			female = no
			age = 16
			culture = ROOT
			religion = ROOT
			add_trait = brave
			add_trait = ambitious
			add_trait = humble
			health = 10

			attributes = {
				martial = 10
			}
		}

		wealth = -5
	}

	option = {
		name = EVTOPTB71002 # Give him lavish praise

		prestige = 5
	}

	after = {
		character_event = {
			id = 71005 # Hedge knights leaving
			days = 2
			random = 2
		}
	}
}

# Male courtier insulted by hedge knights
character_event = {
	id = 71003
	desc = EVTDESC71003
	picture = GFX_evt_joust

	is_triggered_only = yes

	option = {
		name = EVTOPTA71003 # Throw them out

		clr_character_flag = hedge_knights_visiting
		clr_character_flag = hedge_knight_recruited
		clr_character_flag = hedge_knight_woman_seduced
		piety = -10
	}

	option = {
		name = EVTOPTB71003 # Ignore the complaints

		any_courtier = {
			show_scope_change = no

			limit = {
				is_adult = yes
				is_female = no

				OR = {
					trait = cruel
					trait = proud
					trait = wroth
					trait = zealous
					trait = envious
					prestige >= 100
				}
			}

			score_value = {
				value = 10
				interesting_courtier_selection_score = yes
			}

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

		pf_glory_minus1_effect = yes
	}
}

# A young woman has been seduced by a hedge knight
character_event = {
	id = 71004
	desc = EVTDESC71004
	picture = GFX_evt_lovers

	is_triggered_only = yes

	immediate = {
		set_character_flag = hedge_knight_woman_seduced

		create_character = {
			random_traits = yes
			dynasty = random
			fertility = 0.6
			female = no
			age = 24
			culture = ROOT
			religion = ROOT
		}

		new_character = {
			save_event_target_as = hedge_knight
		}

		any_courtier = {
			limit = {
				is_female = yes
				is_adult = yes
				age < 20
				fertility >= 0.3
				is_married = no
				is_pregnant = no
				has_lover = no
				NOT = { trait = homosexual }
			}

			score_value = {
				value = 10
				interesting_courtier_selection_score = yes
			}

			save_event_target_as = seduced_courtier
		}
	}

	option = {
		name = EVTOPTA71004 # Stay

		event_target:seduced_courtier = {
			show_scope_change = no

			add_trait_fully_silently_lustful_effect = yes
		}

		event_target:hedge_knight = {
			show_scope_change = no

			add_trait_fully_silently_lustful_effect = yes
			impregnate_cuckoo = event_target:seduced_courtier
		}

		piety = -10
	}

	option = {
		name = EVTOPTB71004 # Dungeon

		event_target:seduced_courtier = {
			show_scope_change = no

			add_trait_fully_silently_lustful_effect = yes
		}

		event_target:hedge_knight = {
			show_scope_change = no

			add_trait_fully_silently_lustful_effect = yes
			impregnate_cuckoo = event_target:seduced_courtier
			imprison = ROOT
		}

		ai_chance = {
			factor = 1

			mult_modifier = {
				factor = 100

				OR = {
					trait = cruel
					trait = zealous
				}
			}
		}
	}
}

# Hedge knights leaving
character_event = {
	id = 71005
	desc = EVTDESC71005
	picture = GFX_evt_feast

	is_triggered_only = yes

	has_character_flag = hedge_knights_visiting
	prisoner = no

	fail_trigger_effect = {
		clr_character_flag = hedge_knights_visiting
		clr_character_flag = hedge_knight_woman_seduced
		clr_character_flag = hedge_knight_recruited
	}

	immediate = {
		clr_character_flag = hedge_knights_visiting
		clr_character_flag = hedge_knight_woman_seduced
		clr_character_flag = hedge_knight_recruited
	}

	option = {
		name = EVTOPTA71005 # Give them a farewell feast

		prestige = 10
		wealth = -10
	}

	option = {
		name = EVTOPTB71005 # Let them leave quitely

		prestige = -5
	}
}

# Marshal has arrested a hedge knight
character_event = {
	id = 71006
	desc = EVTDESC71006
	picture = GFX_evt_melee

	is_triggered_only = yes # on_yearly_pulse, random_events

	only_playable = yes
	religion_group = christian
	prisoner = no
	war = no

	trigger = {
		job_marshal = { always = yes }

		is_heretic = no
		in_command_trigger = no
		NOT = { has_character_flag = hedge_knights_visiting }
	}

	immediate = {
		set_character_flag = hedge_knight_arrested_event
	}

	option = {
		name = EVTOPTA71006 # Order him released

		job_marshal = {
			show_scope_change = no

			prestige = -25

			opinion = {
				name = marshal_overruled
				who = ROOT
			}
		}

		piety = 10
		clr_character_flag = hates_hedge_knights
	}

	option = {
		name = EVTOPTB71006 # It is not my concern

		job_marshal = {
			show_scope_change = no

			prestige = 25
		}

		prestige = 25
		piety = -10
		set_character_flag = hates_hedge_knights
	}
}