From cfa40e9bfbca4002e4f96671c1313316fa7ba783 Mon Sep 17 00:00:00 2001 From: Nicholas Ignoffo Date: Sun, 1 May 2016 08:35:07 -0700 Subject: [PATCH] Update JEI compat Supports new category item system. Fixes Binding category input slot cycling through input and catalyst. --- gradle.properties | 2 +- .../bloodmagic/compat/jei/BloodMagicPlugin.java | 6 ++++++ .../alchemyArray/AlchemyArrayCraftingCategory.java | 3 +-- .../alchemyArray/AlchemyArrayCraftingRecipeJEI.java | 12 ++++++------ .../compat/jei/binding/BindingRecipeJEI.java | 9 +++++---- 5 files changed, 19 insertions(+), 13 deletions(-) diff --git a/gradle.properties b/gradle.properties index 154adc70..5692b671 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ curse_id=224791 mappings_version=snapshot_20160424 -jei_version=3.2.8.182 +jei_version=3.3.2.196 waila_version=1.6.0-B3 thaumcraft_version=5.1.5 baubles_version=1.1.3.0 diff --git a/src/main/java/WayofTime/bloodmagic/compat/jei/BloodMagicPlugin.java b/src/main/java/WayofTime/bloodmagic/compat/jei/BloodMagicPlugin.java index 55afe82b..0f8bf6e5 100644 --- a/src/main/java/WayofTime/bloodmagic/compat/jei/BloodMagicPlugin.java +++ b/src/main/java/WayofTime/bloodmagic/compat/jei/BloodMagicPlugin.java @@ -5,6 +5,7 @@ import java.util.Map; import javax.annotation.Nonnull; import WayofTime.bloodmagic.client.gui.GuiSoulForge; +import WayofTime.bloodmagic.item.ItemComponent; import mezz.jei.api.BlankModPlugin; import mezz.jei.api.IJeiHelpers; import mezz.jei.api.IModRegistry; @@ -74,6 +75,11 @@ public class BloodMagicPlugin extends BlankModPlugin registry.addRecipeClickArea(GuiSoulForge.class, 115, 15, 16, 88, Constants.Compat.JEI_CATEGORY_SOULFORGE); + registry.addRecipeCategoryCraftingItem(new ItemStack(ModBlocks.altar), Constants.Compat.JEI_CATEGORY_ALTAR); + registry.addRecipeCategoryCraftingItem(new ItemStack(ModBlocks.soulForge), Constants.Compat.JEI_CATEGORY_SOULFORGE); + registry.addRecipeCategoryCraftingItem(new ItemStack(ModItems.arcaneAshes), Constants.Compat.JEI_CATEGORY_ALCHEMYARRAY); + registry.addRecipeCategoryCraftingItem(new ItemStack(ModItems.arcaneAshes), Constants.Compat.JEI_CATEGORY_BINDING); + jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.OWNER_UUID); jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.OWNER_NAME); jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.USES); diff --git a/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingCategory.java b/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingCategory.java index b9316436..72653f5f 100644 --- a/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingCategory.java +++ b/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingCategory.java @@ -57,7 +57,6 @@ public class AlchemyArrayCraftingCategory implements IRecipeCategory } @Override - @SuppressWarnings("unchecked") public void setRecipe(@Nonnull IRecipeLayout recipeLayout, @Nonnull IRecipeWrapper recipeWrapper) { recipeLayout.getItemStacks().init(INPUT_SLOT, true, 0, 5); @@ -67,7 +66,7 @@ public class AlchemyArrayCraftingCategory implements IRecipeCategory if (recipeWrapper instanceof AlchemyArrayCraftingRecipeJEI) { AlchemyArrayCraftingRecipeJEI alchemyArrayWrapper = (AlchemyArrayCraftingRecipeJEI) recipeWrapper; - recipeLayout.getItemStacks().set(INPUT_SLOT, alchemyArrayWrapper.getInputs().subList(0, alchemyArrayWrapper.getInputs().size() - 1)); + recipeLayout.getItemStacks().set(INPUT_SLOT, alchemyArrayWrapper.getInputs()); recipeLayout.getItemStacks().set(CATALYST_SLOT, alchemyArrayWrapper.getCatalyst()); recipeLayout.getItemStacks().set(OUTPUT_SLOT, alchemyArrayWrapper.getOutputs()); } diff --git a/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingRecipeJEI.java b/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingRecipeJEI.java index a9349c72..fa74d805 100644 --- a/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingRecipeJEI.java +++ b/src/main/java/WayofTime/bloodmagic/compat/jei/alchemyArray/AlchemyArrayCraftingRecipeJEI.java @@ -1,6 +1,5 @@ package WayofTime.bloodmagic.compat.jei.alchemyArray; -import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -13,7 +12,7 @@ import net.minecraft.item.ItemStack; public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper { @Nonnull - private final Object inputs; + private final List inputs; @Nullable private final ItemStack catalyst; @@ -21,7 +20,6 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper @Nonnull private final ItemStack output; - @SuppressWarnings("unchecked") public AlchemyArrayCraftingRecipeJEI(@Nonnull List input, @Nullable ItemStack catalyst, @Nonnull ItemStack output) { this.inputs = input; @@ -30,9 +28,10 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper } @Override - public List getInputs() + @Nonnull + public List getInputs() { - return Arrays.asList(inputs, catalyst); + return inputs; } public ItemStack getCatalyst() @@ -41,7 +40,8 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper } @Override - public List getOutputs() + @Nonnull + public List getOutputs() { return Collections.singletonList(output); } diff --git a/src/main/java/WayofTime/bloodmagic/compat/jei/binding/BindingRecipeJEI.java b/src/main/java/WayofTime/bloodmagic/compat/jei/binding/BindingRecipeJEI.java index 083bc2aa..7081c921 100644 --- a/src/main/java/WayofTime/bloodmagic/compat/jei/binding/BindingRecipeJEI.java +++ b/src/main/java/WayofTime/bloodmagic/compat/jei/binding/BindingRecipeJEI.java @@ -1,6 +1,5 @@ package WayofTime.bloodmagic.compat.jei.binding; -import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -29,9 +28,10 @@ public class BindingRecipeJEI extends BlankRecipeWrapper } @Override - public List getInputs() + @Nonnull + public List getInputs() { - return Arrays.asList(inputs, catalyst); + return inputs; } public ItemStack getCatalyst() @@ -40,7 +40,8 @@ public class BindingRecipeJEI extends BlankRecipeWrapper } @Override - public List getOutputs() + @Nonnull + public List getOutputs() { return Collections.singletonList(output); }