命令百科

trigger · pc_is_liberated

Definition

  • Supported scope:COUNTRY
  • Supported target:none

Description

Checks if country has been liberated in the peace conference.
Example:
CZE = { pc_is_liberated = yes }

实战 · 配合 · 坑

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

实战用法

pc_is_liberated 常用于和平会议后续事件或决策中,判断某个国家是否刚刚通过和平会议被解放,从而触发对应的剧情或奖励效果。例如在捷克斯洛伐克被德国解放后,触发一段重建国家的事件链:

# 在某个事件的 trigger 块中
trigger = {
    CZE = {
        pc_is_liberated = yes
    }
}

配合关系

  • [has_capitulated](/wiki/trigger/has_capitulated):通常先检查目标国是否已投降,再配合 pc_is_liberated 确认其是在和平会议中被解放而非仍处于占领状态。
  • [exists](/wiki/trigger/exists):解放后该国标签会重新存在,配合 exists 确保后续对该国的操作不会因标签不存在而报错。
  • [has_country_flag](/wiki/trigger/has_country_flag):可与国家旗帜配合,在解放事件触发后设旗防止重复触发同一逻辑。
  • [days_since_capitulated](/wiki/trigger/days_since_capitulated):用于限定在投降后多少天内且已被解放的时间窗口,使条件更精确。

常见坑

  1. Scope 混用pc_is_liberated 必须在 COUNTRY scope 下调用,直接写在顶层或写在 STATE scope 下会导致脚本报错或永远返回假,务必用 CZE = { pc_is_liberated = yes } 的形式显式切换到目标国 scope。
  2. 时机误判:该 trigger 仅在和平会议流程结束后短暂为真,若事件触发时机过晚(例如距和平会议已过多天),可能已经不满足条件,建议搭配 on_peace_conference_ended 等相关 on_action 来确保在正确时机检查。