diff options
| author | Unknown <shekwancheung0528@gmail.com> | 2019-04-13 15:40:23 +0800 |
|---|---|---|
| committer | Unknown <shekwancheung0528@gmail.com> | 2019-04-13 15:40:23 +0800 |
| commit | 2570a35b35ec29b6677e318f2bf3d5b6640bf106 (patch) | |
| tree | 28a69c3180b5f875cb931b154ee3718d96067e17 /src/main/java/me/shedaniel/rei/plugin | |
| parent | 41998600e53f941554c8d73790180c13a2e5663c (diff) | |
| download | RoughlyEnoughItems-2570a35b35ec29b6677e318f2bf3d5b6640bf106.tar.gz RoughlyEnoughItems-2570a35b35ec29b6677e318f2bf3d5b6640bf106.tar.bz2 RoughlyEnoughItems-2570a35b35ec29b6677e318f2bf3d5b6640bf106.zip | |
v2.7.3 Bug fixes
Fix #56
Diffstat (limited to 'src/main/java/me/shedaniel/rei/plugin')
10 files changed, 64 insertions, 56 deletions
diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingDisplay.java index 1c1d9c81e..e2dd106f6 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingDisplay.java @@ -8,7 +8,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.recipe.cooking.BlastingRecipe; import net.minecraft.util.Identifier; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; @@ -21,14 +21,9 @@ public class DefaultBlastingDisplay implements RecipeDisplay<BlastingRecipe> { public DefaultBlastingDisplay(BlastingRecipe recipe) { this.display = recipe; - List<ItemStack> fuel = Lists.newArrayList(); - this.input = Lists.newArrayList(); - fuel.addAll(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); - recipe.getPreviewInputs().forEach(ingredient -> { - input.add(Arrays.asList(ingredient.getStackArray())); - }); - input.add(fuel); - this.output = Arrays.asList(recipe.getOutput()); + this.input = Lists.newArrayList(recipe.getPreviewInputs().stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList())); + input.add(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); + this.output = Collections.singletonList(recipe.getOutput()); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultBrewingDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultBrewingDisplay.java index b49300689..66189e8a6 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultBrewingDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultBrewingDisplay.java @@ -1,15 +1,15 @@ package me.shedaniel.rei.plugin; +import com.google.common.collect.Lists; import me.shedaniel.rei.api.RecipeDisplay; import net.minecraft.block.Blocks; import net.minecraft.item.ItemStack; -import net.minecraft.item.Items; import net.minecraft.recipe.Ingredient; import net.minecraft.recipe.Recipe; import net.minecraft.util.Identifier; import java.util.ArrayList; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; @@ -31,12 +31,12 @@ public class DefaultBrewingDisplay implements RecipeDisplay { @Override public List<List<ItemStack>> getInput() { - return Arrays.asList(Arrays.asList(input), Arrays.asList(reactant.getStackArray())); + return Lists.newArrayList(Collections.singletonList(input), Lists.newArrayList(reactant.getStackArray())); } @Override public List<ItemStack> getOutput() { - return Arrays.asList(output); + return Collections.singletonList(output); } @Override @@ -55,6 +55,6 @@ public class DefaultBrewingDisplay implements RecipeDisplay { @Override public List<List<ItemStack>> getRequiredItems() { - return Arrays.asList(Arrays.asList(new ItemStack(Items.AIR))); + return Collections.singletonList(Collections.singletonList(ItemStack.EMPTY)); } } diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultCampfireDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultCampfireDisplay.java index 184f3c54a..f61283d90 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultCampfireDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultCampfireDisplay.java @@ -8,7 +8,6 @@ import net.minecraft.recipe.cooking.CampfireCookingRecipe; import net.minecraft.util.DefaultedList; import net.minecraft.util.Identifier; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Optional; @@ -26,8 +25,8 @@ public class DefaultCampfireDisplay implements RecipeDisplay<CampfireCookingReci public DefaultCampfireDisplay(DefaultedList<Ingredient> ingredients, ItemStack output, int cookTime) { this.inputs = Lists.newArrayList(); - ingredients.stream().map(ingredient -> ingredient.getStackArray()).forEach(itemStacks -> Collections.addAll(inputs, itemStacks)); - this.output = Arrays.asList(output); + ingredients.stream().map(ingredient -> Lists.newArrayList(ingredient.getStackArray())).forEach(inputs::addAll); + this.output = Collections.singletonList(output); this.cookTime = cookTime; } @@ -42,7 +41,7 @@ public class DefaultCampfireDisplay implements RecipeDisplay<CampfireCookingReci @Override public List<List<ItemStack>> getInput() { - return Arrays.asList(inputs); + return Collections.singletonList(inputs); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java index ed0958dfb..801fccc52 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java @@ -95,7 +95,14 @@ public class DefaultPlugin implements REIPlugin { @Override public void registerRecipeDisplays(RecipeHelper recipeHelper) { - for(Recipe recipe : recipeHelper.getRecipeManager().values()) + List<Recipe> values = Lists.newLinkedList(recipeHelper.getRecipeManager().values()); + values.sort((o1, o2) -> { + int int_1 = o1.getId().getNamespace().compareTo(o2.getId().getNamespace()); + if (int_1 == 0) + int_1 = o1.getId().getPath().compareTo(o2.getId().getPath()); + return int_1; + }); + for(Recipe recipe : values) if (recipe instanceof ShapelessRecipe) recipeHelper.registerDisplay(CRAFTING, new DefaultShapelessDisplay((ShapelessRecipe) recipe)); else if (recipe instanceof ShapedRecipe) @@ -111,18 +118,18 @@ public class DefaultPlugin implements REIPlugin { else if (recipe instanceof StonecuttingRecipe) recipeHelper.registerDisplay(STONE_CUTTING, new DefaultStoneCuttingDisplay((StonecuttingRecipe) recipe)); BREWING_DISPLAYS.stream().forEachOrdered(display -> recipeHelper.registerDisplay(BREWING, display)); - List<ItemStack> arrowStack = Arrays.asList(Items.ARROW.getDefaultStack()); + List<ItemStack> arrowStack = Collections.singletonList(Items.ARROW.getDefaultStack()); RoughlyEnoughItemsCore.getItemRegisterer().getItemList().stream().filter(stack -> stack.getItem().equals(Items.LINGERING_POTION)).forEach(stack -> { List<List<ItemStack>> input = new ArrayList<>(); for(int i = 0; i < 4; i++) input.add(arrowStack); - input.add(Arrays.asList(stack)); + input.add(Collections.singletonList(stack)); for(int i = 0; i < 4; i++) input.add(arrowStack); ItemStack outputStack = new ItemStack(Items.TIPPED_ARROW, 8); PotionUtil.setPotion(outputStack, PotionUtil.getPotion(stack)); PotionUtil.setCustomPotionEffects(outputStack, PotionUtil.getCustomPotionEffects(stack)); - List<ItemStack> output = Lists.newArrayList(outputStack); + List<ItemStack> output = Collections.singletonList(outputStack); recipeHelper.registerDisplay(CRAFTING, new DefaultCustomDisplay(input, output)); }); } diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultShapedDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultShapedDisplay.java index b7758d7c6..b6cdc3384 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultShapedDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultShapedDisplay.java @@ -5,9 +5,10 @@ import net.minecraft.item.ItemStack; import net.minecraft.recipe.Recipe; import net.minecraft.recipe.crafting.ShapedRecipe; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; public class DefaultShapedDisplay implements DefaultCraftingDisplay<ShapedRecipe> { @@ -17,11 +18,8 @@ public class DefaultShapedDisplay implements DefaultCraftingDisplay<ShapedRecipe public DefaultShapedDisplay(ShapedRecipe recipe) { this.display = recipe; - this.input = Lists.newArrayList(); - recipe.getPreviewInputs().forEach(ingredient -> { - input.add(Arrays.asList(ingredient.getStackArray())); - }); - this.output = Arrays.asList(recipe.getOutput()); + this.input = Lists.newArrayList(recipe.getPreviewInputs().stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList())); + this.output = Collections.singletonList(recipe.getOutput()); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultShapelessDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultShapelessDisplay.java index 7c1c075df..47295d612 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultShapelessDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultShapelessDisplay.java @@ -4,9 +4,10 @@ import com.google.common.collect.Lists; import net.minecraft.item.ItemStack; import net.minecraft.recipe.crafting.ShapelessRecipe; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; public class DefaultShapelessDisplay implements DefaultCraftingDisplay { @@ -16,11 +17,8 @@ public class DefaultShapelessDisplay implements DefaultCraftingDisplay { public DefaultShapelessDisplay(ShapelessRecipe recipe) { this.display = recipe; - this.input = Lists.newArrayList(); - recipe.getPreviewInputs().forEach(ingredient -> { - input.add(Arrays.asList(ingredient.getStackArray())); - }); - this.output = Arrays.asList(recipe.getOutput()); + this.input = Lists.newArrayList(recipe.getPreviewInputs().stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList())); + this.output = Collections.singletonList(recipe.getOutput()); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultSmeltingDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultSmeltingDisplay.java index 044daa28f..ff96ad489 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultSmeltingDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultSmeltingDisplay.java @@ -8,7 +8,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.recipe.cooking.SmeltingRecipe; import net.minecraft.util.Identifier; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; @@ -21,14 +21,9 @@ public class DefaultSmeltingDisplay implements RecipeDisplay<SmeltingRecipe> { public DefaultSmeltingDisplay(SmeltingRecipe recipe) { this.display = recipe; - List<ItemStack> fuel = Lists.newArrayList(); - this.input = Lists.newArrayList(); - fuel.addAll(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); - recipe.getPreviewInputs().forEach(ingredient -> { - input.add(Arrays.asList(ingredient.getStackArray())); - }); - input.add(fuel); - this.output = Arrays.asList(recipe.getOutput()); + this.input = Lists.newArrayList(recipe.getPreviewInputs().stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList())); + input.add(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); + this.output = Collections.singletonList(recipe.getOutput()); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultSmokingDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultSmokingDisplay.java index 988cd2b04..19adb3b97 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultSmokingDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultSmokingDisplay.java @@ -8,7 +8,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.recipe.cooking.SmokingRecipe; import net.minecraft.util.Identifier; -import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; @@ -21,14 +21,9 @@ public class DefaultSmokingDisplay implements RecipeDisplay<SmokingRecipe> { public DefaultSmokingDisplay(SmokingRecipe recipe) { this.display = recipe; - List<ItemStack> fuel = Lists.newArrayList(); - this.input = Lists.newArrayList(); - fuel.addAll(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); - recipe.getPreviewInputs().forEach(ingredient -> { - input.add(Arrays.asList(ingredient.getStackArray())); - }); - input.add(fuel); - this.output = Arrays.asList(recipe.getOutput()); + this.input = Lists.newArrayList(recipe.getPreviewInputs().stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList())); + input.add(FurnaceBlockEntity.createFuelTimeMap().keySet().stream().map(Item::getDefaultStack).collect(Collectors.toList())); + this.output = Collections.singletonList(recipe.getOutput()); } @Override diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingCategory.java b/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingCategory.java index 8127e31a4..bc0465b59 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingCategory.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingCategory.java @@ -1,6 +1,7 @@ package me.shedaniel.rei.plugin; import com.mojang.blaze3d.platform.GlStateManager; +import me.shedaniel.rei.api.DisplaySettings; import me.shedaniel.rei.api.RecipeCategory; import me.shedaniel.rei.gui.widget.ItemSlotWidget; import me.shedaniel.rei.gui.widget.RecipeBaseWidget; @@ -55,4 +56,24 @@ public class DefaultStoneCuttingCategory implements RecipeCategory<DefaultStoneC return widgets; } + @Override + public DisplaySettings getDisplaySettings() { + return new DisplaySettings<DefaultStoneCuttingDisplay>() { + @Override + public int getDisplayHeight(RecipeCategory category) { + return 36; + } + + @Override + public int getDisplayWidth(RecipeCategory category, DefaultStoneCuttingDisplay display) { + return 150; + } + + @Override + public int getMaximumRecipePerPage(RecipeCategory category) { + return 99; + } + }; + } + } diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingDisplay.java b/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingDisplay.java index f0b84152a..cef526216 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingDisplay.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingDisplay.java @@ -8,10 +8,10 @@ import net.minecraft.recipe.StonecuttingRecipe; import net.minecraft.util.DefaultedList; import net.minecraft.util.Identifier; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; public class DefaultStoneCuttingDisplay implements RecipeDisplay<StonecuttingRecipe> { @@ -25,8 +25,8 @@ public class DefaultStoneCuttingDisplay implements RecipeDisplay<StonecuttingRec public DefaultStoneCuttingDisplay(DefaultedList<Ingredient> ingredients, ItemStack output) { this.inputs = Lists.newArrayList(); - ingredients.stream().map(ingredient -> ingredient.getStackArray()).forEach(itemStacks -> Collections.addAll(inputs, itemStacks)); - this.output = Arrays.asList(output); + ingredients.stream().map(i -> Lists.newArrayList(i.getStackArray())).collect(Collectors.toList()).forEach(inputs::addAll); + this.output = Collections.singletonList(output); } @Override @@ -36,7 +36,7 @@ public class DefaultStoneCuttingDisplay implements RecipeDisplay<StonecuttingRec @Override public List<List<ItemStack>> getInput() { - return Arrays.asList(inputs); + return Collections.singletonList(inputs); } @Override |
