晾晒架

晾晒时间:为一次晾晒所需的方块更新次数,实际时间将受到配置文件中的 DRYING_RACK_TICK_RATE 项的影响。

添加会腐烂的配方:

mods.primal.DryingRack.addRottingRecipe(String 配方名称, int 晾晒时间, int 腐烂几率, IIngredient 输入物品, IItemStack 腐烂时输出物品, IItemStack 不腐烂时输出物品);

添加不腐烂的配方:

mods.primal.DryingRack.addNonRottingRecipe(String 配方名称, int 晾晒时间, IIngredient 输入物品, IItemStack 输出物品);

移除所有一般注册配方:

mods.primal.DryingRack.removeAll();

移除指定注册配方:

mods.primal.DryingRack.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes drying 来查看所有晾晒架的一般注册配方!


火盆

烧制时间:为一次烧制所需的方块更新次数,实际时间将受到配置文件中的 HIBACHI_TICK_RATE 项的影响。

添加配方:

mods.primal.Hibachi.addRecipe(String 配方名称,  int 烧制时间,  IIngredient 输入物品, IItemStack 输出物品);

移除所有一般注册配方:

mods.primal.Hibachi..removeAll();

移除指定注册配方:

mods.primal.Hibachi.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes hibachi 来查看所有火盆的一般注册配方!


石磨

输入输出的物品数组:因为是数组,所以要用[]包起来,只能输入最多四个物品的数组,输出最多两个物品的数组,多余的物品将会被忽略。

添加配方:

mods.primal.Quern.addRecipe(String 配方名称, int 磨制时间, IIngredient[] 输入物品数组, IItemStack[] 输出物品数组);

移除所有一般注册配方:

mods.primal.Quern.removeAll();

移除指定注册配方:

mods.primal.Quern.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes quern 来查看所有石磨的一般注册配方!


冶炼炉

默认燃料也是输入的一部分,这里的逻辑是熔炼不同类型的矿石等的特定燃料(即炭/碳)本身就是一种重要的成分,这也体现了配方的灵活性。

输入输出的物品数组:因为是数组,所以要用[]包起来,只能输入最多四个物品的数组,输出最多两个物品的数组,多余的物品将会被忽略。

烧制时间:为一次烧制所需的方块更新次数,实际时间将受到配置文件中的 SMELTER_TICK_RATE 项的影响。

添加配方:

mods.primal.Smelter.addRecipe(String 配方名称, int 烧制时间, IIngredient[] 输入物品数组, IItemStack[] 输出物品数组);

官方示例:

mods.primal.Smelter.addRecipe("unique_recipes_name", 20, [<minecraft:dirt>], [<ore:diamond>]);

移除所有一般注册配方:

mods.primal.Smelter.removeAll();

移除指定注册配方:

mods.primal.Smelter.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes smelter 来查看所有冶炼炉的一般注册配方!


坩埚

坩埚至少需要一种输入流体,反过来可以作为配方的一部分来消耗这些流体,或者将这些流体转化成一种新的输出流体。此外,坩埚有着可以容纳多达四个物品的输入槽,并且两个输出槽。

输入输出的物品数组:因为是数组,所以要用[]包起来,只能输入最多四个物品的数组,输出最多两个物品的数组,多余的物品将会被忽略。

煮制时间:为一次煮制所需的方块更新次数,实际时间将受到配置文件中的 CAULDRON_TICK_RATE 项的影响。

添加配方:

mods.primal.Cauldron.addRecipe(String 配方名称, int 煮制时间, ILiquidStack 输入流体, ILiquidStack 输出流体, IIngredient[] 输入物品组, IItemStack[] 输出物品组);

移除所有一般注册配方:

mods.primal.Cauldron.removeAll();

移除指定注册配方:

mods.primal.Cauldron.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes cauldron 来查看所有坩埚的一般注册配方!


敲击

方块硬度:为世界上的方块最低要求的硬度,例如石头的硬度为1.5。

成功几率:是给定的配方成功处理输入物品的可能性。

失败几率:是给定的配方消耗掉输入物品的可能性。

可以提供多个输出物品。

添加配方:

mods.primal.Flake.addRecipe(String 配方名称, float 方块硬度, float 成功几率, float 失败几率, IIngredient 输入物品, IItemStack... 输出物品);

移除所有一般注册配方:

mods.primal.Flake.removeAll();

移除指定注册配方:

mods.primal.Flake.removeRecipe(String 配方名称);

在游戏中可用 /primal recipes flaking 来查看所有敲击的一般注册配方!


工具世界合成

工具名称:可以是 Axe、Blade、Gallagher、Hoe、Shovel,即斧、加工刀、锤、锄、铲。

除了输入方块之外,其他的配方都被认为是可选的,但是假设您至少会提供输出方块或输出物品否则配方根本就无济于事。

输出方块:是一个有效的方块状态,该状态将替换输入方块或者被认为是有效地移除目标方块的<minecraft:air>,如斧头劈开原木的配方所见。

输出方向:可以是"normal"、"facing"、"log",默认情况下为"normal",而"facing"是面向玩家,如工作刀片制造梯子方块,并且当前的"log"没有完全实现。

输出最小最大值:是一个需要两个整数的数组,表示可能输出的物品数量范围,如果是单个值将指示一个有保证的输出。

可以提供多个输出物品。

添加配方:

mods.primal.工具名称.addRecipe(String 配方名称, IBlockState 输入方块, @Optional IBlockState 输出方块, @Optional IItemStack 输出物品, @Optional int[] 输出最小最大值, @Optional String 输出方向);

移除所有一般注册配方:

mods.primal.工具名称.removeAll();

移除指定注册配方:

mods.primal.工具名称.removeRecipe(String 配方名称);

在游戏中可用以下指令来查看所有工具世界合成的一般注册配方!

/primal recipes axe

/primal recipes blade

/primal recipes gallagher

/primal recipes hoe

/primal recipes shovel