idk why I dont have a cursor
This commit is contained in:
parent
701d55c01f
commit
cda3acdcea
349 changed files with 78627 additions and 7804 deletions
362
common/scripted_triggers/00_childhood_triggers.txt
Normal file
362
common/scripted_triggers/00_childhood_triggers.txt
Normal file
|
|
@ -0,0 +1,362 @@
|
|||
@infant_upper_age_threshold_value = 2
|
||||
@teen_lower_threshold_value = 13
|
||||
@teen_upper_threshold_value = 19
|
||||
|
||||
child_is_infant_trigger = {
|
||||
age <= @infant_upper_age_threshold_value
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
# Duplicated because there were some weird edge case OR uses where "child_is_infant_trigger = no" read _extremely_ confusingly.
|
||||
child_not_infant_trigger = {
|
||||
age > @infant_upper_age_threshold_value
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
# At what point is it not weird to hear a child using (relatively) advanced reasoning & so able to hold an extended conversation?
|
||||
child_can_have_full_conversations_trigger = {
|
||||
age >= 6
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
child_not_teen_trigger = {
|
||||
child_not_infant_trigger = yes
|
||||
age < @teen_lower_threshold_value
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
# Duplicated because there were some weird edge case OR uses where "child_not_teen_trigger = no" read _extremely_ confusingly.
|
||||
child_is_teen_trigger = {
|
||||
age >= @teen_lower_threshold_value
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
child_old_enough_for_responsibility_trigger = {
|
||||
age >= 8
|
||||
is_adult = no
|
||||
}
|
||||
|
||||
# Note: we don't want to say that children below this definitely can't read, that's a lot of edge cases to account for, but it's convenient to roughly unified trigger we can check for whether pensive characters are more likely to read or be read to.
|
||||
child_likely_reader_trigger = { age >= 7 }
|
||||
|
||||
character_is_teen_trigger = {
|
||||
age >= @teen_lower_threshold_value
|
||||
age <= @teen_upper_threshold_value
|
||||
}
|
||||
|
||||
character_is_teen_or_older_trigger = {
|
||||
age > @teen_lower_threshold_value
|
||||
}
|
||||
|
||||
save_good_friend_character_trigger_check = {
|
||||
is_adult = no
|
||||
age >= root.age_dif_child_down_friend
|
||||
age <= root.age_dif_child_up_friend
|
||||
NOT = { this = root }
|
||||
is_imprisoned = no
|
||||
opinion = {
|
||||
target = root
|
||||
value > -10
|
||||
}
|
||||
NOR = {
|
||||
has_relation_friend = root
|
||||
has_any_bad_relationship_with_root_trigger = yes
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
save_good_crush_character_trigger_check = {
|
||||
is_adult = no
|
||||
age >= root.age_dif_child_down
|
||||
age <= root.age_dif_child_up
|
||||
age > childhood_education_start_age
|
||||
NOT = { this = root }
|
||||
is_imprisoned = no
|
||||
is_close_family_of_root_trigger = no
|
||||
NOR = {
|
||||
root = { has_relation_crush = prev }
|
||||
has_relation_victim = root
|
||||
}
|
||||
OR = {
|
||||
has_sexuality = heterosexual
|
||||
has_sexuality = bisexual
|
||||
has_sexuality = homosexual
|
||||
}
|
||||
is_attracted_to_gender_of = root
|
||||
root = { is_attracted_to_gender_of = prev }
|
||||
OR = {
|
||||
num_of_relation_crush <= 2
|
||||
has_trait = lustful
|
||||
}
|
||||
}
|
||||
|
||||
save_good_bully_character_trigger_check = {
|
||||
is_adult = no
|
||||
age >= 6
|
||||
age >= root.age
|
||||
NOT = { this = root }
|
||||
is_imprisoned = no
|
||||
OR = {
|
||||
has_trait_malicious_trigger = yes
|
||||
has_trait_dominant_trigger = yes
|
||||
has_trait_emotional_trigger = yes
|
||||
}
|
||||
NOR = {
|
||||
has_trait = compassionate
|
||||
has_trait_submissive_trigger = yes
|
||||
}
|
||||
opinion = {
|
||||
target = root
|
||||
value < 0
|
||||
}
|
||||
NOR = {
|
||||
has_any_bad_relationship_with_root_trigger = yes
|
||||
has_relation_victim = root
|
||||
has_relation_friend = root
|
||||
has_relation_crush = root
|
||||
}
|
||||
}
|
||||
|
||||
save_good_victim_character_trigger_check = {
|
||||
is_adult = no
|
||||
age >= 6
|
||||
age <= root.age
|
||||
NOT = { this = root }
|
||||
is_imprisoned = no
|
||||
reverse_opinion = {
|
||||
target = root
|
||||
value < 0
|
||||
}
|
||||
NOR = {
|
||||
has_any_bad_relationship_with_root_trigger = yes
|
||||
has_relation_victim = root
|
||||
has_relation_friend = root
|
||||
has_relation_crush = root
|
||||
}
|
||||
}
|
||||
|
||||
child_suitable_to_play_with_character = {
|
||||
# Is available for events at $CHARACTER$'s locale.
|
||||
is_available_child = yes
|
||||
exists = location
|
||||
location = $CHARACTER$.location
|
||||
# Of a suitable age range.
|
||||
child_not_infant_trigger = yes
|
||||
# Doesn't have a bad relationship with $CHARACTER$.
|
||||
NOT = {
|
||||
has_any_bad_relationship_with_character_trigger = { CHARACTER = $CHARACTER$ }
|
||||
}
|
||||
}
|
||||
|
||||
child_suitable_to_play_with_character_one_sided = {
|
||||
child_suitable_to_play_with_character = { CHARACTER = $CHARACTER$ }
|
||||
is_ai = yes
|
||||
}
|
||||
|
||||
|
||||
|
||||
childhood_mean_child_trigger = {
|
||||
OR = {
|
||||
has_trait = rowdy
|
||||
has_personality_malicious_trigger = yes
|
||||
has_personality_dominant_trigger = yes
|
||||
ai_compassion <= low_negative_ai_value
|
||||
}
|
||||
}
|
||||
|
||||
childhood_loud_child_trigger = {
|
||||
OR = {
|
||||
has_trait = curious
|
||||
has_trait = bossy
|
||||
has_personality_extroverted_trigger = yes
|
||||
has_personality_emotional_trigger = yes
|
||||
ai_energy >= low_positive_ai_value
|
||||
ai_boldness >= low_positive_ai_value
|
||||
}
|
||||
}
|
||||
|
||||
childhood_quiet_child_trigger = {
|
||||
OR = {
|
||||
has_trait = pensive
|
||||
has_personality_submissive_trigger = yes
|
||||
has_personality_introverted_trigger = yes
|
||||
ai_energy <= low_negative_ai_value
|
||||
ai_boldness <= low_negative_ai_value
|
||||
}
|
||||
}
|
||||
|
||||
childhood_nice_child_trigger = {
|
||||
OR = {
|
||||
has_trait = charming
|
||||
has_trait = curious
|
||||
has_personality_benevolent_trigger = yes
|
||||
has_personality_levelheaded_trigger = yes
|
||||
ai_compassion >= low_positive_ai_value
|
||||
}
|
||||
}
|
||||
|
||||
suitable_same_realm_child = {
|
||||
exists = location.county.holder # Scoping like this allows children in the pool to also get this event
|
||||
location.county.holder = {
|
||||
OR = {
|
||||
AND = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age >= 6
|
||||
}
|
||||
any_courtier_or_guest = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age >= 6
|
||||
}
|
||||
any_warden_hostage = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age >= 6
|
||||
}
|
||||
any_vassal = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age >= 6
|
||||
}
|
||||
any_vassal = {
|
||||
any_courtier_or_guest = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age >= 6
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
similar_age_same_court_child = {
|
||||
exists = location.county.holder # Scoping like this allows children in the pool to also get this event
|
||||
location.county.holder = {
|
||||
OR = {
|
||||
AND = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age <= root.age_plus_3
|
||||
age >= age_minus_3
|
||||
}
|
||||
any_courtier_or_guest = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age <= root.age_plus_3
|
||||
age >= age_minus_3
|
||||
}
|
||||
any_warden_hostage = {
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
age <= root.age_plus_3
|
||||
age >= age_minus_3
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
suitable_crush_trigger = {
|
||||
AND = {
|
||||
save_temporary_scope_as = temp_crush
|
||||
is_ai = yes
|
||||
is_available_child = yes
|
||||
NOT = { this = root }
|
||||
child_not_infant_trigger = yes
|
||||
age <= root.age_plus_3
|
||||
age >= root.age_minus_3
|
||||
location = root.location
|
||||
OR = {
|
||||
matching_gender_and_sexuality_trigger = {
|
||||
CHARACTER_1 = root
|
||||
CHARACTER_2 = scope:temp_crush
|
||||
}
|
||||
AND = {
|
||||
has_sexuality = asexual
|
||||
root = {
|
||||
OR = {
|
||||
is_attracted_to_gender_of = scope:temp_crush
|
||||
has_sexuality = asexual
|
||||
}
|
||||
}
|
||||
}
|
||||
AND = {
|
||||
root = { has_sexuality = asexual }
|
||||
OR = {
|
||||
is_attracted_to_gender_of = root
|
||||
has_sexuality = asexual
|
||||
}
|
||||
}
|
||||
}
|
||||
NOT = {
|
||||
relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = root }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
suitable_crush_same_court_child = {
|
||||
exists = location.county.holder # Scoping like this allows children in the pool to also get this event
|
||||
location.county.holder = {
|
||||
OR = {
|
||||
save_good_crush_character_trigger_check = yes
|
||||
any_courtier_or_guest = {
|
||||
save_good_crush_character_trigger_check = yes
|
||||
}
|
||||
any_warden_hostage = {
|
||||
save_good_crush_character_trigger_check = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
guardian_or_court_tutor_trait = {
|
||||
trigger_if = {
|
||||
limit = {
|
||||
any_relation = {
|
||||
type = guardian
|
||||
}
|
||||
}
|
||||
any_relation = {
|
||||
type = guardian
|
||||
has_trait = $TRAIT$
|
||||
}
|
||||
}
|
||||
trigger_else = {
|
||||
court_owner.court_position:court_tutor_court_position ?= {
|
||||
has_trait = $TRAIT$
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
guardian_or_court_tutor_2_trait = {
|
||||
trigger_if = {
|
||||
limit = {
|
||||
any_relation = {
|
||||
type = guardian
|
||||
}
|
||||
}
|
||||
any_relation = {
|
||||
type = guardian
|
||||
OR = {
|
||||
has_trait = $TRAIT$
|
||||
has_trait = $TRAIT_2$
|
||||
}
|
||||
}
|
||||
}
|
||||
trigger_else = {
|
||||
court_owner.court_position:court_tutor_court_position ?= {
|
||||
OR = {
|
||||
has_trait = $TRAIT$
|
||||
has_trait = $TRAIT_2$
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue