﻿# Pilgrims and Preachers - religious task contracts (second batch)
# Contracts use existing vanilla groups, so the vanilla generation picks them up
# without any override. Events are in events/ppr_contract_events_2.txt.

######################################################################
# Escort the Pilgrims
# A band of pilgrims of the employer's faith wants an escort from the
# employer's capital to one of their faith's holy sites.
######################################################################
ppr_escort_pilgrims = {
	group = laamp_contracts_transport_group
	icon = "gfx/interface/icons/character_interactions/icon_contract_escort.dds"

	travel = no
	use_diplomatic_range = no

	weight = {
		value = task_contract_weight_interesting_almost_rare_value
		add = ppr_contracts_weight_up_religious_value
		add = laamp_contracts_weight_up_transport_value
		scope:employer = {
			add = {
				if = {
					limit = { has_trait = zealous }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = pilgrim }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = cynical }
					add = task_contract_weight_malus_employer_has_associated_traits_value
				}
				min = task_contract_weight_employer_associated_traits_min_value
				max = task_contract_weight_employer_associated_traits_max_value
			}
			multiply = task_contract_weight_by_tier_value
			add = task_contract_weight_employer_contact_list_value
		}
	}

	valid_to_create = {
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		employer_has_treasury_to_offer_job_trigger = yes
		valid_laamp_sensible_start_trigger = yes
		rule_out_dramatic_laamp_employers_trigger = yes
		faith = scope:employer.faith
		scope:employer = { ppr_can_offer_escort_pilgrims_contract_trigger = yes }
	}
	valid_to_accept = {
		valid_laamp_basic_accept_only_trigger = yes
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		faith = scope:employer.faith
	}
	valid_to_continue = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
		exists = var:task_contract_destination
		task_contract_employer = {
			is_landed = yes
			exists = capital_province
		}
	}
	valid_to_keep = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
	}

	on_create = {
		scope:contract = {
			save_scope_as = task_contract
			task_contract_employer = { save_scope_as = ppr_contract_employer }
			scope:ppr_contract_employer.faith = {
				random_holy_site_barony = {
					limit = {
						ppr_escort_holy_site_trigger = { EMPLOYER = scope:ppr_contract_employer }
					}
					title_province = { save_scope_as = ppr_holy_site }
				}
			}
			if = {
				limit = { exists = scope:ppr_holy_site }
				set_variable = {
					name = task_contract_destination
					value = scope:ppr_holy_site
				}
			}
			# Make our gold rewards static.
			grab_gold_fuzz_number_effect = yes
			set_variable = {
				name = gold_success_standard
				value = task_contract_taker.task_contract_success_gold_gain_full_value
			}
			set_variable = {
				name = gold_success_critical
				value = task_contract_taker.task_contract_success_gold_gain_critical_value
			}
		}
	}

	on_accepted = {
		task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_accept_contract" }
		save_scope_as = task_contract
		task_contract_taker = { trigger_event = ppr_contract_events_2.0001 }
	}

	on_invalidated = {
		task_contract_taker ?= {
			remove_character_flag ?= is_in_task_contract_event_chain
		}
	}

	task_contract_reward = {
		success_standard = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_standard
					PRESTIGE = 0
					PIETY = task_contract_success_piety_gain_full_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_standard_reward_value
					OPINION_TYPE = succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = minor_spiritual_fulfillment_value }
				}
			}
		}
		success_critical = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_critical
					PRESTIGE = task_contract_success_prestige_gain_half_value
					PIETY = task_contract_success_piety_gain_critical_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_excelled_reward_value
					OPINION_TYPE = critically_succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = yes
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = medium_spiritual_fulfillment_value }
				}
			}
		}
		failure_standard = {
			positive = no
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_failure_on_contract" }
				save_scope_as = task_contract
				save_scope_value_as = { name = extra_reward value = flag:no }
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = 0
					PRESTIGE = 0
					PIETY = task_contract_failure_piety_loss_full_value
					PROVISIONS = task_contract_failure_provisions_gain_minor_value
					OPINION = task_contract_opinion_standard_failure_value
					OPINION_TYPE = failed_task_contract_opinion
					CONTACT = no
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
			}
		}
	}
}

