trigger · has_tech
Definition
- Supported scope:
COUNTRY - Supported target:
none
Description
check if country has technology
has_techCOUNTRYnonecheck if country has technology
实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。
has_tech 常用于国策、决议或事件的 available/trigger 块中,判断国家是否已研究特定科技以解锁进一步选项——例如限制某项海军国策仅在研发了舰载机技术后才可选取,或在事件中根据玩家是否掌握核物理技术给出不同选项。
# 示例:仅当国家已研究基础坦克技术时,该决议才可用
available = {
has_tech = gw_artillery
}
[can_research](/wiki/trigger/can_research):先用 has_tech 确认已有前置技术,再用 can_research 判断下一级科技是否可开始研究,两者组合能精确描述科技树进度的"已学/可学"状态。[add_tech_bonus](/wiki/effect/add_tech_bonus):通常在 has_tech 验证某前置科技存在后,通过 effect 给予下一步科技加速奖励,形成"检测已有科技→奖励进一步研究"的完整链条。[has_completed_focus](/wiki/trigger/has_completed_focus):与 has_tech 并列放在 trigger 块中,同时要求完成特定国策且拥有特定科技,用于设置更严格的解锁条件。[has_doctrine](/wiki/trigger/has_doctrine):与 has_tech 类似用于科技层面的条件检查,两者组合可区分"通用科技"与"条令科技",覆盖更全面的军事技术判断。has_tech 的值必须是脚本中定义的技术 token(如 basic_tank_design),不能写科技的本地化显示名称或自行猜测名字,建议直接在 technologies/ 文件夹对应的 .txt 文件中查找准确 token。has_tech 只在国家 scope 下有效,若写在 owned_state 或 unit_leader 等子 scope 的 trigger 块内却未切换回国家 scope,条件将无法正确求值,需要用 owner/ROOT/FROM 等切换回 COUNTRY scope 后再调用。