﻿employer_contract_completed_info_effect = {
	increment_variable_effect = {
		VAR = employed_adventurers_num
		VAL = -1
	}
	remove_variable = offered_contract
	hidden_effect = {
		send_interface_toast = {
			type = event_contract_completed
			title = event_contract_completed_tt
			desc = event_contract_completed_desc
			left_icon = this
			right_icon = scope:adventurer
			custom_tooltip = { text = event_contract_completed_desc }
			if = {
				limit = { exists = scope:gold }
				show_as_tooltip = {
					pay_short_term_gold = {
						gold = scope:gold
						target = scope:adventurer
					}
				}
			}
		}
	}
}

employer_contract_failed_info_effect = {
	hidden_effect = {
		increment_variable_effect = {
			VAR = employed_adventurers_num
			VAL = -1
		}
		remove_variable = offered_contract
		send_interface_toast = {
			type = event_contract_failed
			title = event_contract_failed_tt
			desc = event_contract_failed_desc
			custom_tooltip = { text = event_contract_failed_desc }
			left_icon = this
			right_icon = scope:adventurer
		}
	}
}

employer_contract_accepted_info_effect = {
	hidden_effect = {
		set_variable = {
			name = offered_contract
			value = scope:task_contract
		}
		increment_variable_effect = {
			VAR = employed_adventurers_num
			VAL = 1
		}
		send_interface_toast = {
			type = event_contract_accepted
			title = event_contract_accepted_tt
			desc = event_contract_accepted_desc
			custom_tooltip = { text = event_contract_accepted_desc }
			left_icon = this
			right_icon = scope:adventurer
		}
		trigger_event = loaa_contract_technical_event.1
	}
}

employer_criminal_activity_tax_effect = {
	add_character_flag = {
		flag = was_targeted_by_hostile_contract
		months = 6
	}
	hidden_effect = {
		random_list = {
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_negative
					title = event_criminal_activities_tt
					left_icon = scope:adventurer
					right_icon = scope:crime_location
					desc = event_criminal_activities_tax_desc_known
					custom_tooltip = { text = event_criminal_activities_tax_desc_known }
					show_as_tooltip = {
						pay_short_term_gold = {
							target = scope:adventurer
							gold = scope:gold
						}
					}
					root.task_contract_employer ?= {
						add_character_modifier = {
							modifier = laamp_base_2041_success_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = intrigue
				}

			}
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_negative
					title = event_criminal_activities_tt
					desc = event_criminal_activities_tax_desc
					custom_tooltip = { text = event_criminal_activities_tax_desc }
					show_as_tooltip = {
						remove_short_term_gold = scope:gold
					}
					root.task_contract_employer ?= {
						add_character_modifier = {
							modifier = laamp_base_2041_success_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = scope:adventurer.intrigue
				}
			}
		}
	}
}

employer_criminal_activity_tax_failure_effect = {
	hidden_effect = {
		random_list = {
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_positive
					title = event_criminal_activities_positive_tt
					left_icon = scope:adventurer
					right_icon = scope:crime_location
					desc = event_criminal_activities_tax_failed_desc_known
					custom_tooltip = { text = event_criminal_activities_tax_failed_desc_known }
					root.task_contract_employer ?= {
						add_character_modifier = {
							modifier = laamp_base_2041_failure_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = intrigue
				}

			}
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_positive
					title = event_criminal_activities_positive_tt
					desc = event_criminal_activities_tax_failed_desc
					right_icon = scope:crime_location
					custom_tooltip = { text = event_criminal_activities_tax_failed_desc }
					root.task_contract_employer ?= {
						add_character_modifier = {
							modifier = laamp_base_2041_failure_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = scope:adventurer.intrigue
				}
			}
		}
	}
}

employer_criminal_activity_ambush_effect = {
	add_character_flag = {
		flag = was_targeted_by_hostile_contract
		months = 6
	}
	hidden_effect = {
		random_list = {
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_negative
					title = event_criminal_activities_tt
					left_icon = scope:adventurer
					right_icon = scope:crime_location
					desc = event_criminal_activities_ambush_desc_known
					custom_tooltip = { text = event_criminal_activities_ambush_desc_known }
					if = {
						limit = {
							exists = scope:gold
							scope:gold != 0
						}
						show_as_tooltip = {
							pay_short_term_gold = {
								target = scope:adventurer
								gold = scope:gold
							}
						}
					}
					root.var:crime_location ?= {
						add_county_modifier = {
							modifier = laamp_base_1041_success_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = intrigue
				}

			}
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_negative
					title = event_criminal_activities_tt
					desc = event_criminal_activities_ambush_desc
					right_icon = scope:crime_location
					custom_tooltip = { text = event_criminal_activities_ambush_desc }
					if = {
						limit = {
							exists = scope:gold
							scope:gold  != 0
						}
						show_as_tooltip = {
							remove_short_term_gold = scope:gold
						}
					}
					root.var:crime_location ?= {
						add_county_modifier = {
							modifier = laamp_base_1041_success_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = scope:adventurer.intrigue
				}
			}
		}
	}
}

