﻿#Events handling Sway outcomes

namespace = poison_opinion_outcome

#Note: Outcome events for the Sway scheme are unusual. The default is simply a notification for success or failure

################################
# Standard outcomes
# 0000-0999
################################

#Standard success
poison_opinion_outcome.0001 = {
	hidden = yes

	immediate = {
		send_interface_message = {
			type = poison_opinion_good_message
			title = poison_opinion_success_message
			left_icon = scope:target
			scope:target = {
				if = {
					limit = {
						is_alive = yes
						scope:owner = { is_alive = yes }
					}
					add_opinion = {
						target = scope:target.liege
						modifier = scheme_poison_opinion_opinion
						opinion = poison_opinion_opinion_decrease_per_success
					}
				}
			}
			poison_opinion_end_effect = yes
		}
	}
}

#Standard failure
poison_opinion_outcome.0002 = {
	hidden = yes

	immediate = {
		send_interface_message = {
			type = poison_opinion_bad_message
			title = poison_opinion_failed_message
			left_icon = scope:target
			poison_opinion_end_effect = yes
		}
	}
}


#################################
# Positive Outcomes
# 1000-1999
#################################

#Diplomacy Duel to get an extra bonus
poison_opinion_outcome.1001 = {
	type = character_event
	title = poison_opinion_outcome.1001.t
	desc = poison_opinion_outcome.1001.desc
	theme = poison_opinion_scheme
	left_portrait = scope:target
	widget = {
		gui = "event_window_widget_scheme"
		container = "custom_widgets_container"
	}

	override_background = {
		trigger = { is_travelling_not_at_activity = yes }
		reference = terrain_travel
	}
	override_background = {
		trigger = { is_travelling_at_activity = yes }
		reference = ep2_activity
	}
	
	trigger = {
		NOT = {
			has_character_flag = had_event_poison_opinion_outcome_1001
		}
	}

	immediate = {
		add_character_flag = {
			flag = had_event_poison_opinion_outcome_1001
			years = 5
		}
	}

	option = {
		name = poison_opinion_outcome.1001.a
		duel = {
			target = scope:target
			skill = diplomacy

			20 = {
				compare_modifier = {
					value = scope:duel_value
				}
				desc = poison_opinion_outcome.1001.a.success
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1001.a.success

					add_prestige = minor_prestige_gain

					scope:target = {
						add_opinion = {
							target = scope:target.liege
							modifier = scheme_poison_opinion_opinion
							opinion = -50
						}
					}
				}
			}
			20 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -1
				}
				desc = poison_opinion_outcome.1001.a.failure
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1001.a.failure

					add_prestige = minor_prestige_loss
				}
			}
		}
		poison_opinion_end_effect = yes
	}

	option = {
		name = poison_opinion_outcome.1001.b
		scope:target = {
			add_opinion = {
				target = scope:target.liege
				modifier = scheme_poison_opinion_opinion
				opinion = -30
			}
		}
		poison_opinion_end_effect = yes
	}
}

#Learning Duel to get an extra bonus
poison_opinion_outcome.1002 = {
	type = character_event
	title = poison_opinion_outcome.1002.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = { scope:target.liege.faith = scope:target.faith }
				desc = poison_opinion_outcome.1002.same_faith
			}
			desc = poison_opinion_outcome.1002.other_faith
		}
	}
	theme = poison_opinion_scheme
	left_portrait = scope:target
	widget = {
		gui = "event_window_widget_scheme"
		container = "custom_widgets_container"
	}

	override_background = {
		trigger = { scope:target = { is_travelling = yes } }
		reference = terrain_travel
	}
	
	trigger = {
		NOT = {
			has_character_flag = had_event_poison_opinion_outcome_1002
		}
	}

	weight_multiplier = {
		base = 0
		compare_modifier = {
			value = learning
			multiplier = 0.1
		}
		modifier = {
			add = 2
			scope:target = {
				is_landed = yes
				government_has_flag = government_is_theocracy
			}
		}
	}

	immediate = {
		add_character_flag = {
			flag = had_event_poison_opinion_outcome_1002
			years = 5
		}
	}

	option = {
		name = poison_opinion_outcome.1002.a
		duel = {
			target = scope:target
			skill = learning

			20 = {
				compare_modifier = {
					value = scope:duel_value
					min = -18
					max = 20
				}
				desc = poison_opinion_outcome.1001.a.success
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1001.a.success

					add_prestige = minor_prestige_gain

					scope:target = {
						add_opinion = {
							target = scope:target.liege
							modifier = scheme_poison_opinion_opinion
							opinion = -50
						}
					}
				}
			}
			20 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -1
					min = -18
					max = 20
				}
				desc = poison_opinion_outcome.1001.a.failure
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1001.a.failure

					add_prestige = minor_prestige_loss
				}
			}
		}
		poison_opinion_end_effect = yes
	}

	option = {
		name = poison_opinion_outcome.1002.b
		scope:target = {
			add_opinion = {
				target = scope:target.liege
				modifier = scheme_poison_opinion_opinion
				opinion = -30
			}
		}
		poison_opinion_end_effect = yes
	}
}


