diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-02-21 22:33:45 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-02-21 22:33:45 +0800 |
| commit | a56baa875630ffac06e421a7389854b5301ed7f0 (patch) | |
| tree | 9469ff3f61f2aca622d6f86dbe8044769198e639 /default-plugin | |
| parent | 5eae235995583e378a884a14118095c1fda08fab (diff) | |
| download | RoughlyEnoughItems-a56baa875630ffac06e421a7389854b5301ed7f0.tar.gz RoughlyEnoughItems-a56baa875630ffac06e421a7389854b5301ed7f0.tar.bz2 RoughlyEnoughItems-a56baa875630ffac06e421a7389854b5301ed7f0.zip | |
More
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'default-plugin')
38 files changed, 144 insertions, 116 deletions
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java index 8910f4db5..bd872ae9f 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java @@ -39,9 +39,12 @@ import me.shedaniel.rei.api.favorites.FavoriteEntry; import me.shedaniel.rei.api.favorites.FavoriteEntryType; import me.shedaniel.rei.api.fluid.FluidSupportProvider; import me.shedaniel.rei.api.plugins.BuiltinPlugin; -import me.shedaniel.rei.api.plugins.REIPluginV0; +import me.shedaniel.rei.api.plugins.REIPlugin; import me.shedaniel.rei.api.registry.CategoryRegistry; +import me.shedaniel.rei.api.registry.EntryRegistry; import me.shedaniel.rei.api.registry.display.Display; +import me.shedaniel.rei.api.registry.screens.ExclusionZones; +import me.shedaniel.rei.api.registry.screens.ScreenRegistry; import me.shedaniel.rei.plugin.autocrafting.DefaultRecipeBookHandler; import me.shedaniel.rei.plugin.beacon.base.DefaultBeaconBaseCategory; import me.shedaniel.rei.plugin.beacon.base.DefaultBeaconBaseDisplay; @@ -121,7 +124,7 @@ import static me.shedaniel.rei.impl.Internals.attachInstance; @Environment(EnvType.CLIENT) @ApiStatus.Internal -public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { +public class DefaultPlugin implements REIPlugin, BuiltinPlugin { private static final Logger LOGGER = LogManager.getFormatterLogger("REI/DefaultPlugin"); public static final ResourceLocation CRAFTING = BuiltinPlugin.CRAFTING; public static final ResourceLocation SMELTING = BuiltinPlugin.SMELTING; @@ -151,11 +154,11 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { } public static void registerBrewingRecipe(RegisteredBrewingRecipe recipe) { - RecipeRegistry.getInstance().registerDisplay(new DefaultBrewingDisplay(recipe.input, recipe.ingredient, recipe.output)); + DisplayRegistry.getInstance().registerDisplay(new DefaultBrewingDisplay(recipe.input, recipe.ingredient, recipe.output)); } public static void registerInfoDisplay(DefaultInformationDisplay display) { - RecipeRegistry.getInstance().registerDisplay(display); + DisplayRegistry.getInstance().registerDisplay(display); } @Override @@ -177,7 +180,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { } catch (Exception ignored) { } if (stacks != null) { - for (ItemStack stack : registry.appendStacksForItem(item)) { + for (ItemStack stack : stacks) { registry.registerEntry(EntryStacks.of(stack)); } } else @@ -227,53 +230,54 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { new DefaultInformationCategory() ); - registry.registerWorkingStations(CRAFTING, EntryStacks.of(Items.CRAFTING_TABLE)); - registry.registerWorkingStations(SMELTING, EntryStacks.of(Items.FURNACE)); - registry.registerWorkingStations(SMOKING, EntryStacks.of(Items.SMOKER)); - registry.registerWorkingStations(BLASTING, EntryStacks.of(Items.BLAST_FURNACE)); - registry.registerWorkingStations(CAMPFIRE, EntryStacks.of(Items.CAMPFIRE), EntryStacks.of(Items.SOUL_CAMPFIRE)); - registry.registerWorkingStations(FUEL, EntryStacks.of(Items.FURNACE), EntryStacks.of(Items.SMOKER), EntryStacks.of(Items.BLAST_FURNACE)); - registry.registerWorkingStations(BREWING, EntryStacks.of(Items.BREWING_STAND)); - registry.registerWorkingStations(STONE_CUTTING, EntryStacks.of(Items.STONECUTTER)); - registry.registerWorkingStations(COMPOSTING, EntryStacks.of(Items.COMPOSTER)); - registry.registerWorkingStations(SMITHING, EntryStacks.of(Items.SMITHING_TABLE)); - registry.registerWorkingStations(BEACON, EntryStacks.of(Items.BEACON)); - registry.registerWorkingStations(BEACON_PAYMENT, EntryStacks.of(Items.BEACON)); + registry.addWorkstations(CRAFTING, EntryStacks.of(Items.CRAFTING_TABLE)); + registry.addWorkstations(SMELTING, EntryStacks.of(Items.FURNACE)); + registry.addWorkstations(SMOKING, EntryStacks.of(Items.SMOKER)); + registry.addWorkstations(BLASTING, EntryStacks.of(Items.BLAST_FURNACE)); + registry.addWorkstations(CAMPFIRE, EntryStacks.of(Items.CAMPFIRE), EntryStacks.of(Items.SOUL_CAMPFIRE)); + registry.addWorkstations(FUEL, EntryStacks.of(Items.FURNACE), EntryStacks.of(Items.SMOKER), EntryStacks.of(Items.BLAST_FURNACE)); + registry.addWorkstations(BREWING, EntryStacks.of(Items.BREWING_STAND)); + registry.addWorkstations(STONE_CUTTING, EntryStacks.of(Items.STONECUTTER)); + registry.addWorkstations(COMPOSTING, EntryStacks.of(Items.COMPOSTER)); + registry.addWorkstations(SMITHING, EntryStacks.of(Items.SMITHING_TABLE)); + registry.addWorkstations(BEACON, EntryStacks.of(Items.BEACON)); + registry.addWorkstations(BEACON_PAYMENT, EntryStacks.of(Items.BEACON)); + Set<Item> axes = Sets.newHashSet(), hoes = Sets.newHashSet(), shovels = Sets.newHashSet(); EntryRegistry.getInstance().getEntryStacks().filter(stack -> stack.getValueType() == ItemStack.class).map(stack -> ((ItemStack) stack.getValue()).getItem()).forEach(item -> { if (item instanceof AxeItem && axes.add(item)) { - registry.registerWorkingStations(STRIPPING, EntryStacks.of(item)); + registry.addWorkstations(STRIPPING, EntryStacks.of(item)); } if (item instanceof HoeItem && hoes.add(item)) { - registry.registerWorkingStations(TILLING, EntryStacks.of(item)); + registry.addWorkstations(TILLING, EntryStacks.of(item)); } if (item instanceof ShovelItem && shovels.add(item)) { - registry.registerWorkingStations(PATHING, EntryStacks.of(item)); + registry.addWorkstations(PATHING, EntryStacks.of(item)); } }); - TagCollection<Item> itemTagCollection = Minecraft.getInstance().getConnection().getTags().getOrEmpty(Registry.ITEM_REGISTRY); + TagCollection<Item> itemTagCollection = Minecraft.getInstance().getConnection().getTags().getItems(); Tag<Item> axesTag = itemTagCollection.getTag(new ResourceLocation("c", "axes")); if (axesTag != null) { for (Item item : axesTag.getValues()) { - if (axes.add(item)) registry.registerWorkingStations(STRIPPING, EntryStacks.of(item)); + if (axes.add(item)) registry.addWorkstations(STRIPPING, EntryStacks.of(item)); } } Tag<Item> hoesTag = itemTagCollection.getTag(new ResourceLocation("c", "hoes")); if (hoesTag != null) { for (Item item : hoesTag.getValues()) { - if (hoes.add(item)) registry.registerWorkingStations(TILLING, EntryStacks.of(item)); + if (hoes.add(item)) registry.addWorkstations(TILLING, EntryStacks.of(item)); } } Tag<Item> shovelsTag = itemTagCollection.getTag(new ResourceLocation("c", "shovels")); if (shovelsTag != null) { for (Item item : shovelsTag.getValues()) { - if (shovels.add(item)) registry.registerWorkingStations(PATHING, EntryStacks.of(item)); + if (shovels.add(item)) registry.addWorkstations(PATHING, EntryStacks.of(item)); } } } @Override - public void registerDisplays(RecipeRegistry registry) { + public void registerDisplays(DisplayRegistry registry) { registry.registerRecipes(CRAFTING, ShapelessRecipe.class, DefaultShapelessDisplay::new); registry.registerRecipes(CRAFTING, ShapedRecipe.class, DefaultShapedDisplay::new); registry.registerRecipes(SMELTING, SmeltingRecipe.class, DefaultSmeltingDisplay::new); @@ -361,7 +365,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { // Sit tight! This will be a fast journey! long time = System.currentTimeMillis(); EntryRegistry.getInstance().getEntryStacks().forEach(this::applyPotionTransformer); - for (List<Display> displays : RecipeRegistry.getInstance().getAllRecipesNoHandlers().values()) { + for (List<Display> displays : DisplayRegistry.getInstance().getAllRecipesNoHandlers().values()) { for (Display display : displays) { for (List<? extends EntryStack<?>> entries : display.getInputEntries()) for (EntryStack<?> stack : entries) @@ -381,11 +385,11 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { } @Override - public void registerBounds(DisplayBoundsRegistry registry) { + public void registerScreens(ScreenRegistry registry) { ExclusionZones exclusionZones = registry.exclusionZones(); exclusionZones.register(EffectRenderingInventoryScreen.class, new DefaultPotionEffectExclusionZones()); exclusionZones.register(RecipeUpdateListener.class, new DefaultRecipeBookExclusionZones()); - registry.registerProvider(new DisplayBoundsRegistry.DisplayBoundsProvider<AbstractContainerScreen<?>>() { + registry.registerHandler(new ScreenRegistry.DisplayBoundsProvider<AbstractContainerScreen<?>>() { @Override public Rectangle getScreenBounds(AbstractContainerScreen<?> screen) { return new Rectangle(screen.leftPos, screen.topPos, screen.imageWidth, screen.imageHeight); @@ -399,7 +403,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { } @Override - public void registerOthers(RecipeRegistry registry) { + public void registerOthers(DisplayRegistry registry) { registry.registerAutoCraftingHandler(new DefaultRecipeBookHandler()); registry.removeAutoCraftButton(FUEL); @@ -442,7 +446,7 @@ public class DefaultPlugin implements REIPluginV0, BuiltinPlugin { @Override public int getPriority() { - return -1; + return -100; } } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseCategory.java index 4172e150d..d78b95208 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseCategory.java @@ -31,19 +31,21 @@ import me.shedaniel.clothconfig2.api.ScrollingContainer; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.REIHelper; -import me.shedaniel.rei.api.registry.display.DisplayCategory; +import me.shedaniel.rei.api.gui.DisplayRenderer; import me.shedaniel.rei.api.gui.Renderer; -import me.shedaniel.rei.api.ingredient.util.EntryStacks; import me.shedaniel.rei.api.gui.widgets.Slot; -import me.shedaniel.rei.api.gui.widgets.Widgets; -import me.shedaniel.rei.api.gui.DisplayRenderer; import me.shedaniel.rei.api.gui.widgets.Widget; import me.shedaniel.rei.api.gui.widgets.WidgetWithBounds; -import me.shedaniel.rei.plugin.DefaultPlugin; +import me.shedaniel.rei.api.gui.widgets.Widgets; +import me.shedaniel.rei.api.ingredient.util.EntryStacks; +import me.shedaniel.rei.api.registry.display.DisplayCategory; import me.shedaniel.rei.api.util.CollectionUtils; +import me.shedaniel.rei.plugin.DefaultPlugin; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.resources.language.I18n; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.level.block.Blocks; @@ -59,20 +61,19 @@ public class DefaultBeaconBaseCategory implements DisplayCategory<DefaultBeaconB } @Override - @NotNull - public String getCategoryName() { - return I18n.get("category.rei.beacon_base"); + public @NotNull Component getTitle() { + return new TranslatableComponent("category.rei.beacon_base"); } @Override @NotNull - public Renderer getLogo() { + public Renderer getIcon() { return EntryStacks.of(Blocks.BEACON); } @Override public @NotNull DisplayRenderer getDisplayRenderer(DefaultBeaconBaseDisplay display) { - String name = getCategoryName(); + Component name = getTitle(); return new DisplayRenderer() { @Override public int getHeight() { @@ -102,7 +103,7 @@ public class DefaultBeaconBaseCategory implements DisplayCategory<DefaultBeaconB } @Override - public int getFixedRecipesPerPage() { + public int getFixedDisplaysPerPage() { return 1; } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseDisplay.java index f83216ed6..4cf5a6868 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/base/DefaultBeaconBaseDisplay.java @@ -59,7 +59,7 @@ public class DefaultBeaconBaseDisplay implements Display { } @Override - public @NotNull ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getCategoryIdentifier() { return DefaultPlugin.BEACON; } } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentCategory.java index 13500d069..00bdc7839 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentCategory.java @@ -44,6 +44,8 @@ import me.shedaniel.rei.api.util.CollectionUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.resources.language.I18n; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.level.block.Blocks; @@ -59,18 +61,18 @@ public class DefaultBeaconPaymentCategory implements DisplayCategory<DefaultBeac } @Override - public @NotNull String getCategoryName() { - return I18n.get("category.rei.beacon_payment"); + public @NotNull Component getTitle() { + return new TranslatableComponent("category.rei.beacon_payment"); } @Override - public @NotNull Renderer getLogo() { + public @NotNull Renderer getIcon() { return EntryStacks.of(Blocks.BEACON); } @Override public @NotNull DisplayRenderer getDisplayRenderer(DefaultBeaconPaymentDisplay display) { - String name = getCategoryName(); + Component name = getTitle(); return new DisplayRenderer() { @Override public int getHeight() { @@ -100,7 +102,7 @@ public class DefaultBeaconPaymentCategory implements DisplayCategory<DefaultBeac } @Override - public int getFixedRecipesPerPage() { + public int getFixedDisplaysPerPage() { return 1; } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentDisplay.java index 0176a0085..17991ef5b 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/payment/DefaultBeaconPaymentDisplay.java @@ -60,7 +60,7 @@ public class DefaultBeaconPaymentDisplay implements Display { } @Override - public @NotNull ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getCategoryIdentifier() { return DefaultPlugin.BEACON_PAYMENT; } } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java index c6e47519e..b579fbc3f 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java @@ -38,7 +38,7 @@ public class DefaultBlastingDisplay extends DefaultCookingDisplay { } @Override - public @NotNull ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getCategoryIdentifier() { return DefaultPlugin.BLASTING; } } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java index 5aa9ea816..644723ec6 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java @@ -37,6 +37,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.Minecraft; import net.minecraft.client.resources.language.I18n; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.item.Items; @@ -53,12 +54,12 @@ public class DefaultBrewingCategory implements DisplayCategory<DefaultBrewingDis } @Override - public @NotNull Renderer getLogo() { + public @NotNull Renderer getIcon() { return EntryStacks.of(Blocks.BREWING_STAND); } @Override - public @NotNull String getCategoryName() { + public @NotNull Component getTitle() { return I18n.get("category.rei.brewing"); } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java index 1a3cf1e59..05b65b08e 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java @@ -78,7 +78,7 @@ public class DefaultBrewingDisplay implements Display { } @Override - public @NotNull ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getCategoryIdentifier() { return DefaultPlugin.BREWING; } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java index 955f5c7a3..4f7834ea7 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java @@ -33,6 +33,7 @@ import me.shedaniel.rei.api.gui.widgets.Widgets; import me.shedaniel.rei.api.gui.widgets.Widget; import me.shedaniel.rei.plugin.DefaultPlugin; import net.minecraft.client.resources.language.I18n; +import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Blocks; @@ -48,12 +49,12 @@ public class DefaultCampfireCategory implements DisplayCategory<DefaultCampfireD } @Override - public @NotNull Renderer getLogo() { + public @NotNull Renderer getIcon() { return EntryStacks.of(Blocks.CAMPFIRE); } @Override - public @NotNull String getCategoryName() { + public @NotNull Component getTitle() { return I18n.get("category.rei.campfire"); } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java index cbb1222ee..6ea51cb97 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java @@ -64,7 +64,7 @@ public class DefaultCampfireDisplay implements Display { } @Override - public @NotNull Optional<ResourceLocation> getRecipeLocation() { + public @NotNull Optional<ResourceLocation> getDisplayLocation() { return Optional.ofNullable(display).map(AbstractCookingRecipe::getId); } @@ -84,7 +84,7 @@ public class DefaultCampfireDisplay implements Display { } @Override - public @NotNull ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getCategoryIdentifier() { return DefaultPlugin.CAMPFIRE; } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java index b3f2d4054..4dbbd3d9b 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java @@ -58,12 +58,12 @@ public class DefaultCompostingCategory implements DisplayCategory<DefaultCompost } @Override - public @NotNull Renderer getLogo() { + public @NotNull Renderer getIcon() { return EntryStacks.of(Blocks.COMPOSTER); } @Override - public @NotNull String getCategoryName() { + public @NotNull Component getTitle() { return I18n.get("category.rei.composting"); } @@ -115,7 +115,7 @@ public class DefaultCompostingCategory implements DisplayCategory<DefaultCompost } @Override - public int getFixedRecipesPerPage |
