EcoX 物品语法学习
与其他插件不同,EcoX 系列插件有自己的一套表达物品的语法格式。
基础语法格式
原版物品
你只需要填写这个原版物品的 material
(物品英语ID)即可。例如 apple
代表原版里的 苹果。
EcoX 物品
我们需要表达 EcoX 系列插件内的某个物品时,可以使用 插件名称:物品id 的格式来表达它,例如 ecoitems:superior_sword
就表示 EcoItems 里,id为 superior_sword
的一个物品。
第三方插件物品
使用 namespace:id
的格式,以 ItemsAdder 为例,如 itemsadder:test_sword
。本篇教程提及的插件几乎用不到,因为它们本身就是修改物品的插件,这往往是 EcoCrate(该作者的抽奖箱插件)会用到的语法格式。
NBT 的原版物品
需要满足 json
格式。例如:{id:"stone",Count:3,tag:{Name:"your name"}}
。
修饰符
位于基础语法格式的后面,用于补充物品的相关信息。我们可以将添加的信息称之为修饰符,各个修饰符之间用空格隔开,修饰符可以在上述所有基础语法格式后使用。有如下几种的修饰符:
附魔
格式为 附魔id:附魔等级
,可以通过使用多个附魔修饰符来实现该物品同时多个附魔。
头颅材质
格式为 texture:头颅 base64 码
,需要原版物品为 player_head
。
如何获取头颅 base64 码?
我推荐你前往 Minecraft Player Head 网站查找 自定义头颅(Custom Head),你可以在这里找到它的 meta(注意是自定义头颅不是玩家头颅!):
然后将它复制到你的头颅材质修饰符中。
重铸词条
使得该物品自带某个重铸词条,格式为 reforge:重铸id
。
物品名称
使得该物品名称修改为你所设置的值,本篇教程提及的插件几乎用不到,因为它们普遍自带物品名称修改功能,这往往是 EcoCrate(该作者的抽奖箱插件)会用到的修饰符。
物品标签
包括:
HIDE_ATTRIBUTES:隐藏物品的属性信息(如+1攻击)。
HIDE_DESTROYS:隐藏物品可以破坏的方块信息(在服务器中我们几乎不会用到这个,所以可以忽视)。
HIDE_DYE:隐藏物品的染色(如染色后的皮革盔甲)。
HIDE_ENCHANTS:隐藏物品的附魔信息。
HIDE_PLACED_ON:隐藏方块可以放置到什么上面信息(同样在服务器中几乎用不到)。
HIDE_POTION_EFFECTS:隐藏药水信息(如1:00生命回复2)。
HIDE_UNBREAKABLE:隐藏不可破坏(无限耐久)信息。
以上物品标签在实际填写时建议小写以增加整体配置美观感。
不可破坏
格式为:unbreakable
。顾名思义,添加该修饰符后物品无耐久消耗。
CustomModelData
如果你不知道这是什么,建议别乱搞了。格式为:custom-model-data:id
。
你能说说下面这个物品语法的含义吗?
ecoitems:enlightened_blade razor:4 unbreaking:3 criticals:2 fire_aspect:2 reforge:mighty unbreakable hide_attributes custom-model-data:2
何处会用到?
合成配方
在涉及物品的 EcoX 插件配置中,往往会有合成配方的选项,此时指代合成配方内的合成材料即需要使用此物品语法格式。
例如:
其中,ecoitems:toughened_string
和 ecoitems:arachnid_oculus
很明显是 EcoX 物品,而 netherite_chestplate
为原版的下界合金胸甲物品。辨别它们的方法其实也很简单,只需要看看它们有没有 :
符号即可。
目标文件(target.yml)
部分不涉及物品内容的插件有该文件,用于指定某个附魔、重铸等只能在某个物品上使用。
以下是一个 target.yml
的示例:
其中,pickaxe
键为一个目标选择器的id,以此格式可以添加无数多的目标选择器。在此键下面还有如下子键(选项):
slot:指代这个目标选择器在物品于何处时处于成功验证的状态。可以填写
hands
(在手上,包括主手和副手),armor
(在身上,盔甲栏)。items:以 List 类型填写我们已经学习的 EcoX 物品语法格式以指代该附魔或者重铸等可以在哪些物品上使用。
重要:在原版物品id格式前面添加 *
符号即可指代所有这种原版物品,无需再单独填写自定义物品。
高级语法格式
以下高级语法格式只能在合成配方处使用。
指代数量
在物品语法格式的后面添加一个空格,再在空格后写上一个数字即可为其指代数量。例如 string 64
代表 64 个线。
保护性措施
一行合成材料可以包含多个合成材料,在它们中间用两个空格隔开,再在两个空格中间输入 ?
符号即可为其添加保护性措施,这样如果前面的物品不存在,那么插件将会用后面的物品。这个语法格式实际上对于服主并没有什么用,只是为了方便开发者提供默认配置而已。例如 ecoitems:arachnid_oculus ? nether_star 2
代表如果 ecoitems:arachnid_oculus
不存在,那么将这个合成材料转变为后面的 2 个下界之星。
或
与 保护性措施 几乎一致,但是中间输入 ||
符号隔开,这样只要满足多个合成材料中的其中一个,即可视为该合成材料是满足的。例如 netherite_chestplate || diamond_chestplate
代表下界合金胸甲和钻石胸甲都是可以用于该格的合成材料。
在 ShopGUIPlus 中售卖或者回收 EcoX 系列插件的物品
最后更新于