命令百科

trigger · pc_does_state_stack_demilitarized

Definition

  • Supported scope:STATE
  • Supported target:none

Description

Checks if state got demilitarized stacked on it in the peace conference.
Example:
FROM.FROM.FROM = { pc_does_state_stack_demilitarized = yes }

实战 · 配合 · 坑

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

实战用法

在和平会议结算后的事件或决策中,用于检测某个州是否被叠加了非军事区惩罚,从而触发相应的后续逻辑,例如通知玩家、限制建造或调整抵抗值。典型场景是在和平会议结果处理事件的 trigger 块中,结合 FROM 链精确定位目标州。

# 和平会议后的州事件,检查该州是否被施加了非军事化叠加
state_event = {
    id = my_mod.101
    trigger = {
        FROM.FROM.FROM = {
            pc_does_state_stack_demilitarized = yes
        }
    }
    option = {
        name = my_mod.101.a
        FROM.FROM.FROM = {
            add_resistance = 10
        }
    }
}

配合关系

  • [is_demilitarized_zone](/wiki/trigger/is_demilitarized_zone):检查州当前是否已经处于非军事区状态,与本 trigger 结合可以区分"刚被裁决非军事化"和"早已是非军事区"两种情形,避免重复处理。
  • [set_demilitarized_zone](/wiki/effect/set_demilitarized_zone):在确认叠加裁决后,用此 effect 实际执行或重置非军事区标记,实现和平会议裁决与地图状态同步。
  • [has_state_flag](/wiki/trigger/has_state_flag) / [set_state_flag](/wiki/effect/set_state_flag):配合标记位防止事件重复触发,确保同一州的非军事化叠加只被处理一次。
  • [add_resistance](/wiki/effect/add_resistance):被强制非军事化的州往往伴随高抵抗值,检测到本条件为真后立即叠加抵抗,模拟当地民众的反应。

常见坑

  1. FROM 链层级写错:本 trigger 通常在和平会议相关事件中使用,正确的 scope 路径往往需要 FROM.FROM.FROM 才能指向目标州,直接在顶层或错误层级调用会导致 scope 不是 STATE,触发器静默失败且不报错。
  2. is_demilitarized_zone 混淆pc_does_state_stack_demilitarized 仅在和平会议裁决叠加阶段为真,会议结束后该条件不再成立;若需要在常规游戏流程中判断非军事区状态,应改用 [is_demilitarized_zone](/wiki/trigger/is_demilitarized_zone),否则条件永远为假。