diff options
| author | shedaniel <daniel@shedaniel.me> | 2020-08-05 17:14:07 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2020-08-05 17:14:07 +0800 |
| commit | 8a2df51193fd3db145f3b1ace974e9e0a0bc09a5 (patch) | |
| tree | 894244ea7e84d9bd78748e4e295e528cfc9e7979 /RoughlyEnoughItems-default-plugin/src/main/java | |
| parent | 1ce5ca77bc2f98df6cc370c96547c2c39c1fd897 (diff) | |
| download | RoughlyEnoughItems-8a2df51193fd3db145f3b1ace974e9e0a0bc09a5.tar.gz RoughlyEnoughItems-8a2df51193fd3db145f3b1ace974e9e0a0bc09a5.tar.bz2 RoughlyEnoughItems-8a2df51193fd3db145f3b1ace974e9e0a0bc09a5.zip | |
REI 5.1.0:
- Improve auto crafting, now able to detect things on the grid
- Introduce getResultingEntries as a replacement for getOutputEntries, it can now handle lists of lists of stacks
- Caching for fluid hashing
- Full fractions support for simple recipe display
- Made searchFavorites defaulted false
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'RoughlyEnoughItems-default-plugin/src/main/java')
20 files changed, 35 insertions, 35 deletions
diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java index d7a231a3b..cd6fbfe95 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java @@ -252,8 +252,9 @@ public class DefaultPlugin implements REIPluginV0 { for (List<EntryStack> entries : display.getInputEntries()) for (EntryStack stack : entries) applyPotionTransformer(stack); - for (EntryStack stack : display.getOutputEntries()) - applyPotionTransformer(stack); + for (List<EntryStack> entries : display.getResultingEntries()) + for (EntryStack stack : entries) + applyPotionTransformer(stack); } } time = System.currentTimeMillis() - time; diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java index 6749a9f4a..794327c0f 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java @@ -53,7 +53,7 @@ public class DefaultBeaconBaseDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { + public List<List<EntryStack>> getResultingEntries() { return Collections.emptyList(); } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java index 1d52b3571..12f7bead1 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java @@ -65,8 +65,8 @@ public class DefaultBrewingDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return Collections.singletonList(output); + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(Collections.singletonList(output)); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java index 90472096d..3c136a974 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java @@ -69,7 +69,7 @@ public class DefaultCampfireCategory implements RecipeCategory<DefaultCampfireDi new TranslatableText("category.rei.campfire.time", df.format(cookingTime / 20d))).noShadow().rightAligned().color(0xFF404040, 0xFFBBBBBB)); widgets.add(Widgets.createArrow(new Point(startPoint.x + 24, startPoint.y + 8)).animationDurationTicks(cookingTime)); widgets.add(Widgets.createSlot(new Point(startPoint.x + 1, startPoint.y + 1)).entries(display.getInputEntries().get(0)).markInput()); - widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 9)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 9)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java index a15a1307c..d201e0fb9 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java @@ -73,8 +73,8 @@ public class DefaultCampfireDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java index eaa9b2d27..7b8b58dac 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java @@ -27,7 +27,6 @@ import com.google.common.collect.Lists; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.EntryStack; -import me.shedaniel.rei.api.REIHelper; import me.shedaniel.rei.api.RecipeCategory; import me.shedaniel.rei.api.widgets.Widgets; import me.shedaniel.rei.gui.entries.RecipeEntry; @@ -86,7 +85,6 @@ public class DefaultCompostingCategory implements RecipeCategory<DefaultComposti public List<Widget> setupDisplay(DefaultCompostingDisplay display, Rectangle bounds) { List<Widget> widgets = Lists.newArrayList(); Point startingPoint = new Point(bounds.x + bounds.width - 55, bounds.y + 110); - widgets.add(Widgets.createFilledRectangle(bounds, REIHelper.getInstance().isDarkThemeEnabled() ? -13750738 : -3750202)); List<EntryStack> stacks = new ArrayList<>(display.getRequiredEntries().get(0)); int i = 0; for (int y = 0; y < 6; y++) @@ -102,7 +100,7 @@ public class DefaultCompostingCategory implements RecipeCategory<DefaultComposti } widgets.add(Widgets.createArrow(new Point(startingPoint.x - 1, startingPoint.y + 7))); widgets.add(Widgets.createResultSlotBackground(new Point(startingPoint.x + 33, startingPoint.y + 8))); - widgets.add(Widgets.createSlot(new Point(startingPoint.x + 33, startingPoint.y + 8)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startingPoint.x + 33, startingPoint.y + 8)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java index fd2d99142..2c9a8cc3b 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java @@ -65,8 +65,8 @@ public class DefaultCompostingDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java index 34320e7f2..7f836a278 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java @@ -78,13 +78,13 @@ public class DefaultCookingCategory implements TransferRecipeCategory<DefaultCoo new TranslatableText("category.rei.cooking.time&xp", df.format(display.getXp()), df.format(cookingTime / 20d))).noShadow().rightAligned().color(0xFF404040, 0xFFBBBBBB)); widgets.add(Widgets.createArrow(new Point(startPoint.x + 24, startPoint.y + 8)).animationDurationTicks(cookingTime)); widgets.add(Widgets.createSlot(new Point(startPoint.x + 1, startPoint.y + 1)).entries(display.getInputEntries().get(0)).markInput()); - widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 9)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 9)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } @Override public RecipeEntry getSimpleRenderer(DefaultCookingDisplay recipe) { - return SimpleRecipeEntry.create(Collections.singletonList(recipe.getInputEntries().get(0)), recipe.getOutputEntries()); + return SimpleRecipeEntry.from(Collections.singletonList(recipe.getInputEntries().get(0)), recipe.getResultingEntries()); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java index b0bbeb783..9fb18a0e4 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java @@ -79,8 +79,8 @@ public abstract class DefaultCookingDisplay implements TransferRecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java index e5cb1a9a7..b751cb44a 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java @@ -89,7 +89,7 @@ public class DefaultCraftingCategory implements TransferRecipeCategory<DefaultCr slots.get(i).entries(input.get(i)); } widgets.addAll(slots); - widgets.add(Widgets.createSlot(new Point(startPoint.x + 95, startPoint.y + 19)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startPoint.x + 95, startPoint.y + 19)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java index e9ede3e99..21e5bae3c 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCustomDisplay.java @@ -32,6 +32,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.recipe.Recipe; import net.minecraft.util.Identifier; +import java.util.Collections; import java.util.List; import java.util.Optional; @@ -84,8 +85,8 @@ public class DefaultCustomDisplay implements DefaultCraftingDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java index 83d9702fb..3da0fad84 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java @@ -58,8 +58,8 @@ public class DefaultShapedDisplay implements DefaultCraftingDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java index 2277269b3..94e6ae99f 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java @@ -63,8 +63,8 @@ public class DefaultShapelessDisplay implements DefaultCraftingDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelDisplay.java index a5173913d..3fd8c739a 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/fuel/DefaultFuelDisplay.java @@ -49,7 +49,7 @@ public class DefaultFuelDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { + public List<List<EntryStack>> getResultingEntries() { return Collections.emptyList(); } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationDisplay.java index 5f9a6738a..e6e54776d 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/information/DefaultInformationDisplay.java @@ -63,8 +63,8 @@ public class DefaultInformationDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return entryStacks; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(entryStacks); } public DefaultInformationDisplay line(Text line) { diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingCategory.java index eb65df859..c40963c60 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingCategory.java @@ -62,7 +62,7 @@ public class DefaultSmithingCategory implements RecipeCategory<DefaultSmithingDi widgets.add(Widgets.createResultSlotBackground(new Point(startPoint.x + 61, startPoint.y + 5))); widgets.add(Widgets.createSlot(new Point(startPoint.x + 4 - 22, startPoint.y + 5)).entries(display.getInputEntries().get(0)).markInput()); widgets.add(Widgets.createSlot(new Point(startPoint.x + 4, startPoint.y + 5)).entries(display.getInputEntries().get(1)).markInput()); - widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 5)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 5)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingDisplay.java index 97ea39ed7..bb54cfd6e 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/smithing/DefaultSmithingDisplay.java @@ -71,8 +71,8 @@ public class DefaultSmithingDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java index b335d7974..d52495d67 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java @@ -62,7 +62,7 @@ public class DefaultStoneCuttingCategory implements RecipeCategory<DefaultStoneC widgets.add(Widgets.createArrow(new Point(startPoint.x + 27, startPoint.y + 4))); widgets.add(Widgets.createResultSlotBackground(new Point(startPoint.x + 61, startPoint.y + 5))); widgets.add(Widgets.createSlot(new Point(startPoint.x + 4, startPoint.y + 5)).entries(display.getInputEntries().get(0)).markInput()); - widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 5)).entries(display.getOutputEntries()).disableBackground().markOutput()); + widgets.add(Widgets.createSlot(new Point(startPoint.x + 61, startPoint.y + 5)).entries(display.getResultingEntries().get(0)).disableBackground().markOutput()); return widgets; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java index 335b38c15..79c76dad7 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java @@ -67,8 +67,8 @@ public class DefaultStoneCuttingDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return output; + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(output); } @Override diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingDisplay.java index 9f80e69a6..6830eac6b 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingDisplay.java @@ -62,8 +62,8 @@ public class DefaultStrippingDisplay implements RecipeDisplay { } @Override - public List<EntryStack> getOutputEntries() { - return Collections.singletonList(out); + public List<List<EntryStack>> getResultingEntries() { + return Collections.singletonList(Collections.singletonList(out)); } @Override |
