trigger · country_exists
Definition
- Supported scope:
any - Supported target:
THIS,ROOT,PREV,FROM,OWNER,CONTROLLER,OCCUPIED,CAPITAL
Description
check if the specified country exist
country_existsanyTHIS, ROOT, PREV, FROM, OWNER, CONTROLLER, OCCUPIED, CAPITALcheck if the specified country exist
实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。
country_exists 常用于判断某个国家标签是否仍在游戏中存在(未被消灭/吞并),在事件、决议或 focus 中作为先决条件,避免对已消亡的国家执行无效操作。例如在一个联盟外交事件中,只有目标国依然存在时才显示相应选项:
available = {
country_exists = GER
country_exists = SOV
}
也可结合 NOT 使用,当某国家已被消灭时触发特殊剧情分支。
[any_country](/wiki/trigger/any_country) — 遍历所有国家时,通常先用 country_exists 在 limit 中过滤,确保只对仍然存在的国家执行逻辑。[scope_exists](/wiki/trigger/scope_exists) — 两者功能相近但作用对象不同;当不确定 event target 是否有效时,scope_exists 负责判断 scope 本身,而 country_exists 专门针对国家标签,常成对出现做双重保险。[has_global_flag](/wiki/trigger/has_global_flag) — 常与 country_exists 共同放在 trigger / available 块中,先确认国家存在、再检查与该国相关的全局旗帜,防止对已消亡国家的旗帜做出错误判断。[save_global_event_target_as](/wiki/effect/save_global_event_target_as) — 在 effect 块里保存某国为全局事件目标前,往往先用 country_exists 确认该国仍然存在,避免保存一个无效 scope。country_exists 的参数必须是硬编码的国家标签(如 GER),不能填写变量名或带引号的字符串;新手有时写成 country_exists = "GER" 或试图传入 var:some_tag,这在大多数版本下会静默失败或报错。country_exists 是纯 trigger,不能直接放在 effect 块的顶层;若需要在 effect 中做条件分支,必须包裹在 [if](/wiki/effect/if) 的 limit = { } 内部才能生效,直接写在 effect 块中会被解析器忽略。