实战用法
is_mio_visible 用于在 mod 中动态检测某个军事工业组织的 visible 条件是否当前成立,常见于需要根据 MIO 可见状态来决定是否执行后续逻辑的场景,例如条件性地展示特质解锁提示或限制某些操作。典型用法是在 MIO 的特质或策略的 available 块中,先确认该组织对玩家可见再做进一步判断。
# 在某个事件或决议的 trigger 块中,检查特定 MIO 是否可见
mio:my_custom_mio = {
is_mio_visible = yes
has_mio_size > 2
}
配合关系
[is_mio_available](/wiki/trigger/is_mio_available):可见(visible)与可用(available)是两个独立维度,通常需要同时检查,确保 MIO 既对玩家显示又处于可交互状态。
[has_mio_trait](/wiki/trigger/has_mio_trait):在确认 MIO 可见后,进一步检查是否已解锁特定特质,用于构建多层条件门控逻辑。
[has_mio_size](/wiki/trigger/has_mio_size):可见性往往与组织规模挂钩,配合规模判断可以更精确地描述 MIO 所处的发展阶段。
[unlock_mio_trait_tooltip](/wiki/effect/unlock_mio_trait_tooltip):当 is_mio_visible = yes 作为前置条件满足后,通过该 effect 向玩家展示特质解锁的提示信息,形成"先确认可见 → 再给反馈"的完整流程。
常见坑
- 混淆 scope 写法:新手容易直接在国家 scope 下写
is_mio_visible = yes,但该 trigger 必须在 INDUSTRIAL_ORG scope 内执行,需通过 mio:TAG_mio_name = { ... } 或类似方式先切换到对应 MIO scope,否则脚本会报错或静默失败。
- 误以为等同于
is_mio_available:is_mio_visible 仅检查 MIO 定义中的 visible 条件块,不代表该组织可以被分配或使用;若目的是判断玩家能否操作该 MIO,应同时搭配 [is_mio_available](/wiki/trigger/is_mio_available) 一并检查。