一般格式

我们已经学习了 EcoX 各个插件下的自定义内容的一般配置,下面我们要学习这些不同插件配置下相同的内容 —— The Effect System。

在前面,我们提及 The Effect System 的选项往往是 effectsconditions,这两个选项分别是技能的内容和技能的条件。也就是说,只有在条件被满足的情况下,技能内容才会被触发。

下面我们分别学习这两个选项的一般格式:

effects 选项

我们给出一个示例的技能:

id: spawn_particle
args:
  amount: 10
  chance: 25
  particle: soul
triggers: 
  - mine_block
filters:
  blocks:
    - diamond_ore
    - ancient_debris
conditions: []
mutators:
  - id: translate_location
    args:
      add_x: 0.5
      add_y: 0.5
      add_z: 0.5

我们可以看出它由以下部分组成:

  • id:技能的id,这不是你起名的,而是根据我们后文提及的技能列表对照的选择某个技能。所以,一个 effects 下可以有多个相同id的技能。

  • args:技能的参量,同样也不是你瞎写的,根据我们后文提及的技能列表中,根据你所选择的技能对照填写。

  • triggers:技能的触发器,后文详细介绍。

  • filters:技能的筛选,后文详细介绍。

  • mutators:技能的变化,后文详细介绍。

  • conditions:技能的条件,后文详细介绍。

这里的 conditions 与和 effects 同级的 conditions 不一样,这里的 conditions 只能控制对应技能,而和 effects 同级的 conditions 能够控制整个 effects 乃至整个物品/附魔等,因为 effects 才是这些物品/附魔的重要部分。

例如,我们可以设置某个技能只会在玩家在水中才会发生(这是这里的 conditions),但这个物品只会在玩家达到 20 级后才会生效(这是与 effects 同级的 conditions)。

conditions 选项

我们给出一个示例的条件:

conditions:
  - id: has_permission
    args:
      permission: "ecomc.rank.mvp"
    not-met-effects:
      - id: send_message
        args:
          message: "&c你不是我们的MVP!"

我们可以看出它由以下部分组成:

  • id:条件id。同样这不是你起名的,而是根据我们后文提及的条件列表对照的选择某个技能。所以,一个 conditions 下可以有多个相同id的条件。

  • args:条件参量。同 effects

  • not-met-effects:在没有满足条件的情况下触发的技能(effects),格式见上面的 effects 选项。

Last updated