effect · clr_state_flag
Definition
- Supported scope:
STATE - Supported target:
none
Description
clear state flag
clr_state_flagSTATEnoneclear state flag
实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。
clr_state_flag 用于在完成某个阶段性任务后清除之前通过 set_state_flag 设置的标记,从而重置状态机或允许事件/决议再次触发。典型场景包括:清除用于追踪建设进度的临时标记、在地区占领状态改变后重置相关流程标记。
# 当地区被完全控制后,清除建设中的临时 flag,允许下一阶段决议再次显示
state_event = {
id = my_mod.101
...
option = {
name = my_mod.101.a
clr_state_flag = region_under_construction
}
}
[has_state_flag](/wiki/trigger/has_state_flag):在清除前先用此触发器检查 flag 是否存在,避免逻辑冲突或重复清除。[set_state_flag](/wiki/effect/set_state_flag):两者组成完整的 flag 生命周期管理,一个设置、一个回收,是状态机设计的标准搭档。[modify_state_flag](/wiki/effect/modify_state_flag):若需要的不是清除而是修改数值型 flag,可与 clr_state_flag 配合形成"重置后重设"的模式。[state_event](/wiki/effect/state_event):清除 flag 后常立即触发一个新事件来推进剧情或任务流程的下一阶段。clr_state_flag 只能在 STATE scope 下执行,若在国家或省份 scope 中调用会静默失败且不报错,新手容易因 scope 嵌套层级混乱而写错位置,需仔细核查外层 scope 是否已切换到地区。[has_state_flag](/wiki/trigger/has_state_flag) 做前置检查。