#They're warming up to me, can I take it further?
poison_opinion_outcome.1003 = {
	type = character_event
	title = poison_opinion_outcome.1003.t
	desc = poison_opinion_outcome.1003.desc
	theme = poison_opinion_scheme
	left_portrait = scope:target
	widget = {
		gui = "event_window_widget_scheme"
		container = "custom_widgets_container"
	}

	override_background = {
		trigger = { is_travelling_not_at_activity = yes }
		reference = terrain_travel
	}
	override_background = {
		trigger = { is_travelling_at_activity = yes }
		reference = ep2_activity
	}
	
	trigger = {
		NOT = {
			has_character_flag = had_event_poison_opinion_outcome_1003
		}
	}

	immediate = {
		add_character_flag = {
			flag = had_event_poison_opinion_outcome_1003
			years = 5
		}
		scope:target = {
			add_opinion = {
				target = scope:target.liege
				modifier = scheme_poison_opinion_opinion
				opinion = -30
			}
		}
	}

	option = { #Gamble!
		name = poison_opinion_outcome.1003.a
		duel = {
			target = scope:target
			skill = intrigue

			30 = {
				compare_modifier = {
					value = scope:duel_value
				}
				desc = poison_opinion_outcome.1003.a.success
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1003.a.success

					scope:target = {
						add_opinion = {
							target = scope:target.liege
							modifier = scheme_poison_opinion_opinion
							opinion = -20
						}
					}
				}
			}
			20 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -1
				}
				desc = poison_opinion_outcome.1003.a.failure
				send_interface_toast = {
					left_icon = scope:target
					title = poison_opinion_outcome.1003.a.failure

					scope:target = {
						add_opinion = {
							target = scope:target.liege
							modifier = scheme_poison_opinion_opinion
							opinion = 10
						}
					}
				}	
			}
		}
	}

	option = { #Safe route
		name = poison_opinion_outcome.1003.b
		
	}

	after = {
		poison_opinion_end_effect = yes
	}
}

#################################
# Negative Outcomes
# 2000-2999
#################################

#Diplomatic misunderstanding
poison_opinion_outcome.2001 = {
	type = character_event
	title = poison_opinion_outcome.2001.t
	desc = {
		desc = poison_opinion_outcome.2001.opening
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:target = {
						OR = {
							is_of_major_interest_to_root_trigger = yes
							is_of_minor_interest_to_root_trigger = yes
						}
						NOT = {
							has_relation_rival = root
						}
					}
				}
				desc = poison_opinion_outcome.2001.not_interested_relation
			}
			triggered_desc = {
				trigger = {
					scope:target = {
						possibly_interested_in_character_trigger = {
							CHARACTER = root
						}
					}
				}
				desc = poison_opinion_outcome.2001.not_interested_romantically
			}
			random_valid = {
				desc = poison_opinion_outcome.2001.not_interested_horses
				desc = poison_opinion_outcome.2001.not_interested_toll_exemptions
				desc = poison_opinion_outcome.2001.not_interested_friend
				triggered_desc = {
					trigger = {
						religion = religion:christianity_religion
						scope:target.religion = religion:christianity_religion
					}
					desc = poison_opinion_outcome.2001.not_interested_relics
				}
			}
		}
		desc = poison_opinion_outcome.2001.end
	}
	theme = poison_opinion_scheme
	left_portrait = {
		character = scope:target
		animation = eyeroll
	}
	widget = {
		gui = "event_window_widget_scheme"
		container = "custom_widgets_container"
	}

	override_background = {
		trigger = { is_travelling_not_at_activity = yes }
		reference = terrain_travel
	}
	override_background = {
		trigger = { is_travelling_at_activity = yes }
		reference = ep2_activity
	}
	
	trigger = {
		NOT = {
			has_character_flag = had_event_poison_opinion_outcome_2001
		}
		NOR = {
			has_relation_lover = scope:target
			has_relation_friend = scope:target
			any_consort = {
				this = scope:target
			}
			AND = {
				exists = betrothed
				betrothed = scope:target
			}
		}
	}

	immediate = {
		add_character_flag = {
			flag = had_event_poison_opinion_outcome_2001
			years = 5
		}
	}

	option = {
		name = poison_opinion_outcome.2001.a
		scope:target = {
			add_opinion = {
				target = scope:owner
				modifier = poisoned_opinion_blocker_opinion
				opinion = -10
			}
		}
		scope:scheme = {
			end_scheme = yes
		}
	}
}


#They think you're plotting against them
poison_opinion_outcome.2002 = {
	type = character_event
	title = poison_opinion_outcome.2002.t
	desc = poison_opinion_outcome.2002.desc
	theme = poison_opinion_scheme
	left_portrait = scope:target
	widget = {
		gui = "event_window_widget_scheme"
		container = "custom_widgets_container"
	}

	override_background = {
		trigger = { is_travelling_not_at_activity = yes }
		reference = terrain_travel
	}
	override_background = {
		trigger = { is_travelling_at_activity = yes }
		reference = ep2_activity
	}
	
	trigger = {
		NOT = {
			has_character_flag = had_event_poison_opinion_outcome_2002
		}
	}

	weight_multiplier = {
		base = 0.75
		modifier = {
			add = 0.75
			has_trait = paranoid
		}
	}

	immediate = {
		add_character_flag = {
			flag = had_event_poison_opinion_outcome_2002
			years = 5
		}
	}

	option = {
		name = poison_opinion_outcome.2002.a
		scope:target = {
			add_opinion = {
				target = scope:owner
				modifier = poisoned_opinion_blocker_opinion
				opinion = -10
			}
			add_character_modifier = {
				modifier = more_vigilant_recistance_modifier
				years = 5
			}
		}
		scope:scheme = {
			end_scheme = yes
		}
	}
}