######################################################################
# Copy the Scriptures
# A monastery in the employer's realm needs sacred manuscripts copied.
# Three rounds of work: learning, stewardship, or the camp priest.
######################################################################
ppr_copy_scripture = {
	group = laamp_contracts_learning_group
	icon = "gfx/interface/icons/scheme_types/learning.dds"

	travel = yes
	use_diplomatic_range = no

	weight = {
		value = task_contract_weight_default_value
		add = ppr_contracts_weight_up_religious_value
		add = laamp_contracts_weight_up_learning_value
		scope:employer = {
			add = {
				if = {
					limit = { has_trait = zealous }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = theologian }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = cynical }
					add = task_contract_weight_malus_employer_has_associated_traits_value
				}
				min = task_contract_weight_employer_associated_traits_min_value
				max = task_contract_weight_employer_associated_traits_max_value
			}
			multiply = task_contract_weight_by_tier_value
			add = task_contract_weight_employer_contact_list_value
		}
	}

	valid_to_create = {
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		employer_has_treasury_to_offer_job_trigger = yes
		valid_laamp_sensible_start_trigger = yes
		rule_out_dramatic_laamp_employers_trigger = yes
		faith = scope:employer.faith
		scope:employer = { ppr_can_offer_copy_scripture_contract_trigger = yes }
	}
	valid_to_accept = {
		valid_laamp_basic_accept_only_trigger = yes
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		faith = scope:employer.faith
	}
	valid_to_continue = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
		task_contract_taker = { faith = root.task_contract_employer.faith }
	}
	valid_to_keep = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
	}

	on_create = {
		scope:contract = {
			save_scope_as = task_contract
			grab_gold_fuzz_number_effect = yes
			set_variable = {
				name = gold_success_qualified
				value = task_contract_taker.task_contract_success_gold_gain_half_value
			}
			set_variable = {
				name = gold_success_standard
				value = task_contract_taker.task_contract_success_gold_gain_full_value
			}
			set_variable = {
				name = gold_success_critical
				value = task_contract_taker.task_contract_success_gold_gain_critical_value
			}
		}
	}

	on_accepted = {
		task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_accept_contract" }
		save_scope_as = task_contract
		increment_variable_effect = { VAR = ppr_score_tally VAL = 0 }
		increment_variable_effect = { VAR = ppr_rounds_left VAL = 3 }
		task_contract_taker = { trigger_event = ppr_contract_events_2.0010 }
	}

	on_invalidated = {
		task_contract_taker ?= {
			remove_character_flag ?= is_in_task_contract_event_chain
			current_travel_plan ?= {
				if = {
					limit = { is_paused = yes }
					resume_travel_plan = yes
				}
			}
		}
	}

	task_contract_reward = {
		success_qualified = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_qualified
					PRESTIGE = 0
					PIETY = task_contract_success_piety_gain_half_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_reduced_reward_value
					OPINION_TYPE = succeeded_task_contract_opinion
					CONTACT = no
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = { task_successful_noncrim_contract_count_effect = yes }
			}
		}
		success_standard = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_standard
					PRESTIGE = 0
					PIETY = task_contract_success_piety_gain_full_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_standard_reward_value
					OPINION_TYPE = succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = minor_spiritual_fulfillment_value }
				}
			}
		}
		success_critical = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_critical
					PRESTIGE = task_contract_success_prestige_gain_half_value
					PIETY = task_contract_success_piety_gain_critical_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_excelled_reward_value
					OPINION_TYPE = critically_succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = yes
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = medium_spiritual_fulfillment_value }
					add_learning_lifestyle_xp = medium_lifestyle_xp
				}
			}
		}
		failure_standard = {
			positive = no
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_failure_on_contract" }
				save_scope_as = task_contract
				save_scope_value_as = { name = extra_reward value = flag:no }
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = 0
					PRESTIGE = 0
					PIETY = task_contract_failure_piety_loss_full_value
					PROVISIONS = task_contract_failure_provisions_gain_minor_value
					OPINION = task_contract_opinion_standard_failure_value
					OPINION_TYPE = failed_task_contract_opinion
					CONTACT = no
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
			}
		}
	}
}

