Update JEI compat

Supports new category item system.
Fixes Binding category input slot cycling through input and catalyst.
This commit is contained in:
Nicholas Ignoffo 2016-05-01 08:35:07 -07:00
parent 41edd86602
commit cfa40e9bfb
5 changed files with 19 additions and 13 deletions

View file

@ -7,7 +7,7 @@ curse_id=224791
mappings_version=snapshot_20160424 mappings_version=snapshot_20160424
jei_version=3.2.8.182 jei_version=3.3.2.196
waila_version=1.6.0-B3 waila_version=1.6.0-B3
thaumcraft_version=5.1.5 thaumcraft_version=5.1.5
baubles_version=1.1.3.0 baubles_version=1.1.3.0

View file

@ -5,6 +5,7 @@ import java.util.Map;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import WayofTime.bloodmagic.client.gui.GuiSoulForge; import WayofTime.bloodmagic.client.gui.GuiSoulForge;
import WayofTime.bloodmagic.item.ItemComponent;
import mezz.jei.api.BlankModPlugin; import mezz.jei.api.BlankModPlugin;
import mezz.jei.api.IJeiHelpers; import mezz.jei.api.IJeiHelpers;
import mezz.jei.api.IModRegistry; 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.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_UUID);
jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.OWNER_NAME); jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.OWNER_NAME);
jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.USES); jeiHelper.getNbtIgnoreList().ignoreNbtTagNames(Constants.NBT.USES);

View file

@ -57,7 +57,6 @@ public class AlchemyArrayCraftingCategory implements IRecipeCategory
} }
@Override @Override
@SuppressWarnings("unchecked")
public void setRecipe(@Nonnull IRecipeLayout recipeLayout, @Nonnull IRecipeWrapper recipeWrapper) public void setRecipe(@Nonnull IRecipeLayout recipeLayout, @Nonnull IRecipeWrapper recipeWrapper)
{ {
recipeLayout.getItemStacks().init(INPUT_SLOT, true, 0, 5); recipeLayout.getItemStacks().init(INPUT_SLOT, true, 0, 5);
@ -67,7 +66,7 @@ public class AlchemyArrayCraftingCategory implements IRecipeCategory
if (recipeWrapper instanceof AlchemyArrayCraftingRecipeJEI) if (recipeWrapper instanceof AlchemyArrayCraftingRecipeJEI)
{ {
AlchemyArrayCraftingRecipeJEI alchemyArrayWrapper = (AlchemyArrayCraftingRecipeJEI) recipeWrapper; 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(CATALYST_SLOT, alchemyArrayWrapper.getCatalyst());
recipeLayout.getItemStacks().set(OUTPUT_SLOT, alchemyArrayWrapper.getOutputs()); recipeLayout.getItemStacks().set(OUTPUT_SLOT, alchemyArrayWrapper.getOutputs());
} }

View file

@ -1,6 +1,5 @@
package WayofTime.bloodmagic.compat.jei.alchemyArray; package WayofTime.bloodmagic.compat.jei.alchemyArray;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -13,7 +12,7 @@ import net.minecraft.item.ItemStack;
public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper
{ {
@Nonnull @Nonnull
private final Object inputs; private final List<ItemStack> inputs;
@Nullable @Nullable
private final ItemStack catalyst; private final ItemStack catalyst;
@ -21,7 +20,6 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper
@Nonnull @Nonnull
private final ItemStack output; private final ItemStack output;
@SuppressWarnings("unchecked")
public AlchemyArrayCraftingRecipeJEI(@Nonnull List<ItemStack> input, @Nullable ItemStack catalyst, @Nonnull ItemStack output) public AlchemyArrayCraftingRecipeJEI(@Nonnull List<ItemStack> input, @Nullable ItemStack catalyst, @Nonnull ItemStack output)
{ {
this.inputs = input; this.inputs = input;
@ -30,9 +28,10 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper
} }
@Override @Override
public List getInputs() @Nonnull
public List<ItemStack> getInputs()
{ {
return Arrays.asList(inputs, catalyst); return inputs;
} }
public ItemStack getCatalyst() public ItemStack getCatalyst()
@ -41,7 +40,8 @@ public class AlchemyArrayCraftingRecipeJEI extends BlankRecipeWrapper
} }
@Override @Override
public List getOutputs() @Nonnull
public List<ItemStack> getOutputs()
{ {
return Collections.singletonList(output); return Collections.singletonList(output);
} }

View file

@ -1,6 +1,5 @@
package WayofTime.bloodmagic.compat.jei.binding; package WayofTime.bloodmagic.compat.jei.binding;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -29,9 +28,10 @@ public class BindingRecipeJEI extends BlankRecipeWrapper
} }
@Override @Override
public List getInputs() @Nonnull
public List<ItemStack> getInputs()
{ {
return Arrays.asList(inputs, catalyst); return inputs;
} }
public ItemStack getCatalyst() public ItemStack getCatalyst()
@ -40,7 +40,8 @@ public class BindingRecipeJEI extends BlankRecipeWrapper
} }
@Override @Override
public List getOutputs() @Nonnull
public List<ItemStack> getOutputs()
{ {
return Collections.singletonList(output); return Collections.singletonList(output);
} }