trigger · has_resistance
Definition
- Supported scope:
STATE - Supported target:
any
Description
returns true if state has a resistance
has_resistanceSTATEanyreturns true if state has a resistance
实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。
has_resistance 常用于占领系统相关的 mod 中,用来判断某个州是否存在抵抗运动,从而触发特殊决议、事件或限制某些操作。例如,当玩家想要只对有抵抗活动的州应用镇压决议时,可以用它作为 available 的过滤条件。
# 决议:镇压抵抗运动(仅当州存在抵抗时可用)
available = {
FROM = {
has_resistance = yes
is_controlled_by = ROOT
}
}
[resistance](/wiki/trigger/resistance):仅知道"有抵抗"往往不够,搭配 resistance 可进一步判断抵抗值的具体数值范围,实现分级响应逻辑。[has_active_resistance](/wiki/trigger/has_active_resistance):两者区分"存在抵抗数值"与"抵抗活动实际激活",配合使用可精确区分潜伏期与爆发期。[add_resistance](/wiki/effect/add_resistance) / [set_resistance](/wiki/effect/set_resistance):在 effect 块中根据 trigger 结果动态调整抵抗值,构成"判断→修改"的完整流程。[cancel_resistance](/wiki/effect/cancel_resistance):当条件满足时彻底取消抵抗,常在任务完成或事件结算时与 has_resistance 配合做前置检查。has_resistance 必须在 STATE scope 下调用,新手容易在国家或省份 scope 里直接写,导致脚本报错或静默失败;需要先用 every_neighbor_state、capital_scope 等切换到正确的州 scope。has_active_resistance 混淆:has_resistance 只要州的抵抗值不为零就返回真,即使抵抗尚未"激活";若逻辑上需要判断抵抗已经开始对游戏产生实际影响,应改用 has_active_resistance,否则会在抵抗值极低时就误触发后续逻辑。