命令百科

trigger · has_guaranteed

Definition

  • Supported scope:COUNTRY
  • Supported target:THIS, ROOT, PREV, FROM, OWNER, CONTROLLER, OCCUPIED, CAPITAL

Description

check if country has guaranteed specified country

实战 · 配合 · 坑

实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。

实战用法

has_guaranteed 常用于外交事件或国策脚本中,判断某国是否已对目标国发出保证,以决定是否触发连锁外交反应或解锁特定选项。例如在事件中检查玩家是否已经保证了某个小国,从而开放"拉入同盟"或"施压"的选项:

# 在事件选项的 trigger 中检查本国是否保证了波兰
option = {
    name = my_event.1.a
    trigger = {
        has_guaranteed = POL
    }
    # 仅当本国已保证波兰时此选项可见
    add_political_power = -20
}

配合关系

  • [any_guaranteed_country](/wiki/trigger/any_guaranteed_country) — 当需要检查"是否对任意国家有保证"而非特定国家时,与 has_guaranteed 互补使用,覆盖更广泛的条件分支。
  • [has_defensive_war_with](/wiki/trigger/has_defensive_war_with) — 保证触发战争介入后,可搭配此 trigger 验证被保证国是否已进入防御战,形成完整的"保证→介入"逻辑链。
  • [exists](/wiki/trigger/exists) — 使用 has_guaranteed 前通常需先确认目标国仍然存在,避免指向已灭亡国家时产生意外结果。
  • [give_guarantee](/wiki/effect/give_guarantee) — 在 effect 块中给予保证,与 has_guaranteed 形成"若未保证则执行保证"的条件-效果对。

常见坑

  1. scope 混淆has_guaranteed 的主体必须是拥有保证的国家 scope,而括号内填写的是被保证的国家标签。新手容易将两者写反,例如误在被保证国 scope 内使用此 trigger,导致条件永远不成立。
  2. 目标国已不存在:若被保证国已被消灭,直接引用其标签可能不报错但逻辑失效,应在外层先套一个 exists = TAG 保证目标国有效,再使用 has_guaranteed 进行判断。