namespace = ExpdCT

# Ping event for Marshal (fixes localisation & ensures his portrait is in the top-right of the main event below)
character_event = {
	id = ExpdCT.70010
	is_triggered_only = yes
	hide_window = yes
	immediate = { liege = { character_event = { id = ExpdCT.70011 } } }
}

# Very similar to MNM.70011 , but shows the chance of each outcome & shows the cost & gives a chance to decline

# This event is expected to be called on the Marshal's liege by the Marshal (see ping event above), and assumes that all preconditions have been met.
#  --- IE: ROOT = liege, FROM = Marshal

# In particular, this event requires the following event targets to have been set up previously:
#  --- Marshal: expd_ct_marshal_performing_training
#  --- Trainee: commander_improved

character_event = {
	id      = ExpdCT.70011
	title   = MNM.70010.t
	desc    = MNM.70011.d
	picture = GFX_evt_melee
	border  = GFX_event_normal_frame_war
	
	is_triggered_only = yes
	
	immediate = {
		# Cosmetic: If trainee won't gain a trait, set the relevant flag in advance so the martial stat gain is stated correctly
		event_target:commander_improved = { 
			if = {
				limit = { expd_ct_this_character_has_no_conventional_leadership_traits = no }
				set_character_flag = expd_ct_marshal_no_trait_gain
			}
		}
	}
	
	option = {
		name = EXCELLENT
		
		ai_chance = { factor = 1 } # If the AI takes the targetted_decision, they have already decided it's worthwhile
		
		# Deduct the cost (favor/cash)
		
		# Players with Conclave:
		#  --- If the Marshal owes a favor to ROOT, remove it
		#  --- Otherwise, marshal gains a favor on ROOT
		if = {
			limit = { expd_ct_marshal_training_payment_is_favor = yes }
			if = {
				limit = { event_target:expd_ct_marshal_performing_training = { owes_favor_to = ROOT } }
				remove_favor = event_target:expd_ct_marshal_performing_training
			}
			else = {
				reverse_add_favor = event_target:expd_ct_marshal_performing_training
			}
		}
		# AI and players without Conclave:
		#  --- Transfer tier-dependent wealth to the Marshal (based on the Marshal's tier)
		#  --- This simulates instantly buying a favor from the Marshal
		#  --- AI always get this option because properly deciding what they should do with favors is HARD
		else = {
			if = {
				limit = {
					event_target:expd_ct_marshal_performing_training = {
						expd_ct_this_characters_favor_size_is_emperor = yes
					}
				}
				transfer_scaled_wealth = {
					to    = event_target:expd_ct_marshal_performing_training
					value = 1
					min   = 680
					max   = 680
				}
			}
			else_if = {
				limit = {
					event_target:expd_ct_marshal_performing_training = {
						expd_ct_this_characters_favor_size_is_king = yes
					}
				}
				transfer_scaled_wealth = {
					to    = event_target:expd_ct_marshal_performing_training
					value = 1
					min   = 400
					max   = 400
				}
			}
			else_if = {
				limit = {
					any_courtier_or_vassal = {
						has_job_title = job_marshal
						expd_ct_this_characters_favor_size_is_duke = yes
					}
				}
				transfer_scaled_wealth = {
					to    = event_target:expd_ct_marshal_performing_training
					value = 1
					min   = 200
					max   = 200
				}
			}
			else_if = {
				limit = {
					any_courtier_or_vassal = {
						has_job_title = job_marshal
						expd_ct_this_characters_favor_size_is_baron = yes
					}
				}
				transfer_scaled_wealth = {
					to    = event_target:expd_ct_marshal_performing_training
					value = 1
					min   = 40
					max   = 40
				}
			}
			else = {
				transfer_scaled_wealth = {
					to    = event_target:expd_ct_marshal_performing_training
					value = 1
					min   = 80
					max   = 80
				}
			}
		}
		
		# If applicable, deduct the self-targeted prestige cost
		if = {
			limit = { event_target:commander_improved = { character = ROOT } }
			custom_tooltip = { text = expd_ct_blank_line_tt }
			prestige = -1000
		}
		
		custom_tooltip = { text = expd_ct_blank_line_tt }
		
		# Set the cooldown based on the Marshal's martial stat
		# The value should be equal to the MTTH of the modded base game event, with a minimum cooldown of 3 years
		if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <  2  } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 488 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 488 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <  4  } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 391 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 391 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <  6  } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 313 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 313 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <  8  } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 250 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 250 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <  10 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 200 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 200 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 10 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 170 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 170 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 11 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 144 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 144 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 12 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 123 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 123 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 13 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 104 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 104 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 14 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 89 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 89 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 15 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 75 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 75 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 16 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 64 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 64 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 17 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 58 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 58 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 18 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 52 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 52 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 19 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 47 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 47 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 20 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 44 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 44 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial == 21 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 42 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 42 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <= 23 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 40 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 40 hidden = yes }
			}
		}
		else_if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <= 25 } }
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 38 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 38 hidden = yes }
			}
		}
		else = {
			add_character_modifier     = { name = expd_ct_block_marshal_training months = 36 }
			hidden_tooltip = {
				remove_character_modifier       = expd_ct_block_marshal_training
				add_character_modifier = { name = expd_ct_block_marshal_training months = 36 hidden = yes }
			}
		}
		
		# Add a warning for the user, in case the cooldown will be really long
		if = {
			limit = { event_target:expd_ct_marshal_performing_training = { martial <= 16 } }
			custom_tooltip = { text = expd_ct_block_marshal_training_warning_long_duration_tt }
		}
		
		custom_tooltip = { text = expd_ct_blank_line_tt }
		
		# Don't choose the training ahead of time - show the possibilities to the decision-taker
		expd_ct_choose_marshal_training_for_trainee = yes
		if = {
			limit = { NOT = { event_target:commander_improved = { has_character_flag = expd_ct_marshal_no_trait_gain } } }
			custom_tooltip = { text = expd_ct_blank_line_tt }
		}
		expd_ct_apply_marshal_training_to_trainee_following_targetted_decision = yes
		
	}
	
	option = {
		name = CHANGED_MIND
		ai_chance = { factor = 0 } # If the AI takes the targetted_decision, they have already decided it's worthwhile
	}
	
	after = {
		hidden_tooltip = { clr_character_flag = expd_ct_deciding_marshal_training }
	}
	
}