CraftTweaker 支持 JustEnoughItems (JEI)。 你可以在 JEI 中添加或隐藏物品/流体,或者为其添加描述页。

你可以从JEI中移除物品,也可以移除所有它参与的合成表。

ZenScript
Copy
//hide(IItemStack item);
mods.jei.JEI.hide(<minecraft:diamond>);

//hide(ILiquidStack item);
mods.jei.JEI.hide(<liquid:water>);
mods.jei.JEI.hide(<fluid:lava>);


//removeAndHide(IIngredient output, @optional boolean NBT-Match)
mods.jei.JEI.removeAndHide(<minecraft:iron_leggings>);
mods.jei.JEI.removeAndHide(<ore:planks>, false);

你可以用它来隐藏全部 JEI 分类(例如:工作台配方,熔炉配方,来自某个机器的配方等等)。 分类接受字符串类型传入,你可以在游戏中使用“/ct jeiCategories ”命令获取所有已注册的分类。

ZenScript
Copy
//hideCategory(category)
mods.jei.JEI.hideCategory("minecraft.smelting");

你也可以添加一个 IItemStack 到 JEI 来添加一个未添加的物品,或者添加一个带有 NBT-Tag 的物品到 JEI

ZenScript
Copy
//addItem(item);
mods.jei.JEI.addItem(<minecraft:stone>.withTag({display:{Name: "Pickle",Lore:["What once was stone", "Is stone no more"]}}));

JEI描述页指的是在查看材料的配方或用途时所出现的额外页面,它包含着关于此材料的信息。 你可以向一个IItemStatck,一个IItemStack[],一个ILiquidStack或者一个IOreDictEntry类增加一个JEI描述页。

If your strings are too long to be written to one line (or page) it will automatically create line/page breaks.
Each string parameter will have at least one line and wrap around the end of the window if too long.

ZenScript
Copy
//addDescription(IItemStack item, string... desc);
mods.jei.JEI.addDescription(<minecraft:iron_ingot>,"TEST");


//addDescription(IItemStack[] item, string... desc);
mods.jei.JEI.addDescription([<minecraft:music_disc>, <minecraft:music_disc>],["Never","Gonna","Give","You","Up","Never","Gonna","Let","You","Down"]);

//addDescription(IOreDictEntry dict, string... desc);
mods.jei.JEI.addDescription(<ore:ingotIron>, "You can use these to create things", "", "things like Armor","","","Yes...","That as well...");

//addDescription(ILiquidStack stack, string... desc);
mods.jei.JEI.addDescription(<liquid:lava>, ["LAVA"]);

desc 属性是一个变长参数,也就是说你既可以用一个字符串数组中传递所有描述,又可以用多个字符串来传递,随你喜欢。 只是别把它们弄混了!