diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-11-07 21:56:56 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2022-11-07 22:02:12 +0800 |
| commit | 17c5d7f51fed9a59034b6bfaa8937f01c7254854 (patch) | |
| tree | 63f5d1676a4fbcb4dc1859ffabd32ab3312c8866 /runtime-frontend/overlay/src/main/java/me | |
| parent | 85a0ae5badcdb94e8ea092f3feecfa631df47f3c (diff) | |
| parent | 4cfd0bcabaab7482c3053c8b51869f5228ba586b (diff) | |
| download | RoughlyEnoughItems-modularity.tar.gz RoughlyEnoughItems-modularity.tar.bz2 RoughlyEnoughItems-modularity.zip | |
Merge commit '4cfd0bcabaab7482c3053c8b51869f5228ba586b' into modularitymodularity
Diffstat (limited to 'runtime-frontend/overlay/src/main/java/me')
| -rw-r--r-- | runtime-frontend/overlay/src/main/java/me/shedaniel/rei/impl/client/gui/overlay/widgets/DisplayedEntryWidget.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/runtime-frontend/overlay/src/main/java/me/shedaniel/rei/impl/client/gui/overlay/widgets/DisplayedEntryWidget.java b/runtime-frontend/overlay/src/main/java/me/shedaniel/rei/impl/client/gui/overlay/widgets/DisplayedEntryWidget.java index 4d6c063b2..149fdd118 100644 --- a/runtime-frontend/overlay/src/main/java/me/shedaniel/rei/impl/client/gui/overlay/widgets/DisplayedEntryWidget.java +++ b/runtime-frontend/overlay/src/main/java/me/shedaniel/rei/impl/client/gui/overlay/widgets/DisplayedEntryWidget.java @@ -33,9 +33,11 @@ import me.shedaniel.rei.api.client.gui.widgets.Slot; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; import me.shedaniel.rei.api.client.gui.widgets.Widgets; import me.shedaniel.rei.api.client.overlay.ScreenOverlay; +import me.shedaniel.rei.api.client.registry.category.CategoryRegistry; import me.shedaniel.rei.api.client.registry.display.DisplayRegistry; import me.shedaniel.rei.api.client.registry.transfer.TransferHandler; import me.shedaniel.rei.api.client.view.Views; +import me.shedaniel.rei.api.common.category.CategoryIdentifier; import me.shedaniel.rei.api.common.display.Display; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.entry.type.VanillaEntryTypes; @@ -56,6 +58,8 @@ import org.jetbrains.annotations.Nullable; import java.util.ConcurrentModificationException; import java.util.List; +import java.util.Map; +import java.util.Optional; import java.util.function.Supplier; import java.util.function.UnaryOperator; @@ -187,8 +191,14 @@ public abstract class DisplayedEntryWidget extends GuiComponent implements Unary try { DisplayRegistry displayRegistry = DisplayRegistry.getInstance(); - for (List<Display> displays : displayRegistry.getAll().values()) { - for (Display display : displays) { + CategoryRegistry categoryRegistry = CategoryRegistry.getInstance(); + Map<CategoryIdentifier<?>, Boolean> filteringQuickCraftCategories = ConfigObject.getInstance().getFilteringQuickCraftCategories(); + for (Map.Entry<CategoryIdentifier<?>, List<Display>> entry : displayRegistry.getAll().entrySet()) { + Optional<? extends CategoryRegistry.CategoryConfiguration<?>> configuration; + if ((configuration = categoryRegistry.tryGet(entry.getKey())).isEmpty() + || categoryRegistry.isCategoryInvisible(configuration.get().getCategory())) continue; + if (!filteringQuickCraftCategories.getOrDefault(entry.getKey(), configuration.get().isQuickCraftingEnabledByDefault())) continue; + for (Display display : entry.getValue()) { if ((!ConfigObject.getInstance().shouldFilterDisplays() || displayRegistry.isDisplayVisible(display)) && Views.getInstance().isRecipesFor(slot.getEntries(), display)) { AutoCraftingEvaluator.Result result = ClientInternals.getAutoCraftingEvaluator(display).get(); |
