跳转至

EOC 条件与效果嵌套

嵌套先受容器形状约束,再受具体 handler 约束。

已证明的通用规则

  • 条件可以通过对象或字符串解析路径进入 parser;and、or 接收数组,not 接收 单个对象或字符串。这三个逻辑键的嵌套契约已完整分类。
  • 效果容器可为 string、object 或 array。
  • 两类 parser 都是第一个匹配项获胜。不要在同一分派对象里放多个互相竞争的效果/条件键。
  • 除三个逻辑条件外,handler 的参数、默认值和嵌套能力大多尚未分类;必须查看生成参考 指向的源码。

最小结构

文档示例 Mod 使用一个 activation EOC:

{
  "type": "effect_on_condition",
  "id": "EOC_CCB_DOCS_HELLO",
  "eoc_type": "ACTIVATION",
  "condition": { "math": [ "1 == 1" ] },
  "effect": [ { "u_message": "The CCB Docs example EOC ran." } ]
}

math 和 u_message 都在注册表中,但当前契约为 partial。示例检查只证明它们被注册、 形状符合维护样例且 JSON 可解析;真实 CCB loader 仍是最终验证层。

复杂嵌套应逐层增加:先验证叶子条件/效果,再加入 and/or/not 或 if/then/else, 最后才加入变量传递和 talker 交换。每层保留一个能复现失败的最小 EOC。