######################################################################
# A Quarrel of Monks
# Two religious houses in the employer's realm quarrel over land, relics
# and precedence. The employer asks the adventurer to mediate.
######################################################################
ppr_monastic_dispute = {
	group = laamp_contracts_diplomacy_group
	icon = "gfx/interface/icons/scheme_types/diplomacy.dds"

	travel = yes
	use_diplomatic_range = no

	weight = {
		value = task_contract_weight_default_value
		add = ppr_contracts_weight_up_religious_value
		add = laamp_contracts_weight_up_diplomacy_value
		add = laamp_contracts_weight_up_diplomacy_slight_value
		scope:employer = {
			add = {
				if = {
					limit = { has_trait = just }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = zealous }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = cynical }
					add = task_contract_weight_malus_employer_has_associated_traits_value
				}
				min = task_contract_weight_employer_associated_traits_min_value
				max = task_contract_weight_employer_associated_traits_max_value
			}
			multiply = task_contract_weight_by_tier_value
			add = task_contract_weight_employer_contact_list_value
		}
	}

	valid_to_create = {
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		employer_has_treasury_to_offer_job_trigger = yes
		valid_laamp_sensible_start_trigger = yes
		rule_out_dramatic_laamp_employers_trigger = yes
		religion = scope:employer.religion
		scope:employer = { ppr_can_offer_monastic_dispute_contract_trigger = yes }
	}
	valid_to_accept = {
		valid_laamp_basic_accept_only_trigger = yes
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		religion = scope:employer.religion
	}
	valid_to_continue = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
		exists = var:ppr_house_a
		exists = var:ppr_house_b
		task_contract_taker = { religion = root.task_contract_employer.religion }
	}
	valid_to_keep = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
	}

	on_create = {
		scope:contract = {
			save_scope_as = task_contract
			task_contract_employer = {
				random_sub_realm_barony = {
					limit = { ppr_religious_house_barony_trigger = yes }
					save_scope_as = ppr_house_a
				}
				random_sub_realm_barony = {
					limit = {
						ppr_religious_house_barony_trigger = yes
						NOT = { this = scope:ppr_house_a }
					}
					save_scope_as = ppr_house_b
				}
			}
			if = {
				limit = {
					exists = scope:ppr_house_a
					exists = scope:ppr_house_b
				}
				set_variable = {
					name = ppr_house_a
					value = scope:ppr_house_a
				}
				set_variable = {
					name = ppr_house_b
					value = scope:ppr_house_b
				}
			}
			grab_gold_fuzz_number_effect = yes
			set_variable = {
				name = gold_success_standard
				value = task_contract_taker.task_contract_success_gold_gain_full_value
			}
			set_variable = {
				name = gold_success_critical
				value = task_contract_taker.task_contract_success_gold_gain_critical_value
			}
		}
	}

	on_accepted = {
		task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_accept_contract" }
		save_scope_as = task_contract
		task_contract_taker = { trigger_event = ppr_contract_events_2.0020 }
	}

	on_invalidated = {
		task_contract_taker ?= {
			remove_character_flag ?= is_in_task_contract_event_chain
			current_travel_plan ?= {
				if = {
					limit = { is_paused = yes }
					resume_travel_plan = yes
				}
			}
		}
	}

	task_contract_reward = {
		success_standard = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_standard
					PRESTIGE = task_contract_success_prestige_gain_half_value
					PIETY = task_contract_success_piety_gain_half_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_standard_reward_value
					OPINION_TYPE = succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = minor_spiritual_fulfillment_value }
				}
			}
		}
		success_critical = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_critical
					PRESTIGE = task_contract_success_prestige_gain_half_value
					PIETY = task_contract_success_piety_gain_full_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_excelled_reward_value
					OPINION_TYPE = critically_succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = yes
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = medium_spiritual_fulfillment_value }
				}
			}
		}
		failure_standard = {
			positive = no
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_failure_on_contract" }
				save_scope_as = task_contract
				save_scope_value_as = { name = extra_reward value = flag:no }
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = 0
					PRESTIGE = 0
					PIETY = task_contract_failure_piety_loss_full_value
					PROVISIONS = task_contract_failure_provisions_gain_minor_value
					OPINION = task_contract_opinion_standard_failure_value
					OPINION_TYPE = failed_task_contract_opinion
					CONTACT = no
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
			}
		}
	}
}

