use of mezz.jei.api.recipe.IRecipeWrapper in project Binnie by ForestryMC.
the class MultiFenceRecipeRegistryPlugin method getRecipes.
private List<IRecipeWrapper> getRecipes(IFocus<ItemStack> focus) {
ItemStack ingredient = focus.getValue();
List<IRecipeWrapper> recipes = new ArrayList<>();
if (focus.getMode() == Mode.INPUT) {
IPlankType plankType = WoodManager.getPlankType(ingredient);
if (plankType != null) {
for (MultiFenceRecipePattern pattern : MultiFenceRecipePattern.VALUES) {
recipes.add(new MultiFenceRecipeSizeWrapper(pattern, plankType));
}
for (int size = 0; size < 3; size++) {
for (final boolean solid : new boolean[] { false, true }) {
recipes.add(new MultiFenceRecipeEmbeddedWrapper(plankType, new FenceType(size, solid, false)));
}
}
} else {
FenceDescription desc = WoodManager.getFenceDescription(ingredient);
if (desc != null) {
if (!desc.getFenceType().isEmbossed()) {
recipes.add(new MultiFenceRecipeEmbeddedWrapper(desc));
}
if (!desc.getFenceType().isSolid()) {
recipes.add(new MultiFenceRecipeSolidWrapper(desc));
}
}
}
} else {
FenceDescription desc = WoodManager.getFenceDescription(ingredient);
if (desc != null) {
int size = desc.getFenceType().getSize();
recipes.add(new MultiFenceRecipeSizeWrapper(MultiFenceRecipePattern.VALUES[size * 2], desc.getPlankType(), desc.getSecondaryPlankType()));
recipes.add(new MultiFenceRecipeSizeWrapper(MultiFenceRecipePattern.VALUES[size * 2 + 1], desc.getPlankType(), desc.getSecondaryPlankType()));
if (desc.getFenceType().isEmbossed()) {
recipes.add(new MultiFenceRecipeEmbeddedWrapper(desc));
}
if (desc.getFenceType().isSolid()) {
recipes.add(new MultiFenceRecipeSolidWrapper(desc));
}
}
}
return recipes;
}
use of mezz.jei.api.recipe.IRecipeWrapper in project Random-Things by lumien231.
the class RandomThingsPlugin method register.
@Override
public void register(IModRegistry registry) {
this.jeiHelpers = registry.getJeiHelpers();
RandomThingsPlugin.stackHelper = jeiHelpers.getStackHelper();
IGuiHelper guiHelper = jeiHelpers.getGuiHelper();
registry.handleRecipes(ImbuingRecipe.class, (recipe) -> (new ImbuingRecipeWrapper(recipe.getIngredients(), recipe.toImbue(), recipe.getResult())), IMBUE_ID);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.imbuingStation), IMBUE_ID);
IRecipeTransferRegistry recipeTransferRegistry = registry.getRecipeTransferRegistry();
recipeTransferRegistry.addRecipeTransferHandler(ContainerImbuingStation.class, IMBUE_ID, 0, 4, 5, 36);
registry.addRecipes(lumien.randomthings.recipes.imbuing.ImbuingRecipeHandler.imbuingRecipes, IMBUE_ID);
List<IRecipeWrapper> anvilRecipes = new ArrayList<IRecipeWrapper>();
for (AnvilRecipe ar : lumien.randomthings.recipes.anvil.AnvilRecipeHandler.getAllRecipes()) {
anvilRecipes.add(jeiHelpers.getVanillaRecipeFactory().createAnvilRecipe(ar.getFirst(), Lists.newArrayList(ar.getSecond()), Lists.newArrayList(ar.getOutput())));
}
registry.addRecipes(anvilRecipes, VanillaRecipeCategoryUid.ANVIL);
registry.addRecipeClickArea(GuiImbuingStation.class, 99, 54, 22, 16, IMBUE_ID);
DescriptionHandler.addDescriptions(registry);
}
Aggregations