trigger · has_civil_war
Definition
- Supported scope:
COUNTRY - Supported target:
none
Description
check if participant in civil war as revolter or target
has_civil_warCOUNTRYnonecheck if participant in civil war as revolter or target
实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。
has_civil_war 常用于内战 mod 中,防止玩家或 AI 在内战进行期间触发某些外交决议、国策或事件,避免逻辑冲突。例如,可以在某个决议的 available 块中排除内战状态,或在事件触发条件中检查是否处于内战以分支处理剧情。
# 某外交决议:仅在未卷入内战时可用
available = {
NOT = { has_civil_war = yes }
is_subject = no
}
[civilwar_target](/wiki/trigger/civilwar_target):用于进一步判断内战的对立方是哪个国家,配合 has_civil_war 可精确处理"确认内战存在后再筛选目标"的逻辑。[has_defensive_war](/wiki/trigger/has_defensive_war):内战期间通常伴随防御战争状态,两者联用可区分"普通防御战"与"内战性质的防御战",避免条件误判。[add_civil_war_target](/wiki/effect/add_civil_war_target):在 effect 侧添加内战目标前,先用 has_civil_war 确认当前是否已处于内战,防止重复触发内战逻辑。[has_capitulated](/wiki/trigger/has_capitulated):内战中一方投降后 has_civil_war 会转为 false,两者配合可处理"内战刚结束"的边界状态事件。has_civil_war = no 等价于从未发生过内战:该 trigger 只反映当前时刻是否处于内战状态,内战结束后它立刻返回 false,无法用来判断历史上是否经历过内战,需要用国家标志(has_country_flag)来记录历史状态。[civilwar_target](/wiki/trigger/civilwar_target) 来区分己方与对立方,否则逻辑会同时作用于内战双方。