N3OW/events/dlc/ep1/ep1_court_position_events.txt
2026-01-06 14:25:21 +01:00

552 lines
11 KiB
Text

namespace = court_position
################################
# FLAVOR EVENTS
# 1001 - 8999
################################
#############################
# MURDER SAVE EVENTS
# 9001 - 9199
# by Linnéa Thimrén
#############################
###############
# SAVED BY FOOD TASTER
# FOR MURDERER: Saved from poisoned food by food taster
# by Linnéa Thimrén
court_position.9001 = {
type = character_event
window = scheme_failed_event
title = court_position.9001.t
desc = {
desc = court_position.9001.desc
triggered_desc = {
trigger = { exists = local_var:food_taster_dies }
desc = court_position.9001.food_taster_dies
}
}
theme = murder_scheme
left_portrait = {
character = scope:owner
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
center_portrait = {
character = scope:food_taster
animation = poison
}
right_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
override_background = { reference = feast }
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
trigger = {
scope:target = {
employs_court_position = food_taster_court_position
any_court_position_holder = {
type = food_taster_court_position
foodtaster_will_actually_do_job_trigger = yes
}
}
}
immediate = {
scope:target = {
random_court_position_holder = {
type = food_taster_court_position
limit = { is_physically_able = yes }
save_scope_as = food_taster
}
}
murder_failure_effect = yes
hidden_effect = {
random = {
chance = 75
set_local_variable = {
name = food_taster_dies
value = yes
}
}
}
}
option = {
name = murder_save.0001.a
scope:scheme = { end_scheme = yes }
}
option = {
name = murder_save.0001.b
restart_murder_scheme_effect = yes
}
after = {
# Fire the rest of the outcome.
scope:target = { trigger_event = court_position.9002 }
if = {
limit = { exists = local_var:food_taster_dies }
show_as_tooltip = {
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:food_taster
REASON = death_poison
}
}
}
}
}
# FOR TARGET: Food taster dies to poison
court_position.9002 = {
type = character_event
window = scheme_target_event
title = court_position.9001.t
desc = {
desc = court_position.9002.desc
triggered_desc = {
trigger = { exists = local_var:food_taster_dies }
desc = court_position.9002.food_taster_dies
}
triggered_desc = {
trigger = { exists = scope:scheme_discovered }
desc = court_position.9002.owner_discovered
}
}
theme = murder_scheme
left_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
center_portrait = {
character = scope:food_taster
animation = poison
}
right_portrait = {
character = scope:owner_to_reveal
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
immediate = {
set_variable = {
name = block_death_event_from
value = scope:food_taster
days = 3
}
# Handle the death of the food taster, if necessary
if = {
limit = { exists = local_var:food_taster_dies }
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:food_taster
REASON = death_poison
}
}
}
# Who could do such a thing?
option = {
name = murder_save.1001.a
trigger = {
NOT = { exists = scope:scheme_discovered }
}
custom_tooltip = murder_save.failure_unknown_owner_tt
}
# Vengeance!
option = {
name = murder_save.1001.b
trigger = { exists = scope:scheme_discovered }
custom_tooltip = murder_save.failure_known_owner_tt
}
after = {
add_character_modifier = {
modifier = watchful_modifier
days = watchful_modifier_duration
}
}
}
###############
# SAVED BY CUP-BEARER
# FOR MURDERER: Saved from poisoned drink by cup-bearer
# by Linnéa Thimrén
court_position.9011 = {
type = character_event
window = scheme_failed_event
title = court_position.9011.t
desc = {
desc = court_position.9011.desc
triggered_desc = {
trigger = { exists = local_var:cupbearer_dies }
desc = court_position.9011.cupbearer_dies
}
}
theme = murder_scheme
left_portrait = {
character = scope:owner
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
center_portrait = {
character = scope:food_taster
animation = poison
}
right_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
trigger = {
scope:target = {
employs_court_position = cupbearer_court_position
any_court_position_holder = {
type = cupbearer_court_position
cupbearer_will_actually_do_job_trigger = yes
}
}
}
immediate = {
scope:target = {
random_court_position_holder = {
type = cupbearer_court_position
limit = { is_physically_able = yes }
save_scope_as = cupbearer
}
}
murder_failure_effect = yes
hidden_effect = {
random = {
chance = 75
set_local_variable = {
name = cupbearer_dies
value = yes
}
}
}
}
option = {
name = murder_save.0001.a
scope:scheme = { end_scheme = yes }
}
option = {
name = murder_save.0001.b
restart_murder_scheme_effect = yes
}
after = {
# Fire the rest of the outcome.
scope:target = { trigger_event = court_position.9012 }
if = {
limit = { exists = local_var:cupbearer_dies }
show_as_tooltip = {
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:cupbearer
REASON = death_poison
}
}
}
}
}
# FOR TARGET: Cup-bearer dies to poison
court_position.9012 = {
type = character_event
window = scheme_target_event
title = court_position.9011.t
desc = {
desc = court_position.9012.desc
triggered_desc = {
trigger = { exists = local_var:cupbearer_dies }
desc = court_position.9012.cupbearer_dies
}
triggered_desc = {
trigger = { exists = scope:scheme_discovered }
desc = court_position.9002.owner_discovered
}
}
theme = murder_scheme
left_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
center_portrait = {
character = scope:food_taster
animation = poison
}
right_portrait = {
character = scope:owner_to_reveal
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
immediate = {
set_variable = {
name = block_death_event_from
value = scope:cupbearer
days = 3
}
# Handle the death of the cupbearer, if necessary
if = {
limit = { exists = local_var:cupbearer_dies }
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:cupbearer
REASON = death_poison
}
}
}
# Who could do such a thing?
option = {
name = murder_save.1001.a
trigger = {
NOT = { exists = scope:scheme_discovered }
}
custom_tooltip = murder_save.failure_unknown_owner_tt
}
# Vengeance!
option = {
name = murder_save.1001.b
trigger = { exists = scope:scheme_discovered }
custom_tooltip = murder_save.failure_known_owner_tt
}
after = {
add_character_modifier = {
modifier = watchful_modifier
days = watchful_modifier_duration
}
}
}
###############
# SAVED BY BODYGUARD
# FOR MURDERER: Saved from assassin by bodyguard
# by Linnéa Thimrén
court_position.9021 = {
type = character_event
window = scheme_failed_event
title = court_position.9021.t
desc = {
desc = court_position.9021.desc
triggered_desc = {
trigger = { exists = local_var:bodyguard_dies }
desc = court_position.9021.bodyguard_dies
}
}
theme = murder_scheme
left_portrait = {
character = scope:owner
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
center_portrait = {
character = scope:bodyguard
triggered_animation = {
trigger = { is_alive = no }
animation = map_fear
}
animation = random_weapon_aggressive
camera = camera_event_center_pointing_left
}
right_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
trigger = {
scope:target = {
employs_court_position = bodyguard_court_position
any_court_position_holder = {
type = bodyguard_court_position
bodyguard_will_actually_do_job_trigger = yes
}
}
}
immediate = {
scope:target = {
random_court_position_holder = {
type = bodyguard_court_position
limit = { is_physically_able = yes }
save_scope_as = bodyguard
}
}
murder_failure_effect = yes
hidden_effect = {
random = {
chance = 75
set_local_variable = {
name = bodyguard_dies
value = yes
}
}
}
}
option = {
name = murder_save.0001.a
scope:scheme = { end_scheme = yes }
}
option = {
name = murder_save.0001.b
restart_murder_scheme_effect = yes
}
after = {
# Fire the rest of the outcome.
scope:target = { trigger_event = court_position.9022 }
if = {
limit = { exists = local_var:bodyguard_dies }
show_as_tooltip = {
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:bodyguard
REASON = death_murder
}
}
}
}
}
# FOR TARGET: Bodyguard dies to assassin
court_position.9022 = {
type = character_event
window = scheme_target_event
title = court_position.9021.t
desc = {
desc = court_position.9022.desc
triggered_desc = {
trigger = { exists = local_var:bodyguard_dies }
desc = court_position.9022.bodyguard_dies
}
triggered_desc = {
trigger = { exists = scope:scheme_discovered }
desc = court_position.9002.owner_discovered
}
}
theme = murder_scheme
left_portrait = {
character = scope:target
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = rage
}
animation = paranoia
}
center_portrait = {
character = scope:bodyguard
triggered_animation = {
trigger = { is_alive = no }
animation = map_fear
}
animation = random_weapon_aggressive
}
right_portrait = {
character = scope:owner_to_reveal
triggered_animation = {
trigger = { exists = scope:scheme_discovered }
animation = fear
}
animation = stress
}
immediate = {
set_variable = {
name = block_death_event_from
value = scope:bodyguard
days = 3
}
# Handle the death of the bodyguard, if necessary
if = {
limit = { exists = local_var:bodyguard_dies }
murder_interception_handle_extra_deaths_effect = {
VICTIM = scope:bodyguard
REASON = death_murder
}
}
}
# Who could do such a thing?
option = {
name = murder_save.1001.a
trigger = {
NOT = { exists = scope:scheme_discovered }
}
custom_tooltip = murder_save.failure_unknown_owner_tt
}
# Vengeance!
option = {
name = murder_save.1001.b
trigger = { exists = scope:scheme_discovered }
custom_tooltip = murder_save.failure_known_owner_tt
}
after = {
add_character_modifier = {
modifier = watchful_modifier
days = watchful_modifier_duration
}
}
}