employer_criminal_activity_ambush_failure_effect = {
	hidden_effect = {
		random_list = {
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_positive
					title = event_criminal_activities_positive_tt
					left_icon = scope:adventurer
					right_icon = scope:crime_location
					desc = event_criminal_activities_ambush_failed_desc_known
					custom_tooltip = { text = event_criminal_activities_ambush_failed_desc_known }
					root.var:crime_location ?= {
						add_county_modifier = {
							modifier = laamp_base_1041_failure_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = intrigue
				}

			}
			50 = {
				send_interface_toast = {
					type = event_criminal_adventurer_positive
					title = event_criminal_activities_positive_tt
					desc = event_criminal_activities_ambush_failed_desc
					right_icon = scope:crime_location
					custom_tooltip = { text = event_criminal_activities_ambush_failed_desc }
					root.var:crime_location ?= {
						add_county_modifier = {
							modifier = laamp_base_1041_failure_employer_modifier
							years = 5
						}
					}
				}
				modifier = {
					add = scope:adventurer.intrigue
				}
			}
		}
	}
}

employer_criminal_activity_rustle_effect = {
	add_character_flag = {
		flag = was_targeted_by_hostile_contract
		months = 6
	}
	random_list = {
		50 = {
			send_interface_toast = {
				type = event_criminal_adventurer_negative
				title = event_criminal_activities_tt
				desc = event_criminal_activities_rustle_desc_known
				left_icon = scope:adventurer
				right_icon = scope:crime_location
				custom_tooltip = { text = event_criminal_activities_rustle_desc_known }
				show_as_tooltip = {
					pay_short_term_gold = {
						target = scope:adventurer
						gold = scope:gold
					}
				}
				root.task_contract_employer ?= {
					add_character_modifier = {
						modifier = laamp_base_5031_success_employer_modifier
						years = 5
					}
				}
			}
			modifier = {
				add = intrigue
			}
		}
		50 = {
			send_interface_toast = {
				type = event_criminal_adventurer_negative
				title = event_criminal_activities_tt
				desc = event_criminal_activities_rustle_desc
				right_icon = scope:crime_location
				custom_tooltip = { text = event_criminal_activities_rustle_desc }
				show_as_tooltip = {
					remove_short_term_gold = scope:gold
				}
				root.task_contract_employer ?= {
					add_character_modifier = {
						modifier = laamp_base_5031_success_employer_modifier
						years = 5
					}
				}
			}
			modifier = {
				add = scope:adventurer.intrigue
			}
		}
	}
}

employer_criminal_activity_rustle_failure_effect = {
	random_list = {
		50 = {
			send_interface_toast = {
				type = event_criminal_adventurer_positive
				title = event_criminal_activities_positive_tt
				desc = event_criminal_activities_rustle_failed_desc_known
				left_icon = scope:adventurer
				right_icon = scope:crime_location
				custom_tooltip = { text = event_criminal_activities_rustle_failed_desc_known }
				scope:task_contract_employer ?= {
					add_character_modifier = {
						modifier = laamp_base_5031_failure_employer_modifier
						years = 5
					}
				}
			}
			modifier = {
				add = intrigue
			}

		}
		50 = {
			send_interface_toast = {
				type = event_criminal_adventurer_positive
				title = event_criminal_activities_positive_tt
				desc = event_criminal_activities_rustle_failed_desc
				right_icon = scope:crime_location
				custom_tooltip = { text = event_criminal_activities_rustle_failed_desc }
				scope:task_contract_employer ?= {
					add_character_modifier = {
						modifier = laamp_base_5031_failure_employer_modifier
						years = 5
					}
				}
			}
			modifier = {
				add = scope:adventurer.intrigue
			}
		}
	}
}

contract_target_reaction_effect = {
	if = {
		limit = {
			exists = scope:task_contract_target
			NOT = { scope:task_contract_target = this }
		}
		this = {
			trigger_event = { id = loaa_contract_event.0001 days = 3 }
		}
	}
}

loaa_laamp_base_3041_contract_scheme_prep_effect = {
	save_scope_as = scheme
	scope:scheme.task_contract ?= { save_scope_as = task_contract }
	save_scope_value_as = {
		name = follow_up_event
		value = event_id:loaa_scheme_critical_moments.2
	}
	if = {
		limit = {
			NOT = { exists = scope:suppress_next_event }
		}
		scheme_owner = { trigger_event = scheme_critical_moments.0002 }
	}
}

