﻿namespace = regula_change_birth_rate

# Decision to change birth rate
regula_change_birth_rate.0001 = {
	type = character_event
	title = regula_change_birth_rate.0001.t
	desc = {
		triggered_desc = {
			trigger = {
				faith = { controls_holy_site_with_flag = holy_site_reg_offspring_flag }
			}
			desc = regula_change_birth_rate.0001.desc_holy
		}
		triggered_desc = {
			trigger = {
				faith = { this = faith:regula_no_holy_sites }
			}
			desc = regula_change_birth_rate.0001.desc_nomad
		}

		first_valid = {
			triggered_desc = {
				trigger = {
					global_var:regula_female_offspring_holy_site_chance = 99
				}
				desc = regula_change_birth_rate.0001.female_99
			}
			triggered_desc = {
				trigger = {
					global_var:regula_female_offspring_holy_site_chance = 90
				}
				desc = regula_change_birth_rate.0001.female_90
			}
			triggered_desc = {
				trigger = {
					global_var:regula_female_offspring_holy_site_chance = 75
				}
				desc = regula_change_birth_rate.0001.female_75
			}
			triggered_desc = {
				trigger = {
					global_var:regula_female_offspring_holy_site_chance = 49
				}
				desc = regula_change_birth_rate.0001.natural
			}
		}
	}

	theme = regula_theme
	override_background = {
		reference = godless_shrine
	}
	right_portrait = {
		character = global_var:magister_character
		animation = personality_bold
	}

	immediate = {
		if = {
			limit = {
				faith = { controls_holy_site_with_flag = holy_site_reg_offspring_flag }
			}
			faith = {
				every_holy_site = {
					limit = {
						has_holy_site_flag = holy_site_reg_offspring_flag
					}
					save_scope_as = offspring_holy_site
				}
			}
		}
	}

	option = { # Only Females
		name = regula_change_birth_rate.0001.a
		flavor = regula_change_birth_rate.0001.a.tt
		set_global_variable = {
			name = regula_female_offspring_holy_site_chance
			value = 99
		}
	}

	option = { # 90% Female, 10% Male
		name = regula_change_birth_rate.0001.b
		flavor = regula_change_birth_rate.0001.b.tt
		set_global_variable = {
			name = regula_female_offspring_holy_site_chance
			value = 90
		}
	}

	option = { # 75% Female 25% Male (Default Holy Site value)
		name = regula_change_birth_rate.0001.c
		flavor = regula_change_birth_rate.0001.c.tt
		set_global_variable = {
			name = regula_female_offspring_holy_site_chance
			value = 75
		}
	}

	option = { # 49% Female 51% Male (Vanilla values)
	 	name = regula_change_birth_rate.0001.d
		flavor = regula_change_birth_rate.0001.d.tt
		set_global_variable = {
			name = regula_female_offspring_holy_site_chance
			value = 49
		}
	}

	option = { # Cancel
		name = regula_change_birth_rate.0001.cancel
		add_piety_no_experience = regula_change_birth_rate_piety_cost
		hidden_effect = {
			remove_decision_cooldown = regula_change_birth_rate_decision
		}
	}
}

# Pregnancy gender adjustment
regula_change_birth_rate.1000 = {
	hidden = yes

	trigger = {
		character_has_regula_holy_effect_female_offspring = yes
	}

	immediate = {
		random_list = {
			0 = {
				modifier = {
					add = global_var:regula_female_offspring_holy_site_chance
				}

				set_pregnancy_gender = female
			}
			100 = {
				modifier = {
					# Note, do not use subtract, eg
					# subtract = global_var:regula_female_offspring_holy_site_chance
					# This doesn't work, why? No clue m8, subtract apparently isn't a usable keyword in modifiers
					add = {
						subtract = global_var:regula_female_offspring_holy_site_chance
					}
				}

				set_pregnancy_gender = male
			}
		}
	}
}

# Blessed pregnancy effect
# We run this again in case effect was lost due to save/reload
regula_change_birth_rate.1001 = {
	hidden = yes

	trigger = {
		has_trait = regula_blessed_pregnancy # Baby should be female
	}

	immediate = {
		set_pregnancy_gender = female
	}
}

# Remove Blessed pregnancy trait if pregnancy ends prematurely
regula_change_birth_rate.2000 = {
	hidden = yes

	trigger = {
		has_trait = regula_blessed_pregnancy
	}

	immediate = {
		remove_trait = regula_blessed_pregnancy
	}
}