Scripted effect
bastard_pregnancy_mother_announcement_effect
bastard_pregnancy_mother_announcement_effect = yesgame/common/scripted_effects/00_bastard_effects.txt, line 497 (206 lines). No parameters.
bastard_pregnancy_mother_announcement_effect is a scripted effect in Crusader Kings III, written at line 497 of its file. It takes no parameters: bastard_pregnancy_mother_announcement_effect = yes. The game's script calls it in 1 place, among them bastardy_pregnancy_announcement_effect (scripted effect). Patch 1.20.1.2, from game/common/scripted_effects/00_bastard_effects.txt.
What it does
scope:mother:set_known_bastard_on_pregnancy = yes- Event pregnancy.6001 (after 3 days)
- scope:real_father: Event pregnancy.6002 (after 3 days)
If
- scope:mother: Is married
Then
- scope:mother › Every spouse:
Otherwise
- Event pregnancy.6003 (after 3 days)
scope:mother:- Every Parent:
- Where:
- Is played by a person
accepts_adultery_without_penalty_trigger = no
- Event pregnancy.6004 (after 3 days)
- Where:
- Every child:
- Where:
- Is played by a person
accepts_adultery_without_penalty_trigger = no
- Event pregnancy.6004 (after 3 days)
- Where:
- Every sibling:
- Where:
- Is played by a person
accepts_adultery_without_penalty_trigger = no
- Event pregnancy.6004 (after 3 days)
- Where:
- Every Parent:
scope:real_father:If
a check the game hides
Then
primary_partner = { … }
- Every Parent:
- Where:
- Is played by a person
accepts_adultery_without_penalty_trigger = no
- Event pregnancy.6006 (after 3 days)
- Where:
- Every child:
- Where:
- Event pregnancy.6006 (after 3 days)
- Every sibling:
- Where:
- Event pregnancy.6006 (after 3 days)
• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists
“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.
The script as written (120 lines of game script)
bastard_pregnancy_mother_announcement_effect = {
hidden_effect = {
if = {
limit = {
NOT = { has_trait = pregnant }
}
add_trait_force_tooltip = pregnant
}
}
# Could build an event target list instead, and use it to fire a first_valid on_action where all the events have triggers inside them so that only one event will fire for any given character
scope:mother = {
set_known_bastard_on_pregnancy = yes
add_character_flag = {
flag = pregnancy_real_father_of_bastard_is_known_flag
months = 9
}
trigger_event = {
id = pregnancy.6001
days = 3
}
}
scope:real_father = {
trigger_event = {
id = pregnancy.6002
days = 3
}
}
if = {
limit = {
scope:mother = { is_married = yes }
}
scope:mother = {
every_spouse = {
if = {
limit = { accepts_adultery_without_penalty_trigger = yes }
trigger_event = {
id = pregnancy.6999
days = 3
}
}
else = {
trigger_event = {
id = pregnancy.6003
days = 3
}
}
}
}
}
scope:mother = {
every_parent = {
limit = {
is_ai = no # No need to send pure notifications to AI
NOR = {
this = scope:mother
this = scope:real_father
}
trigger_if = {
limit = { exists = scope:father }
this != scope:father
}
accepts_adultery_without_penalty_trigger = no
}
add_to_list = mother_family_list
trigger_event = {
id = pregnancy.6004
days = 3
}
}
every_child = {
limit = {
is_ai = no # No need to send pure notifications to AI
NOR = {
this = scope:mother
this = scope:real_father
}
trigger_if = {
limit = {
exists = scope:father
}
this != scope:father
}
accepts_adultery_without_penalty_trigger = no
}
add_to_list = mother_family_list
trigger_event = {
id = pregnancy.6004
days = 3
}
}
every_sibling = {
limit = {
is_ai = no # No need to send pure notifications to AI
NOR = {
this = scope:mother
this = scope:real_father
}
trigger_if = {
limit = {
exists = scope:father
}
this != scope:father
}
accepts_adultery_without_penalty_trigger = no
}
add_to_list = mother_family_list
trigger_event = {
id = pregnancy.6004
days = 3
}
}
}
scope:real_father = {
if = {
limit = { exists = primary_partner }
primary_partner = {As written in game/common/scripted_effects/00_bastard_effects.txt.
The first 120 of its 206 lines; the rest is in game/common/scripted_effects/00_bastard_effects.txt from line 497.
Where it is used
Every place in common/, events/ and history/ that calls bastard_pregnancy_mother_announcement_effect.
Scripted effects (1)
Source: game/common/scripted_effects/00_bastard_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.