ep3_laamp_supporter_invalidated_effect = {
	if = {
		limit = {
			exists = var:adventurer_invasion_supportee
			primary_title.tier >= tier_kingdom
		}
		add_prestige = 0
	}
	else = {
		if = {
			limit = { exists = var:adventurer_invasion_supporter }
			save_scope_as = adventurer
			var:adventurer_invasion_supporter ?= { save_scope_as = supporter }
			var:adventurer_invasion_target ?= { save_scope_as = target }
		}
		else_if = {
			limit = { exists = var:adventurer_invasion_supportee }
			var:adventurer_invasion_supportee ?= { save_scope_as = adventurer }
			var:adventurer_invasion_target ?= { save_scope_as = target }
			save_scope_as = supporter
		}
		if = {
			limit = {
				exists = scope:adventurer
				exists = scope:supporter
				exists = scope:target
			}
			scope:adventurer ?= {
				send_interface_message = {
					type = event_landless_adventurer_neutral
					title = ep3_laamp_sponsor_invalidated_title
					left_icon = scope:supporter
					right_icon = scope:target
					remove_variable = adventurer_invasion_supporter
					remove_variable = adventurer_invasion_target
					custom_tooltip = ep3_laamp_sponsor_invalidated_adventurer
				}
			}
			scope:supporter ?= {
				scope:adventurer = { save_temporary_scope_as = attacker }
				send_interface_message = {
					type = event_landless_adventurer_neutral
					title = ep3_laamp_sponsor_invalidated_title
					left_icon = scope:adventurer
					right_icon = scope:target
					remove_variable = adventurer_invasion_supportee
					remove_variable = adventurer_invasion_target
					custom_tooltip = ep3_laamp_sponsor_invalidated_supporter
					if = {
						limit = { exists = var:adventurer_invasion_join_war }
						remove_variable = adventurer_invasion_join_war
					}
					if = {
						limit = { exists = var:adventurer_invasion_request_soldiers }
						remove_variable = adventurer_invasion_request_soldiers
					}
				}
			}
		}
	}

}

loaa_laamp_rewards_disburse_ordinary_currency_effect = {
	# Grab some scope for ease of access.
	save_scope_as = task_contract
	task_contract_employer = { save_scope_as = employer }
	task_contract_taker = { save_scope_as = taker }
	# Gold.
	scope:employer = {
		# Yes, this is necessary. We get boot errors if we compare a direct script value vs. zero: maths works out, it's just Jomini Magic doin' its thing.
		save_scope_value_as = {
			name = gold
			value = {
				value = $GOLD$
				if = {
					limit = { $EXTRA_REWARD$ = flag:yes }
					multiply = task_contract_extra_reward_multiplier_value
				}
				round = yes
			}
		}
		# Changed for LOAA
		pay_short_term_gold = {
			target = scope:taker
			gold = scope:gold
		}
	}
	# Everything else.
	scope:taker = {
		# Prestige.
		if = {
			limit = { $PRESTIGE$ != 0 }
			add_prestige = {
				value = {
					value = $PRESTIGE$
					if = {
						limit = { $EXTRA_REWARD$ = flag:yes }
						multiply = task_contract_extra_reward_multiplier_value
					}
					round = yes
				}
			}
		}
		# Piety.
		if = {
			limit = { $PIETY$ != 0 }
			add_piety = {
				value = {
					value = $PIETY$
					if = {
						limit = { $EXTRA_REWARD$ = flag:yes }
						multiply = task_contract_extra_reward_multiplier_value
					}
					round = yes
				}
			}
		}
		# Provisions.
		if = {
			limit = {
				$PROVISIONS$ != 0
				exists = domicile
			}
			domicile = {
				change_provisions = {
					value = {
						value = $PROVISIONS$
						if = {
							limit = { $EXTRA_REWARD$ = flag:yes }
							multiply = task_contract_extra_reward_multiplier_value
						}
						round = yes
					}
				}
			}
		}
		# Opinion.
		if = {
			limit = { $OPINION$ != 0 }
			reverse_add_opinion = {
				modifier = $OPINION_TYPE$
				target = scope:employer
				opinion = $OPINION$
			}
		}
		# Contact.
		save_scope_value_as = {
			name = add_contact_toggle
			value = flag:$CONTACT$
		}
		save_scope_value_as = {
			name = add_contact_hook_toggle
			value =flag:$CONTACT_HOOK$
		}
		if = {
			limit = { scope:add_contact_toggle != flag:no }
			# Huck 'em into our contact list.
			add_contact = scope:employer
			# Give hook as well as contact?
			if = {
				limit = { scope:add_contact_hook_toggle = flag:yes }
				add_hook_if_possible_default_length_effect = {
					TARGET = scope:employer
					TYPE = contact_list_weak_hook
				}
			}
		}
	}
}

loaa_target_task_contract_justicar_contract_tracker_effect = {
	custom_tooltip = loaa_target_task_contract_justicar_contract_tracker_effect.tt
	increment_variable_effect = {
		VAR = justicar_contracts_succeeded_counter
		VAL = 1
	}
}

loaa_target_task_successful_noncrim_contract_count_effect = {
	custom_tooltip = loaa_target_task_successful_noncrim_contract_count_effect_tt
	increment_variable_effect = {
		VAR = laamp_total_noncrim_contracts_successfully_completed
		VAL = 1
	}
}

loaa_contract_invalidation_penalty_effect = {
	add_prestige = {
		value = loaa_task_contract_invalidation_penalty_value
		multiply = -1
	}
	hidden_effect = {
		scope:task_contract ?= {
			invalidate_contract = yes
		}
	}

}

loaa_contract_invalidation_gui_penalty_effect = {
	add_prestige = {
		value = 100
		multiply = -1
	}
}
