diff options
Diffstat (limited to 'src/main/java/net/minecraft/recipe')
| -rw-r--r-- | src/main/java/net/minecraft/recipe/REIBrewingRecipeRegistry.java | 56 | ||||
| -rw-r--r-- | src/main/java/net/minecraft/recipe/REIPotionRecipeUtils.java | 36 |
2 files changed, 0 insertions, 92 deletions
diff --git a/src/main/java/net/minecraft/recipe/REIBrewingRecipeRegistry.java b/src/main/java/net/minecraft/recipe/REIBrewingRecipeRegistry.java deleted file mode 100644 index 0622afa6e..000000000 --- a/src/main/java/net/minecraft/recipe/REIBrewingRecipeRegistry.java +++ /dev/null @@ -1,56 +0,0 @@ -package net.minecraft.recipe; - -import com.google.common.collect.Lists; -import me.shedaniel.rei.api.RecipeHelper; -import me.shedaniel.rei.plugin.BrewingRecipe; -import me.shedaniel.rei.plugin.DefaultBrewingDisplay; -import me.shedaniel.rei.plugin.DefaultPlugin; -import net.minecraft.item.Item; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionUtil; - -import java.util.Arrays; -import java.util.List; - -public class REIBrewingRecipeRegistry { - - public static void registerDisplays(RecipeHelper recipeHelper) { - List<Potion> registeredPotionTypes = Lists.newArrayList(); - List<BrewingRecipe> potionItemConversions = Lists.newArrayList(); - List<Ingredient> potionItems = REIPotionRecipeUtils.getPotionTypes(); - REIPotionRecipeUtils.getItemRecipes().forEach(o -> { - try { - Item input = (Item) REIPotionRecipeUtils.getInputFromRecipe(o); - Item output = (Item) REIPotionRecipeUtils.getOutputFromRecipe(o); - Ingredient reagent = REIPotionRecipeUtils.getIngredientFromRecipe(o); - potionItemConversions.add(new BrewingRecipe(input, reagent, output)); - } catch (Throwable throwable) { - throwable.printStackTrace(); - } - }); - REIPotionRecipeUtils.getPotionRecipes().forEach(o -> { - try { - Potion input = (Potion) REIPotionRecipeUtils.getInputFromRecipe(o); - Potion output = (Potion) REIPotionRecipeUtils.getOutputFromRecipe(o); - Ingredient ingredient = REIPotionRecipeUtils.getIngredientFromRecipe(o); - if (!registeredPotionTypes.contains(input)) - registerPotionType(recipeHelper, registeredPotionTypes, potionItemConversions, input); - if (!registeredPotionTypes.contains(output)) - registerPotionType(recipeHelper, registeredPotionTypes, potionItemConversions, output); - potionItems.stream().map(Ingredient::getStackArray).forEach(itemStacks -> Arrays.stream(itemStacks).forEach(stack -> { - recipeHelper.registerDisplay(DefaultPlugin.BREWING, new DefaultBrewingDisplay(PotionUtil.setPotion(stack.copy(), input), ingredient, PotionUtil.setPotion(stack.copy(), output))); - })); - } catch (Throwable throwable) { - throwable.printStackTrace(); - } - }); - } - - private static void registerPotionType(RecipeHelper recipeHelper, List<Potion> list, List<BrewingRecipe> potionItemConversions, Potion potion) { - list.add(potion); - potionItemConversions.forEach(recipe -> { - recipeHelper.registerDisplay(DefaultPlugin.BREWING, new DefaultBrewingDisplay(PotionUtil.setPotion(recipe.input.getDefaultStack(), potion), recipe.ingredient, PotionUtil.setPotion(recipe.output.getDefaultStack(), potion))); - }); - } - -} diff --git a/src/main/java/net/minecraft/recipe/REIPotionRecipeUtils.java b/src/main/java/net/minecraft/recipe/REIPotionRecipeUtils.java deleted file mode 100644 index cc3bc6508..000000000 --- a/src/main/java/net/minecraft/recipe/REIPotionRecipeUtils.java +++ /dev/null @@ -1,36 +0,0 @@ -package net.minecraft.recipe; - -import com.google.common.collect.Lists; -import me.shedaniel.cloth.api.ReflectionUtils; -import net.minecraft.item.Item; -import net.minecraft.potion.Potion; - -import java.util.List; - -public class REIPotionRecipeUtils { - - public static Object getInputFromRecipe(BrewingRecipeRegistry.Recipe o) throws Throwable { - return ReflectionUtils.getField(o, Object.class, 0).orElseThrow(ReflectionUtils.ReflectionException::new); - } - - public static Object getOutputFromRecipe(Object o) throws Throwable { - return ReflectionUtils.getField(o, Object.class, 2).orElseThrow(ReflectionUtils.ReflectionException::new); - } - - public static Ingredient getIngredientFromRecipe(Object o) throws Throwable { - return ReflectionUtils.getField(o, Ingredient.class, 1).orElseThrow(ReflectionUtils.ReflectionException::new); - } - - public static List<BrewingRecipeRegistry.Recipe<Item>> getItemRecipes() { - return ReflectionUtils.getStaticField(BrewingRecipeRegistry.class, List.class, 1).orElse(Lists.newArrayList()); - } - - public static List<BrewingRecipeRegistry.Recipe<Potion>> getPotionRecipes() { - return ReflectionUtils.getStaticField(BrewingRecipeRegistry.class, List.class, 0).orElse(Lists.newArrayList()); - } - - public static List<Ingredient> getPotionTypes() { - return ReflectionUtils.getStaticField(BrewingRecipeRegistry.class, List.class, 2).orElse(Lists.newArrayList()); - } - -} |
