437470f9e7
Rename ItemHelper to ItemStackUtils Change the way OreStack identifies an OreStack from a list of itemstacks. Resolves #923 Added some more test cases to VanillaTestSuite
46 lines
1.8 KiB
Java
46 lines
1.8 KiB
Java
package com.pahimar.ee3.recipe;
|
|
|
|
import com.pahimar.ee3.api.recipe.RecipeRegistryProxy;
|
|
import com.pahimar.ee3.exchange.OreStack;
|
|
import com.pahimar.ee3.exchange.WrappedStack;
|
|
import com.pahimar.ee3.util.RecipeHelper;
|
|
import net.minecraft.init.Blocks;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.item.crafting.CraftingManager;
|
|
import net.minecraft.item.crafting.IRecipe;
|
|
import net.minecraft.item.crafting.ShapedRecipes;
|
|
import net.minecraft.item.crafting.ShapelessRecipes;
|
|
import net.minecraftforge.oredict.OreDictionary;
|
|
import net.minecraftforge.oredict.ShapedOreRecipe;
|
|
import net.minecraftforge.oredict.ShapelessOreRecipe;
|
|
|
|
import java.util.Arrays;
|
|
import java.util.List;
|
|
|
|
public class RecipesVanilla {
|
|
|
|
public void registerRecipes() {
|
|
|
|
for (Object recipeObject : CraftingManager.getInstance().getRecipeList()) {
|
|
|
|
// Vanilla
|
|
if (recipeObject instanceof ShapedRecipes || recipeObject instanceof ShapelessRecipes || recipeObject instanceof ShapedOreRecipe || recipeObject instanceof ShapelessOreRecipe) {
|
|
IRecipe recipe = (IRecipe) recipeObject;
|
|
ItemStack recipeOutput = recipe.getRecipeOutput();
|
|
|
|
if (recipeOutput != null) {
|
|
|
|
List<WrappedStack> recipeInputs = RecipeHelper.getRecipeInputs(recipe);
|
|
|
|
if (!recipeInputs.isEmpty()) {
|
|
RecipeRegistryProxy.addRecipe(recipeOutput, recipeInputs);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Fixes for OreDictionary entries that may not exist (because the OreDictionary entry has nothing in it)
|
|
RecipeRegistryProxy.addRecipe(new ItemStack(Blocks.daylight_detector), Arrays.asList(new ItemStack(Blocks.glass, 3, OreDictionary.WILDCARD_VALUE), new OreStack("slabWood", 3), new OreStack("gemQuartz", 3)));
|
|
}
|
|
}
|