命令百科

trigger · contract_contains_equipment

Definition

  • Supported scope:PURCHASE_CONTRACT
  • Supported target:none

Description

Check if contract contains equipment category, equipment archetype or equipment.
Example:
    contract_contains_equipment = infantry_equipment

实战 · 配合 · 坑

实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。

实战用法

在贸易或军购 mod 中,常用于在采购合同触发某些事件或决议时,先验证合同内容是否符合条件,例如仅当合同涉及特定装备类别时才允许外交干预或触发事件。也可用于区分不同合同类型,给予不同的处理逻辑(如对步兵装备合同施加额外限制)。

# 仅当采购合同包含步兵装备时,才允许取消该合同
cancel_purchase_contract = {
    limit = {
        contract_contains_equipment = infantry_equipment
    }
}

配合关系

  • [buyer](/wiki/trigger/buyer):先用 buyer 确认合同买方是否为目标国家,再用本 trigger 检查装备类型,双重筛选精确定位合同。
  • [seller](/wiki/trigger/seller):与 seller 联用,可同时约束交易双方身份,避免误判其他国家之间的同类合同。
  • [cancel_purchase_contract](/wiki/effect/cancel_purchase_contract):条件满足后的典型后续动作,在 limit 块中用本 trigger 过滤,再执行取消合同操作。
  • [deal_completion](/wiki/trigger/deal_completion):与 deal_completion 搭配,可判断"包含特定装备且即将完成交割"的合同,用于触发交付事件。

常见坑

  1. scope 用错:本 trigger 必须在 PURCHASE_CONTRACT scope 内调用,若直接写在国家 scope 的 trigger 块中会静默失败或报错,需确保已通过合同迭代/事件正确进入合同 scope。
  2. 参数类型混淆:参数可以是装备类别、装备原型或具体装备,但填写时必须使用游戏内实际定义的 key(如 infantry_equipment 而非自创名称),拼写错误不会有明显报错,只会导致条件永远为假。