祭坛合成(Altar Crafting)

你可以为星辉魔法的祭坛添加或移除配方。

导入

使用mods.astralsorcery.Altar以导入祭坛配方相关包。

移除祭坛配方

这个方法移除传入的 resource location 的配方。
你可以用以下方法获取它的 resource location :在开启 F3 屏幕的情况下鼠标悬浮在 JEI 或星空日记中的物品图标上。
如果配方不存在则打印错误信息。

//mods.astralsorcery.Altar.removeAltarRecipe(string recipeLocation);
//resourceLocation resource location

mods.astralsorcery.Altar.removeAltarRecipe("astralsorcery:shaped/internal/altar/lightwell");
Pre v1.10 handler 这个方法移除第一个在传入的祭坛等级下`输出`为传入的物品堆[(IItemStack)](../../../Vanilla/Items/IItemStack/)的配方。 如果有多个配方可以合成传入的物品,你需要多次使用这个方法。
Altar LevelLevel name
0Luminous Crafting Table
1Starlight Crafting Altar
2Celestial Altar
wzxhzdk:0

Add Altar Recipes

Since v1.10 all recipes require a resource location as first parameter.
Unlike vanilla recipe names, they are not optional and you will encounter errors if you do not provide it. If you want to override an existing recipe, you can just add a new recipe with the same location.
You can get those locations by hovering over the recipe output in JEI or the Astral tome while the F3 screen is active.

All recipe addition methods require these parameters:
string recipeLocation,
IItemStack output,
int starlightRequired,
int craftingTickTime,
IIngredient[] inputs

The inputs parameter is, unlike in Crafting Table recipes only a 1 Dimensional Array.
You can use IItemStacks, ILiquidStacks, IOreDictEntries or null as the array’s members

These recipes cannot be shapeless!

Discovery

inputs length has to be 9

inputs Order:
Inputs Order

mods.astralsorcery.Altar.addDiscoveryAltarRecipe("mypackname:shaped/internal/altar/dirtfromstuff", <minecraft:dirt>, 200, 200, [
            <minecraft:grass>, null, <ore:treeLeaves>,
            null, <minecraft:grass>, null,
            <liquid:astralsorcery.liquidstarlight>, null, <ore:treeLeaves>]);

Attunement

Adds a recipe to the Starlight Crafting Table (T2)

inputs length has to be 13

inputs Order:
Inputs Order

mods.astralsorcery.Altar.addAttunmentAltarRecipe(mypackname:shaped/internal/altar/iguessmarble", <minecraft:dirt>, 500, 300, [
            null, null, null,
            <ore:treeLeaves>, <astralsorcery:blockmarble:2>, <ore:treeLeaves>,
            null, <liquid:astralsorcery.liquidstarlight>, null,
            <ore:blockMarble>, <ore:blockMarble>, <ore:blockMarble>, <ore:blockMarble>]);

Constellation

Adds a recipe to the Celestial Altar (T3)

inputs length has to be 21

inputs Order:
Inputs Order

mods.astralsorcery.Altar.addConstellationAltarRecipe("mypackname:shaped/internal/altar/thisisveryexpensive", <astralsorcery:itemcraftingcomponent:2>, 2000, 10, [
            <ore:blockMarble>, <astralsorcery:blocklens>, <ore:blockMarble>,
            <ore:blockMarble>, <astralsorcery:itemcraftingcomponent:2>, <ore:blockMarble>,
            <ore:blockMarble>, <minecraft:nether_star>, <ore:blockMarble>,
            null, null, <liquid:astralsorcery.liquidstarlight>, <liquid:astralsorcery.liquidstarlight>,
            <ore:blockMarble>, <ore:blockMarble>,
            <minecraft:nether_star>, <minecraft:nether_star>,
            <minecraft:nether_star>, <minecraft:nether_star>,
            <ore:blockMarble>, <ore:blockMarble>]);

Trait

Adds a recipe to the Trait Altar (T4)

Constellation the Constellation as an unlocalized String. This is an optional parameter.

inputs length has to be 25 or higher. Items at index 25 or higher will be considered as “outer items” that need to be put on relays around the altar.

inputs Order:
Inputs Order

//mods.astralsorcery.Altar.addTraitAltarRecipe(string recipeLocation, IItemStack output, int starlight, int craftTickTime, IIngredient[] inputs, @optional String iRequiredConstellationFocusName);

mods.astralsorcery.Altar.addTraitAltarRecipe("mypackname:shaped/internal/altar/seemsalotforjusttnt", <minecraft:tnt>, 4500, 100, [
    <liquid:lava>, <liquid:lava>, <liquid:lava>,<liquid:lava>, <minecraft:gunpowder>, 
    <liquid:lava>, <liquid:lava>, <liquid:lava>, <liquid:lava>,null, 
    null, null, null,<ore:blockMarble>, <ore:blockMarble>,
    <astralsorcery:itemusabledust>, <astralsorcery:itemusabledust>, <astralsorcery:itemusabledust>, <astralsorcery:itemusabledust>,<ore:blockMarble>, 
    <ore:blockMarble>,<minecraft:redstone>, <minecraft:redstone>,<minecraft:redstone>, <minecraft:redstone>,
    //Outer Items, indices 25+
    <minecraft:sand>, <minecraft:sand>, <minecraft:sand>, <minecraft:sand>, <minecraft:sand>
],
"astralsorcery.constellation.evorsio");