Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

flavor_hun.420 骑士比武大会结果

时间范围:无明确 fromto 日期,事件触发后仅发生一次 (fire_only_once = yes)。

触发条件:此事件由其他事件或机制触发(代码中未显示直接触发条件 trigger 字段),其内部逻辑依赖于预设的角色变量:

  • 事件内部会随机(各50%概率)决定 first_tournament_participantsecond_tournament_participant 为胜利者 (tournament_victor),另一人为失败者 (tournament_loser),并设置对应的获胜变量 (first_winssecond_wins)。
  • 玩家的选项取决于是否对参赛者进行了下注(通过变量 first_tournament_participant_betsecond_tournament_participant_bet 判断)以及下注对象是否与随机结果匹配。

关键效果

  • 选项 A (flavor_hun.420.a)
    • 触发条件:玩家对随机结果中的胜利者进行了下注。
    • 效果:对胜利者角色应用 winning_character_effect,对失败者角色应用 losing_character_effect,并对玩家应用 winning_bet_effect(推测为赢得赌注的正面效果)。
  • 选项 B (flavor_hun.420.b)
    • 触发条件:玩家对随机结果中的失败者进行了下注。
    • 效果:对胜利者角色应用 winning_character_effect,对失败者角色应用 losing_character_effect,并对玩家应用 losing_bet_effect(推测为输掉赌注的负面效果)。
  • 选项 C (flavor_hun.420.c)
    • 触发条件:玩家未对任何参赛者下注。
    • 效果:对胜利者角色应用 winning_character_effect,对失败者角色应用 losing_character_effect。玩家无额外得失。
  • 后续事件:无论选择哪个选项,事件结束后都会自动、静默地触发后续事件 flavor_hun.422

背景介绍:在中世纪和文艺复兴时期的欧洲,骑士比武大会不仅是军事训练,也是重要的社交与娱乐活动,贵族们常借此展示勇武、赢得荣誉与赏金。本事件模拟了匈牙利(或其他相关文化区域)一场比武大会的结果揭晓时刻。大会的胜负由命运(游戏内随机数)决定,而作为统治者的玩家可能已根据对参赛骑士的了解或喜好提前下注。事件的处理方式将根据玩家的投注选择与比赛实际结果,带来不同的影响。

完整事件代码

flavor_hun.420 = {
	hide_portraits = yes
	type = country_event
	fire_only_once = yes
	title = {
		first_valid = {
			triggered_desc = {
				trigger = { exists = scope:tournament_victor }
				desc = flavor_hun.420.title
			}
			triggered_desc = {
				trigger = { always = yes }
				desc = flavor_hun.420.title.fallback
			}
		}
	}
	desc = flavor_hun.420.desc
	illustration_tags = {
        10 = happy
        10 = exterior
    }
	immediate = {
		event_illustration_estate_effect = { foreground = estate_type:nobles_estate background = estate_type:nobles_estate }
		random_list = {
			50 = {
				scope:first_tournament_participant = { save_scope_as = tournament_victor }
				scope:second_tournament_participant = { save_scope_as = tournament_loser }
				set_variable = { name = first_wins value = yes days = 20 }
			}
			50 = {
				scope:second_tournament_participant = { save_scope_as = tournament_victor }
				scope:first_tournament_participant = { save_scope_as = tournament_loser }
				set_variable = { name = second_wins value = yes days = 20 }
			}
		}
	}
	option = {
		name = flavor_hun.420.a
		trigger = {
			custom_tooltip = {
				text = flavor_hun.420.a_tt
				OR = {
					AND = {
						has_variable = first_wins
						has_variable = first_tournament_participant_bet
					}
					AND = {
						has_variable = second_wins
						has_variable = second_tournament_participant_bet
					}
				}
			}
		}
		scope:tournament_victor = { winning_character_effect = yes }
		scope:tournament_loser = { losing_character_effect = yes }
		winning_bet_effect = yes
	}
	option = {
		name = flavor_hun.420.b
		trigger = {
			custom_tooltip = {
				text = flavor_hun.420.b_tt
				OR = {
					AND = {
						has_variable = second_wins
						has_variable = first_tournament_participant_bet
					}
					AND = {
						has_variable = first_wins
						has_variable = second_tournament_participant_bet
					}
				}
			}
		}
		scope:tournament_victor = { winning_character_effect = yes }
		scope:tournament_loser = { losing_character_effect = yes }
		losing_bet_effect = yes
	}
	option = {
		name = flavor_hun.420.c
		trigger = {
			custom_tooltip = {
				text = flavor_hun.420.c.tt
				NOT = { has_variable = first_wins }
				NOT = { has_variable = first_tournament_participant_bet }
				NOT = { has_variable = second_wins }
				NOT = { has_variable = second_tournament_participant_bet }
			}
		}
		scope:tournament_victor = { winning_character_effect = yes }
		scope:tournament_loser = { losing_character_effect = yes }
	}
	after = {
		trigger_event_silently = flavor_hun.422
	}
}