﻿story_cycle_martial_lifestyle_warhorse = {
	visible = yes

	icon = {
		trigger = { var:bap_horse_color ?= flag:brown }
		reference = "gfx/interface/icons/pets/bap_horse_brown.dds"
	}
	icon = {
		trigger = { var:bap_horse_color ?= flag:black }
		reference = "gfx/interface/icons/pets/bap_horse_black.dds"
	}
	icon = {
		trigger = { var:bap_horse_color ?= flag:white }
		reference = "gfx/interface/icons/pets/bap_horse_white.dds"
	}
	icon = {
		trigger = { var:bap_horse_color ?= flag:spotted }
		reference = "gfx/interface/icons/pets/bap_horse_spotted.dds"
	}
	icon = {
		trigger = { always = yes }
		reference = "gfx/interface/icons/pets/bap_horse_brown.dds"
	}
	background = {
		reference = "gfx/interface/illustrations/event_scenes/courtyard.dds"
	}

	visualization = {
		custom_string_key = "bap_story_cycle_warhorse_info"
		decisions = {
			bap_abandon_pet_decision
		}
		modifiers = {
			horse_story_modifier
			horse_strength_modifier
			horse_agility_modifier
			horse_endurance_modifier
			horse_fierceness_modifier
			horse_strength_strength_modifier
			horse_agility_strength_modifier
			horse_agility_agility_modifier
			horse_endurance_strength_modifier
			horse_endurance_agility_modifier
			horse_endurance_endurance_modifier
			horse_fierceness_strength_modifier
			horse_fierceness_agility_modifier
			horse_fierceness_endurance_modifier
			horse_fierceness_fierceness_modifier
			horse_practice_modifier
			cursed_horse_modifier
		}
	}

	on_setup = {
		if = {
			limit = { NOT = { exists = var:bap_horse_color } }
			random_list = {
				25 = { set_variable = { name = bap_horse_color value = flag:brown } }
				25 = { set_variable = { name = bap_horse_color value = flag:black } }
				25 = { set_variable = { name = bap_horse_color value = flag:white } }
				25 = { set_variable = { name = bap_horse_color value = flag:spotted } }
			}
		}
		assign_horse_gender_effect = { GENDER = random }
		story_owner = {
			add_character_modifier = {
				modifier = horse_story_modifier
			}
			bap_add_warhorse_pet_upkeep_effect = yes
			add_character_flag = had_warhorse_story
			set_variable = {
				name = warhorse_modifier_level
				value = 0
			}
		}
		if = {
			limit = {
				NOR = {
					exists = var:story_cycle_horse_name
					story_owner = {
						has_character_flag = is_in_naming_event
					}
				}
			}
			story_owner = {
				add_character_flag = is_in_naming_event
				trigger_event = {
					id = warhorse.0001
					days = 2
				}
			}
		}
	}

	on_end = {
		story_owner = {
			if = {
				limit = {
					is_alive = yes
					has_character_flag = bap_warhorse_is_dying
					NOT = { has_character_flag = bap_pet_story_abandoning }
				}
				bap_prepare_pet_memorial_effect = yes
			}
			remove_character_flag = bap_warhorse_is_dying
			bap_remove_warhorse_pet_upkeep_effect = yes
			remove_horse_story_modifiers_effect = yes
		}
	}

	on_owner_death = {
		end_story = yes
	}

	# Keep the visible monthly upkeep matched to the current game rule.
	effect_group = {
		days = 30
		chance = 100

		trigger = {
			story_owner = { is_alive = yes }
		}

		triggered_effect = {
			trigger = { always = yes }
			effect = {
				story_owner = { bap_add_warhorse_pet_upkeep_effect = yes }
			}
		}
	}

	effect_group = {
		days = { 550 800 }
		chance = 25

		trigger = {
			has_game_rule = bap_pet_events_rare
			exists = var:story_cycle_horse_name
			story_owner = {
				is_available = yes
				NOT = {
					has_character_flag = is_breeding_warhorse
				}
			}
		}

		triggered_effect = {
			trigger = { exists = var:story_cycle_horse_name }
			effect = {
				story_owner = {
					trigger_event = {
						on_action = ongoing_warhorse_events
					}
				}
			}
		}
	}

	effect_group = {
		days = { 275 400 }
		chance = 25

		trigger = {
			has_game_rule = bap_pet_events_normal
			exists = var:story_cycle_horse_name
			story_owner = {
				is_available = yes
				NOT = {
					has_character_flag = is_breeding_warhorse
				}
			}
		}

		triggered_effect = {
			trigger = { exists = var:story_cycle_horse_name }
			effect = {
				story_owner = {
					trigger_event = {
						on_action = ongoing_warhorse_events
					}
				}
			}
		}
	}

	effect_group = {
		days = { 140 250 }
		chance = 25

		trigger = {
			has_game_rule = bap_pet_events_frequent
			exists = var:story_cycle_horse_name
			story_owner = {
				is_available = yes
				NOT = {
					has_character_flag = is_breeding_warhorse
				}
			}
		}

		triggered_effect = {
			trigger = { exists = var:story_cycle_horse_name }
			effect = {
				story_owner = {
					trigger_event = {
						on_action = ongoing_warhorse_events
					}
				}
			}
		}
	}

	effect_group = {
		days = { 5000 7000 }
		chance = 100

		trigger = {
			story_owner = {
				is_available = yes
			}
		}

		triggered_effect = {
			trigger = { always = yes }
			effect = {
				story_owner = {
					add_character_flag = {
						flag = is_breeding_warhorse
						days = 200
					}
					trigger_event = {
						on_action = breed_warhorse
					}
				}
			}
		}
	}

	effect_group = {
		days = { 9000 12000 }
		chance = 100

		trigger = {
			exists = var:story_cycle_horse_name
			story_owner = {
				is_available = yes
				NOT = { has_character_flag = bap_warhorse_is_dying }
				NOT = { has_character_flag = is_breeding_warhorse }
			}
		}

		triggered_effect = {
			trigger = { always = yes }
			effect = {
				story_owner = {
					add_character_flag = bap_warhorse_is_dying
					trigger_event = bap_buy_pet.9103
				}
			}
		}
	}
}