######################################################################
# Guard the Relic Procession
# The employer parades a holy relic through their lands, and the
# adventurer must keep it safe through two encounters. Needs By God Alone.
######################################################################
ppr_guard_relic_procession = {
	group = laamp_contracts_hireling_group
	icon = "gfx/interface/icons/scheme_types/martial.dds"

	travel = yes
	use_diplomatic_range = no

	weight = {
		value = task_contract_weight_interesting_almost_rare_value
		add = ppr_contracts_weight_up_religious_value
		add = laamp_contracts_weight_up_martial_value
		add = laamp_contracts_weight_up_martial_slight_value
		scope:employer = {
			add = {
				if = {
					limit = { has_trait = zealous }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = paranoid }
					add = task_contract_weight_bonus_employer_has_associated_traits_value
				}
				if = {
					limit = { has_trait = cynical }
					add = task_contract_weight_malus_employer_has_associated_traits_value
				}
				min = task_contract_weight_employer_associated_traits_min_value
				max = task_contract_weight_employer_associated_traits_max_value
			}
			multiply = task_contract_weight_by_tier_value
			add = task_contract_weight_employer_contact_list_value
		}
	}

	valid_to_create = {
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		employer_has_treasury_to_offer_job_trigger = yes
		valid_laamp_sensible_start_trigger = yes
		rule_out_dramatic_laamp_employers_trigger = yes
		faith = scope:employer.faith
		scope:employer = { ppr_can_offer_relic_procession_contract_trigger = yes }
	}
	valid_to_accept = {
		valid_laamp_basic_accept_only_trigger = yes
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:employer
			LAAMP = root
		}
		faith = scope:employer.faith
	}
	valid_to_continue = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
		var:ppr_relic ?= { artifact_owner = root.task_contract_employer }
		task_contract_taker = { faith = root.task_contract_employer.faith }
	}
	valid_to_keep = {
		valid_laamp_basic_trigger = {
			EMPLOYER = root.task_contract_employer
			LAAMP = root.task_contract_taker
		}
		var:ppr_relic ?= { artifact_owner = root.task_contract_employer }
	}

	on_create = {
		scope:contract = {
			save_scope_as = task_contract
			task_contract_employer = {
				random_character_artifact = {
					limit = { has_variable = pam_saint_relic_saint }
					save_scope_as = ppr_relic
				}
			}
			if = {
				limit = { exists = scope:ppr_relic }
				set_variable = {
					name = ppr_relic
					value = scope:ppr_relic
				}
			}
			grab_gold_fuzz_number_effect = yes
			set_variable = {
				name = gold_success_standard
				value = task_contract_taker.task_contract_success_gold_gain_full_value
			}
			set_variable = {
				name = gold_success_critical
				value = task_contract_taker.task_contract_success_gold_gain_critical_value
			}
		}
	}

	on_accepted = {
		task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_accept_contract" }
		save_scope_as = task_contract
		increment_variable_effect = { VAR = ppr_score_tally VAL = 0 }
		task_contract_taker = { trigger_event = ppr_contract_events_2.0030 }
	}

	on_invalidated = {
		task_contract_taker ?= {
			remove_character_flag ?= is_in_task_contract_event_chain
			current_travel_plan ?= {
				if = {
					limit = { is_paused = yes }
					resume_travel_plan = yes
				}
			}
		}
	}

	task_contract_reward = {
		success_standard = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_standard
					PRESTIGE = task_contract_success_prestige_gain_half_value
					PIETY = task_contract_success_piety_gain_half_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_standard_reward_value
					OPINION_TYPE = succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = minor_spiritual_fulfillment_value }
				}
			}
		}
		success_critical = {
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
				save_scope_as = task_contract
				ppr_set_extra_reward_effect = yes
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = scope:task_contract.var:gold_success_critical
					PRESTIGE = task_contract_success_prestige_gain_full_value
					PIETY = task_contract_success_piety_gain_full_value
					PROVISIONS = 0
					OPINION = task_contract_opinion_excelled_reward_value
					OPINION_TYPE = critically_succeeded_task_contract_opinion
					CONTACT = yes
					CONTACT_HOOK = yes
					EXTRA_REWARD = scope:extra_reward
				}
				task_contract_taker = {
					task_successful_noncrim_contract_count_effect = yes
					if = { limit = { has_pam_dlc_trigger = yes } change_spiritual_fulfillment = medium_spiritual_fulfillment_value }
				}
			}
		}
		failure_standard = {
			positive = no
			should_print_on_complete = yes
			effect = {
				task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_failure_on_contract" }
				save_scope_as = task_contract
				save_scope_value_as = { name = extra_reward value = flag:no }
				laamp_rewards_disburse_ordinary_currency_effect = {
					GOLD = 0
					PRESTIGE = 0
					PIETY = task_contract_failure_piety_loss_full_value
					PROVISIONS = task_contract_failure_provisions_gain_minor_value
					OPINION = task_contract_opinion_standard_failure_value
					OPINION_TYPE = failed_task_contract_opinion
					CONTACT = no
					CONTACT_HOOK = no
					EXTRA_REWARD = scope:extra_reward
				}
			}
		}
	}
}
