From 45ed37cc8d0088b57cd2605482f471e69e5885f4 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 12 May 2019 16:26:48 +0800 Subject: Update Mappings --- .../me/shedaniel/rei/RoughlyEnoughItemsCore.java | 57 +++++++++++++--------- .../shedaniel/rei/RoughlyEnoughItemsNetwork.java | 14 +++--- .../java/me/shedaniel/rei/api/DisplayHelper.java | 5 -- .../rei/client/BaseBoundsHandlerImpl.java | 4 +- .../me/shedaniel/rei/client/ClientHelperImpl.java | 4 +- .../me/shedaniel/rei/client/ConfigManagerImpl.java | 4 +- .../me/shedaniel/rei/client/DisplayHelperImpl.java | 4 +- .../me/shedaniel/rei/client/ItemRegistryImpl.java | 1 + .../shedaniel/rei/gui/ContainerScreenOverlay.java | 8 +-- .../shedaniel/rei/gui/PreRecipeViewingScreen.java | 6 +-- .../me/shedaniel/rei/gui/RecipeViewingScreen.java | 16 +++--- .../rei/gui/VillagerRecipeViewingScreen.java | 31 +++++++++--- .../rei/gui/credits/CreditsEntryListWidget.java | 4 +- .../shedaniel/rei/gui/credits/CreditsScreen.java | 8 +-- .../me/shedaniel/rei/gui/widget/ButtonWidget.java | 8 +-- .../rei/gui/widget/DetailedButtonWidget.java | 6 +-- .../shedaniel/rei/gui/widget/ItemListOverlay.java | 7 +-- .../rei/gui/widget/SearchFieldWidget.java | 2 +- .../rei/mixin/MixinBrewingRecipeRegistry.java | 8 +-- .../rei/plugin/DefaultBlastingCategory.java | 7 +-- .../rei/plugin/DefaultBrewingCategory.java | 8 +-- .../rei/plugin/DefaultCampfireCategory.java | 8 +-- .../rei/plugin/DefaultCraftingCategory.java | 8 +-- .../rei/plugin/DefaultSmeltingCategory.java | 5 +- .../rei/plugin/DefaultSmokingCategory.java | 7 +-- .../rei/plugin/DefaultStoneCuttingCategory.java | 8 +-- 26 files changed, 143 insertions(+), 105 deletions(-) (limited to 'src/main') diff --git a/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java b/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java index f96ccd42a..eb3bec81f 100644 --- a/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java +++ b/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java @@ -41,7 +41,7 @@ import java.util.Optional; import java.util.stream.Collectors; public class RoughlyEnoughItemsCore implements ClientModInitializer { - + public static final Logger LOGGER; private static final RecipeHelper RECIPE_HELPER = new RecipeHelperImpl(); private static final PluginDisabler PLUGIN_DISABLER = new PluginDisablerImpl(); @@ -49,70 +49,80 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { private static final DisplayHelper DISPLAY_HELPER = new DisplayHelperImpl(); private static final Map plugins = Maps.newHashMap(); private static ConfigManagerImpl configManager; - + static { LOGGER = LogManager.getFormatterLogger("REI"); } - + public static RecipeHelper getRecipeHelper() { return RECIPE_HELPER; } - + public static me.shedaniel.rei.api.ConfigManager getConfigManager() { return configManager; } - + public static ItemRegistry getItemRegisterer() { return ITEM_REGISTRY; } - + public static PluginDisabler getPluginDisabler() { return PLUGIN_DISABLER; } - + public static DisplayHelper getDisplayHelper() { return DISPLAY_HELPER; } - + public static REIPluginEntry registerPlugin(Identifier identifier, REIPluginEntry plugin) { plugins.put(identifier, plugin); RoughlyEnoughItemsCore.LOGGER.info("[REI] Registered plugin %s from %s", identifier.toString(), plugin.getClass().getSimpleName()); plugin.onFirstLoad(getPluginDisabler()); return plugin; } - + public static List getPlugins() { return new LinkedList<>(plugins.values()); } - + public static Optional getPluginIdentifier(REIPluginEntry plugin) { for(Identifier identifier : plugins.keySet()) if (identifier != null && plugins.get(identifier).equals(plugin)) return Optional.of(identifier); return Optional.empty(); } - + public static boolean hasPermissionToUsePackets() { - return hasOperatorPermission() && canUsePackets(); + try { + MinecraftClient.getInstance().getNetworkHandler().getCommandSource().hasPermissionLevel(0); + return hasOperatorPermission() && canUsePackets(); + } catch (NullPointerException e) { + return true; + } } - + public static boolean hasOperatorPermission() { - return MinecraftClient.getInstance().getNetworkHandler().getCommandSource().hasPermissionLevel(1); + try { + return MinecraftClient.getInstance().getNetworkHandler().getCommandSource().hasPermissionLevel(1); + } catch (NullPointerException e) { + return true; + } } - + public static boolean canUsePackets() { return ClientSidePacketRegistry.INSTANCE.canServerReceive(RoughlyEnoughItemsNetwork.CREATE_ITEMS_PACKET) && ClientSidePacketRegistry.INSTANCE.canServerReceive(RoughlyEnoughItemsNetwork.DELETE_ITEMS_PACKET); } - + @Override public void onInitializeClient() { configManager = new ConfigManagerImpl(); - + registerClothEvents(); discoverOldPlugins(); discoverPluginEntries(); } - + + @SuppressWarnings("deprecation") private void discoverPluginEntries() { for(REIPluginEntry reiPlugin : FabricLoader.getInstance().getEntrypoints("rei_plugins", REIPluginEntry.class)) { try { @@ -125,7 +135,8 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { } } } - + + @SuppressWarnings("deprecation") private void discoverOldPlugins() { List> list = Lists.newArrayList(); for(ModMetadata metadata : FabricLoader.getInstance().getAllMods().stream().map(ModContainer::getMetadata).filter(metadata -> metadata.containsCustomElement("roughlyenoughitems:plugins")).collect(Collectors.toList())) { @@ -164,7 +175,7 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { } } } - + private void loadPluginFromJsonObject(List> list, ModMetadata modMetadata, JsonObject object) { String namespace = modMetadata.getId(); if (object.has("namespace")) @@ -173,7 +184,7 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { String className = object.get("class").getAsString(); list.add(new Pair<>(new Identifier(namespace, id), className)); } - + private void registerClothEvents() { ClothClientHooks.SYNC_RECIPES.register((minecraftClient, recipeManager, synchronizeRecipesS2CPacket) -> { ((RecipeHelperImpl) RoughlyEnoughItemsCore.getRecipeHelper()).recipesLoaded(recipeManager); @@ -232,7 +243,7 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { ScreenHelper.getLastOverlay().lateRender(i, i1, v); }); ClothClientHooks.SCREEN_KEY_PRESSED.register((minecraftClient, screen, i, i1, i2) -> { - if (screen.getFocused() != null && screen.getFocused() instanceof TextFieldWidget || (screen.getFocused() instanceof RecipeBookGui && ((RecipeBookGuiHooks)screen.getFocused()).rei_getSearchField() != null && ((RecipeBookGuiHooks)screen.getFocused()).rei_getSearchField().isFocused())) + if (screen.getFocused() != null && screen.getFocused() instanceof TextFieldWidget || (screen.getFocused() instanceof RecipeBookGui && ((RecipeBookGuiHooks) screen.getFocused()).rei_getSearchField() != null && ((RecipeBookGuiHooks) screen.getFocused()).rei_getSearchField().isFocused())) return ActionResult.PASS; if (screen instanceof ContainerScreen) if (ScreenHelper.getLastOverlay().keyPressed(i, i1, i2)) @@ -240,5 +251,5 @@ public class RoughlyEnoughItemsCore implements ClientModInitializer { return ActionResult.PASS; }); } - + } diff --git a/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java b/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java index 63b7765e2..b2c444ec1 100644 --- a/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java +++ b/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java @@ -8,12 +8,12 @@ package me.shedaniel.rei; import me.shedaniel.rei.gui.widget.ItemListOverlay; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.network.ServerSidePacketRegistry; +import net.minecraft.ChatFormat; import net.minecraft.client.resource.language.I18n; import net.minecraft.item.ItemStack; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.server.network.ServerPlayerEntity; -import net.minecraft.text.StringTextComponent; -import net.minecraft.text.TextFormat; -import net.minecraft.text.TranslatableTextComponent; import net.minecraft.util.Identifier; public class RoughlyEnoughItemsNetwork implements ModInitializer { @@ -26,7 +26,7 @@ public class RoughlyEnoughItemsNetwork implements ModInitializer { ServerSidePacketRegistry.INSTANCE.register(DELETE_ITEMS_PACKET, (packetContext, packetByteBuf) -> { ServerPlayerEntity player = (ServerPlayerEntity) packetContext.getPlayer(); if (player.getServer().getPermissionLevel(player.getGameProfile()) < player.getServer().getOpPermissionLevel()) { - player.addChatMessage(new TranslatableTextComponent("text.rei.no_permission_cheat").applyFormat(TextFormat.RED), false); + player.addChatMessage(new TranslatableComponent("text.rei.no_permission_cheat").applyFormat(ChatFormat.RED), false); return; } if (!player.inventory.getCursorStack().isEmpty()) @@ -35,14 +35,14 @@ public class RoughlyEnoughItemsNetwork implements ModInitializer { ServerSidePacketRegistry.INSTANCE.register(CREATE_ITEMS_PACKET, (packetContext, packetByteBuf) -> { ServerPlayerEntity player = (ServerPlayerEntity) packetContext.getPlayer(); if (player.getServer().getPermissionLevel(player.getGameProfile()) < player.getServer().getOpPermissionLevel()) { - player.addChatMessage(new TranslatableTextComponent("text.rei.no_permission_cheat").applyFormat(TextFormat.RED), false); + player.addChatMessage(new TranslatableComponent("text.rei.no_permission_cheat").applyFormat(ChatFormat.RED), false); return; } ItemStack stack = packetByteBuf.readItemStack(); if (player.inventory.insertStack(stack.copy())) - player.addChatMessage(new StringTextComponent(I18n.translate("text.rei.cheat_items").replaceAll("\\{item_name}", ItemListOverlay.tryGetItemStackName(stack.copy())).replaceAll("\\{item_count}", stack.copy().getAmount() + "").replaceAll("\\{player_name}", player.getEntityName())), false); + player.addChatMessage(new TextComponent(I18n.translate("text.rei.cheat_items").replaceAll("\\{item_name}", ItemListOverlay.tryGetItemStackName(stack.copy())).replaceAll("\\{item_count}", stack.copy().getAmount() + "").replaceAll("\\{player_name}", player.getEntityName())), false); else - player.addChatMessage(new TranslatableTextComponent("text.rei.failed_cheat_items"), false); + player.addChatMessage(new TranslatableComponent("text.rei.failed_cheat_items"), false); }); } diff --git a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java index 9fea85839..5cabf4ad1 100644 --- a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java +++ b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java @@ -55,11 +55,6 @@ public interface DisplayHelper { BaseBoundsHandler getBaseBoundsHandler(); public static interface DisplayBoundsHandler { - /** - * An empty rectangle - */ - public static final Rectangle EMPTY = new Rectangle(); - /** * Gets the base supported class for the bounds handler * diff --git a/src/main/java/me/shedaniel/rei/client/BaseBoundsHandlerImpl.java b/src/main/java/me/shedaniel/rei/client/BaseBoundsHandlerImpl.java index 8732dfda3..ca2720e8f 100644 --- a/src/main/java/me/shedaniel/rei/client/BaseBoundsHandlerImpl.java +++ b/src/main/java/me/shedaniel/rei/client/BaseBoundsHandlerImpl.java @@ -43,12 +43,12 @@ public class BaseBoundsHandlerImpl implements BaseBoundsHandler { @Override public Rectangle getLeftBounds(Screen screen) { - return DisplayHelper.DisplayBoundsHandler.EMPTY; + return new Rectangle(); } @Override public Rectangle getRightBounds(Screen screen) { - return DisplayHelper.DisplayBoundsHandler.EMPTY; + return new Rectangle(); } @Override diff --git a/src/main/java/me/shedaniel/rei/client/ClientHelperImpl.java b/src/main/java/me/shedaniel/rei/client/ClientHelperImpl.java index b127a2461..207723944 100644 --- a/src/main/java/me/shedaniel/rei/client/ClientHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/client/ClientHelperImpl.java @@ -30,7 +30,7 @@ import net.minecraft.client.util.InputUtil; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; -import net.minecraft.text.TranslatableTextComponent; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.util.DefaultedList; import net.minecraft.util.Identifier; import net.minecraft.util.PacketByteBuf; @@ -154,7 +154,7 @@ public class ClientHelperImpl implements ClientHelper, ClientModInitializer { String madeUpCommand = og.replaceAll("\\{player_name}", MinecraftClient.getInstance().player.getEntityName()).replaceAll("\\{item_name}", identifier.getPath()).replaceAll("\\{item_identifier}", identifier.toString()).replaceAll("\\{nbt}", tagMessage).replaceAll("\\{count}", String.valueOf(cheatedStack.getAmount())); if (madeUpCommand.length() > 256) { madeUpCommand = og.replaceAll("\\{player_name}", MinecraftClient.getInstance().player.getEntityName()).replaceAll("\\{item_name}", identifier.getPath()).replaceAll("\\{item_identifier}", identifier.toString()).replaceAll("\\{nbt}", "").replaceAll("\\{count}", String.valueOf(cheatedStack.getAmount())); - MinecraftClient.getInstance().player.addChatMessage(new TranslatableTextComponent("text.rei.too_long_nbt"), false); + MinecraftClient.getInstance().player.addChatMessage(new TranslatableComponent("text.rei.too_long_nbt"), false); } MinecraftClient.getInstance().player.sendChatMessage(madeUpCommand); return true; diff --git a/src/main/java/me/shedaniel/rei/client/ConfigManagerImpl.java b/src/main/java/me/shedaniel/rei/client/ConfigManagerImpl.java index d6ec4e15c..741bd9fc4 100644 --- a/src/main/java/me/shedaniel/rei/client/ConfigManagerImpl.java +++ b/src/main/java/me/shedaniel/rei/client/ConfigManagerImpl.java @@ -15,7 +15,7 @@ import net.fabricmc.loader.api.FabricLoader; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.Screen; import net.minecraft.client.resource.language.I18n; -import net.minecraft.text.StringTextComponent; +import net.minecraft.network.chat.TextComponent; import java.io.File; import java.io.FileOutputStream; @@ -143,7 +143,7 @@ public class ConfigManagerImpl implements ConfigManager { e.printStackTrace(); } } - return new Screen(new StringTextComponent("")) { + return new Screen(new TextComponent("")) { @Override public void render(int int_1, int int_2, float float_1) { renderDirtBackground(0); diff --git a/src/main/java/me/shedaniel/rei/client/DisplayHelperImpl.java b/src/main/java/me/shedaniel/rei/client/DisplayHelperImpl.java index 93419651e..4cac6a11f 100644 --- a/src/main/java/me/shedaniel/rei/client/DisplayHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/client/DisplayHelperImpl.java @@ -28,12 +28,12 @@ public class DisplayHelperImpl implements DisplayHelper { @Override public Rectangle getLeftBounds(Object screen) { - return DisplayBoundsHandler.EMPTY; + return new Rectangle(); } @Override public Rectangle getRightBounds(Object screen) { - return DisplayBoundsHandler.EMPTY; + return new Rectangle(); } @Override diff --git a/src/main/java/me/shedaniel/rei/client/ItemRegistryImpl.java b/src/main/java/me/shedaniel/rei/client/ItemRegistryImpl.java index 5d05b8570..951e6cccc 100644 --- a/src/main/java/me/shedaniel/rei/client/ItemRegistryImpl.java +++ b/src/main/java/me/shedaniel/rei/client/ItemRegistryImpl.java @@ -26,6 +26,7 @@ public class ItemRegistryImpl implements ItemRegistry { return Collections.unmodifiableList(itemList); } + @SuppressWarnings("deprecation") @Override public List getModifiableItemList() { return itemList; diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java index 3cc1e5037..e90fef7c1 100644 --- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java +++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java @@ -16,17 +16,17 @@ import me.shedaniel.rei.client.Weather; import me.shedaniel.rei.gui.widget.*; import me.shedaniel.rei.listeners.ContainerScreenHooks; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.font.TextRenderer; import net.minecraft.client.gui.*; import net.minecraft.client.render.GuiLighting; import net.minecraft.client.resource.language.I18n; +import net.minecraft.client.sound.PositionedSoundInstance; import net.minecraft.client.util.Window; import net.minecraft.client.world.ClientWorld; import net.minecraft.container.Slot; import net.minecraft.item.ItemStack; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.sound.SoundEvents; -import net.minecraft.text.TranslatableTextComponent; import net.minecraft.util.ActionResult; import net.minecraft.util.Identifier; import net.minecraft.util.math.MathHelper; @@ -69,7 +69,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra widgets.add(itemListOverlay = new ItemListOverlay(page)); itemListOverlay.updateList(boundsHandler, boundsHandler.getItemListArea(rectangle), page, searchTerm, false); - widgets.add(buttonLeft = new ButtonWidget(rectangle.x, rectangle.y + 5, 16, 16, new TranslatableTextComponent("text.rei.left_arrow")) { + widgets.add(buttonLeft = new ButtonWidget(rectangle.x, rectangle.y + 5, 16, 16, new TranslatableComponent("text.rei.left_arrow")) { @Override public void onPressed() { page--; @@ -88,7 +88,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra return false; } }); - widgets.add(buttonRight = new ButtonWidget(rectangle.x + rectangle.width - 18, rectangle.y + 5, 16, 16, new TranslatableTextComponent("text.rei.right_arrow")) { + widgets.add(buttonRight = new ButtonWidget(rectangle.x + rectangle.width - 18, rectangle.y + 5, 16, 16, new TranslatableComponent("text.rei.right_arrow")) { @Override public void onPressed() { page++; diff --git a/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java index 54560ed89..7509524c6 100644 --- a/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java +++ b/src/main/java/me/shedaniel/rei/gui/PreRecipeViewingScreen.java @@ -16,13 +16,13 @@ import me.shedaniel.rei.gui.widget.ButtonWidget; import me.shedaniel.rei.gui.widget.HighlightableWidget; import me.shedaniel.rei.gui.widget.Widget; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.gui.Element; import net.minecraft.client.gui.Screen; import net.minecraft.client.render.GuiLighting; import net.minecraft.client.resource.language.I18n; +import net.minecraft.client.sound.PositionedSoundInstance; +import net.minecraft.network.chat.TextComponent; import net.minecraft.sound.SoundEvents; -import net.minecraft.text.TranslatableTextComponent; import net.minecraft.util.Identifier; import java.awt.*; @@ -39,7 +39,7 @@ public class PreRecipeViewingScreen extends Screen { private Map> map; public PreRecipeViewingScreen(Map> map) { - super(new TranslatableTextComponent("text.rei.recipe_screen_type.selection")); + super(new TextComponent("text.rei.recipe_screen_type.selection")); this.widgets = Lists.newArrayList(); this.original = true; this.map = map; diff --git a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java index d067d4378..de66c2e17 100644 --- a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java +++ b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java @@ -13,16 +13,16 @@ import me.shedaniel.rei.api.*; import me.shedaniel.rei.client.ScreenHelper; import me.shedaniel.rei.gui.widget.*; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.gui.ContainerScreen; import net.minecraft.client.gui.Element; import net.minecraft.client.gui.Screen; import net.minecraft.client.render.GuiLighting; import net.minecraft.client.resource.language.I18n; +import net.minecraft.client.sound.PositionedSoundInstance; import net.minecraft.client.util.Window; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.sound.SoundEvents; -import net.minecraft.text.StringTextComponent; -import net.minecraft.text.TranslatableTextComponent; import net.minecraft.util.Identifier; import net.minecraft.util.math.MathHelper; @@ -52,7 +52,7 @@ public class RecipeViewingScreen extends Screen { private ButtonWidget recipeBack, recipeNext, categoryBack, categoryNext; public RecipeViewingScreen(Map> categoriesMap) { - super(new StringTextComponent("")); + super(new TextComponent("")); this.categoryPages = 0; this.widgets = Lists.newArrayList(); Window window = MinecraftClient.getInstance().window; @@ -129,7 +129,7 @@ public class RecipeViewingScreen extends Screen { this.bounds = new Rectangle(width / 2 - guiWidth / 2, height / 2 - guiHeight / 2, guiWidth, guiHeight); this.page = MathHelper.clamp(page, 0, getTotalPages(selectedCategory) - 1); - widgets.add(categoryBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 5, 12, 12, new TranslatableTextComponent("text.rei.left_arrow")) { + widgets.add(categoryBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 5, 12, 12, new TranslatableComponent("text.rei.left_arrow")) { @Override public void onPressed() { int currentCategoryIndex = categories.indexOf(selectedCategory); @@ -165,7 +165,7 @@ public class RecipeViewingScreen extends Screen { ClientHelper.getInstance().executeViewAllRecipesKeyBind(); } }); - widgets.add(categoryNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 5, 12, 12, new TranslatableTextComponent("text.rei.right_arrow")) { + widgets.add(categoryNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 5, 12, 12, new TranslatableComponent("text.rei.right_arrow")) { @Override public void onPressed() { int currentCategoryIndex = categories.indexOf(selectedCategory); @@ -186,7 +186,7 @@ public class RecipeViewingScreen extends Screen { categoryBack.enabled = categories.size() > 1; categoryNext.enabled = categories.size() > 1; - widgets.add(recipeBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 21, 12, 12, new TranslatableTextComponent("text.rei.left_arrow")) { + widgets.add(recipeBack = new ButtonWidget((int) bounds.getX() + 5, (int) bounds.getY() + 21, 12, 12, new TranslatableComponent("text.rei.left_arrow")) { @Override public void onPressed() { page--; @@ -219,7 +219,7 @@ public class RecipeViewingScreen extends Screen { RecipeViewingScreen.this.init(); } }); - widgets.add(recipeNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 21, 12, 12, new TranslatableTextComponent("text.rei.right_arrow")) { + widgets.add(recipeNext = new ButtonWidget((int) bounds.getMaxX() - 17, (int) bounds.getY() + 21, 12, 12, new TranslatableComponent("text.rei.right_arrow")) { @Override public void onPressed() { page++; diff --git a/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java index 9d04b9168..2cf4990a3 100644 --- a/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java +++ b/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java @@ -9,19 +9,20 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.mojang.blaze3d.platform.GlStateManager; import com.zeitheron.hammercore.client.utils.Scissors; +import me.shedaniel.cloth.api.ClientUtils; import me.shedaniel.rei.api.*; import me.shedaniel.rei.client.ScreenHelper; import me.shedaniel.rei.gui.renderables.RecipeRenderer; import me.shedaniel.rei.gui.widget.*; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.gui.Element; import net.minecraft.client.gui.Screen; import net.minecraft.client.render.GuiLighting; import net.minecraft.client.resource.language.I18n; +import net.minecraft.client.sound.PositionedSoundInstance; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.sound.SoundEvents; -import net.minecraft.text.StringTextComponent; -import net.minecraft.text.TranslatableTextComponent; import net.minecraft.util.math.MathHelper; import org.lwjgl.BufferUtils; import org.lwjgl.glfw.GLFW; @@ -51,7 +52,7 @@ public class VillagerRecipeViewingScreen extends Screen { private int tabsPage; public VillagerRecipeViewingScreen(Map> map) { - super(new StringTextComponent("")); + super(new TextComponent("")); this.widgets = Lists.newArrayList(); this.categoryMap = Maps.newLinkedHashMap(); this.selectedCategoryIndex = 0; @@ -140,7 +141,7 @@ public class VillagerRecipeViewingScreen extends Screen { } } ButtonWidget w, w2; - this.widgets.add(w = new ButtonWidget(bounds.x + 2, bounds.y - 16, 10, 10, new TranslatableTextComponent("text.rei.left_arrow")) { + this.widgets.add(w = new ButtonWidget(bounds.x + 2, bounds.y - 16, 10, 10, new TranslatableComponent("text.rei.left_arrow")) { @Override public void onPressed() { tabsPage--; @@ -149,7 +150,7 @@ public class VillagerRecipeViewingScreen extends Screen { VillagerRecipeViewingScreen.this.init(); } }); - this.widgets.add(w2 = new ButtonWidget(bounds.x + bounds.width - 12, bounds.y - 16, 10, 10, new TranslatableTextComponent("text.rei.right_arrow")) { + this.widgets.add(w2 = new ButtonWidget(bounds.x + bounds.width - 12, bounds.y - 16, 10, 10, new TranslatableComponent("text.rei.right_arrow")) { @Override public void onPressed() { tabsPage++; @@ -206,6 +207,24 @@ public class VillagerRecipeViewingScreen extends Screen { scroll = MathHelper.clamp(scroll, 0, height - scrollListBounds.height + 2); return true; } + for(Element listener : children()) + if (listener.mouseScrolled(double_1, double_2, double_3)) + return true; + if (bounds.contains(ClientUtils.getMouseLocation())) { + if (double_3 < 0 && categoryMap.get(categories.get(selectedCategoryIndex)).size() > 1) { + selectedCategoryIndex++; + if (selectedCategoryIndex >= categoryMap.get(categories.get(selectedCategoryIndex)).size()) + selectedCategoryIndex = 0; + init(); + return true; + } else if (categoryMap.get(categories.get(selectedCategoryIndex)).size() > 1) { + selectedCategoryIndex--; + if (selectedCategoryIndex < 0) + selectedCategoryIndex = categoryMap.get(categories.get(selectedCategoryIndex)).size() - 1; + init(); + return true; + } + } return super.mouseScrolled(double_1, double_2, double_3); } diff --git a/src/main/java/me/shedaniel/rei/gui/credits/CreditsEntryListWidget.java b/src/main/java/me/shedaniel/rei/gui/credits/CreditsEntryListWidget.java index 435ae8983..440971a37 100644 --- a/src/main/java/me/shedaniel/rei/gui/credits/CreditsEntryListWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/credits/CreditsEntryListWidget.java @@ -7,7 +7,7 @@ package me.shedaniel.rei.gui.credits; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.menu.AlwaysSelectedEntryListWidget; -import net.minecraft.text.TextComponent; +import net.minecraft.network.chat.Component; public class CreditsEntryListWidget extends AlwaysSelectedEntryListWidget { @@ -40,7 +40,7 @@ public class CreditsEntryListWidget extends AlwaysSelectedEntryListWidget { private String text; - public CreditsItem(TextComponent textComponent) { + public CreditsItem(Component textComponent) { this(textComponent.getFormattedText()); } diff --git a/src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java b/src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java index f0b0eac8c..e8371e9f8 100644 --- a/src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java +++ b/src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java @@ -11,7 +11,7 @@ import me.shedaniel.rei.gui.widget.ButtonWidget; import net.minecraft.client.gui.ContainerScreen; import net.minecraft.client.gui.Screen; import net.minecraft.client.resource.language.I18n; -import net.minecraft.text.StringTextComponent; +import net.minecraft.network.chat.TextComponent; public class CreditsScreen extends Screen { @@ -20,7 +20,7 @@ public class CreditsScreen extends Screen { private CreditsEntryListWidget entryListWidget; public CreditsScreen(Screen parent) { - super(new StringTextComponent("")); + super(new TextComponent("")); this.parent = parent; } @@ -40,8 +40,8 @@ public class CreditsScreen extends Screen { children.add(entryListWidget = new CreditsEntryListWidget(minecraft, width, height, 32, height - 32, 12)); entryListWidget.creditsClearEntries(); for(String line : I18n.translate("text.rei.credit.text").split("\n")) - entryListWidget.creditsAddEntry(new CreditsItem(new StringTextComponent(line))); - entryListWidget.creditsAddEntry(new CreditsItem(new StringTextComponent(""))); + entryListWidget.creditsAddEntry(new CreditsItem(new TextComponent(line))); + entryListWidget.creditsAddEntry(new CreditsItem(new TextComponent(""))); children.add(buttonDone = new ButtonWidget(width / 2 - 100, height - 26, 200, 20, I18n.translate("gui.done")) { @Override public void onPressed() { diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java index bfc2f948f..28b03775c 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java @@ -7,10 +7,10 @@ package me.shedaniel.rei.gui.widget; import com.mojang.blaze3d.platform.GlStateManager; import me.shedaniel.rei.client.ScreenHelper; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.gui.Element; +import net.minecraft.client.sound.PositionedSoundInstance; +import net.minecraft.network.chat.Component; import net.minecraft.sound.SoundEvents; -import net.minecraft.text.TextComponent; import net.minecraft.util.Identifier; import net.minecraft.util.math.MathHelper; @@ -27,7 +27,7 @@ public abstract class ButtonWidget extends HighlightableWidget { public boolean focused; private Rectangle bounds; - public ButtonWidget(Rectangle rectangle, TextComponent text) { + public ButtonWidget(Rectangle rectangle, Component text) { this(rectangle, text.getFormattedText()); } @@ -41,7 +41,7 @@ public abstract class ButtonWidget extends HighlightableWidget { this(new Rectangle(x, y, width, height), text); } - public ButtonWidget(int x, int y, int width, int height, TextComponent text) { + public ButtonWidget(int x, int y, int width, int height, Component text) { this(new Rectangle(x, y, width, height), text); } diff --git a/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java index 02f8cfbd1..b803ff0a9 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java @@ -5,7 +5,7 @@ package me.shedaniel.rei.gui.widget; -import net.minecraft.text.TextComponent; +import net.minecraft.network.chat.Component; import java.awt.*; @@ -13,7 +13,7 @@ public class DetailedButtonWidget extends ButtonWidget { private DetailedButtonWidget.PressAction pressAction; - public DetailedButtonWidget(Rectangle rectangle, TextComponent text, PressAction pressAction) { + public DetailedButtonWidget(Rectangle rectangle, Component text, PressAction pressAction) { super(rectangle, text); this.pressAction = pressAction; } @@ -28,7 +28,7 @@ public class DetailedButtonWidget extends ButtonWidget { this.pressAction = pressAction; } - public DetailedButtonWidget(int x, int y, int width, int height, TextComponent text, PressAction pressAction) { + public DetailedButtonWidget(int x, int y, int width, int height, Component text, PressAction pressAction) { super(x, y, width, height, text); this.pressAction = pressAction; } diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java b/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java index 83457b659..f43132874 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java @@ -23,7 +23,7 @@ import net.minecraft.client.resource.language.I18n; import net.minecraft.item.Item; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; -import net.minecraft.text.TextComponent; +import net.minecraft.network.chat.Component; import net.minecraft.util.ActionResult; import net.minecraft.util.math.MathHelper; import net.minecraft.util.registry.Registry; @@ -73,7 +73,7 @@ public class ItemListOverlay extends Widget { public static List tryGetItemStackToolTip(ItemStack itemStack, boolean careAboutAdvanced) { if (!searchBlacklisted.contains(itemStack.getItem())) try { - return itemStack.getTooltipText(MinecraftClient.getInstance().player, MinecraftClient.getInstance().options.advancedItemTooltips && careAboutAdvanced ? TooltipContext.Default.ADVANCED : TooltipContext.Default.NORMAL).stream().map(TextComponent::getFormattedText).collect(Collectors.toList()); + return itemStack.getTooltipText(MinecraftClient.getInstance().player, MinecraftClient.getInstance().options.advancedItemTooltips && careAboutAdvanced ? TooltipContext.Default.ADVANCED : TooltipContext.Default.NORMAL).stream().map(Component::getFormattedText).collect(Collectors.toList()); } catch (Throwable e) { e.printStackTrace(); searchBlacklisted.add(itemStack.getItem()); @@ -238,7 +238,8 @@ public class ItemListOverlay extends Widget { } if (arguments.length > 0) lastSearchArgument.add(arguments); - else lastSearchArgument.add(new SearchArgument[]{SearchArgument.ALWAYS}); + else + lastSearchArgument.add(new SearchArgument[]{SearchArgument.ALWAYS}); }); os.stream().filter(itemStack -> filterItem(itemStack, lastSearchArgument)).forEachOrdered(stacks::add); List workingItems = RoughlyEnoughItemsCore.getConfigManager().isCraftableOnlyEnabled() && !stacks.isEmpty() && !inventoryItems.isEmpty() ? Lists.newArrayList() : Lists.newArrayList(ol); diff --git a/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java index f5442eb14..7291de999 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java @@ -6,8 +6,8 @@ package me.shedaniel.rei.gui.widget; import com.mojang.blaze3d.platform.GlStateManager; -import net.minecraft.client.audio.PositionedSoundInstance; import net.minecraft.client.render.GuiLighting; +import net.minecraft.client.sound.PositionedSoundInstance; import net.minecraft.sound.SoundEvents; public class SearchFieldWidget extends TextFieldWidget { diff --git a/src/main/java/me/shedaniel/rei/mixin/MixinBrewingRecipeRegistry.java b/src/main/java/me/shedaniel/rei/mixin/MixinBrewingRecipeRegistry.java index 5706210a1..e7644c0ca 100644 --- a/src/main/java/me/shedaniel/rei/mixin/MixinBrewingRecipeRegistry.java +++ b/src/main/java/me/shedaniel/rei/mixin/MixinBrewingRecipeRegistry.java @@ -10,7 +10,7 @@ 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.item.ItemProvider; +import net.minecraft.item.ItemConvertible; import net.minecraft.item.PotionItem; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionUtil; @@ -34,13 +34,13 @@ public class MixinBrewingRecipeRegistry { @Inject(method = "registerPotionType", at = @At("RETURN")) private static void method_8080(Item item_1, CallbackInfo ci) { if (item_1 instanceof PotionItem) - SELF_POTION_TYPES.add(Ingredient.ofItems(new ItemProvider[]{item_1})); + SELF_POTION_TYPES.add(Ingredient.ofItems(new ItemConvertible[]{item_1})); } @Inject(method = "registerItemRecipe", at = @At("RETURN")) private static void method_8071(Item item_1, Item item_2, Item item_3, CallbackInfo ci) { if (item_1 instanceof PotionItem && item_3 instanceof PotionItem) - SELF_ITEM_RECIPES.add(new BrewingRecipe(item_1, Ingredient.ofItems(new ItemProvider[]{item_2}), item_3)); + SELF_ITEM_RECIPES.add(new BrewingRecipe(item_1, Ingredient.ofItems(new ItemConvertible[]{item_2}), item_3)); } @Inject(method = "registerPotionRecipe", at = @At("RETURN")) @@ -50,7 +50,7 @@ public class MixinBrewingRecipeRegistry { if (!REGISTERED_POTION_TYPES.contains(potion_2)) rei_registerPotionType(potion_2); SELF_POTION_TYPES.stream().map(Ingredient::getStackArray).forEach(itemStacks -> Arrays.stream(itemStacks).forEach(stack -> { - DefaultPlugin.registerBrewingDisplay(new DefaultBrewingDisplay(PotionUtil.setPotion(stack.copy(), potion_1), Ingredient.ofItems(new ItemProvider[]{item_1}), PotionUtil.setPotion(stack.copy(), potion_2))); + DefaultPlugin.registerBrewingDisplay(new DefaultBrewingDisplay(PotionUtil.setPotion(stack.copy(), potion_1), Ingredient.ofItems(new ItemConvertible[]{item_1}), PotionUtil.setPotion(stack.copy(), potion_2))); })); } diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingCategory.java b/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingCategory.java index 59177de1e..3ae946fee 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingCategory.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultBlastingCategory.java @@ -8,9 +8,10 @@ package me.shedaniel.rei.plugin; import com.mojang.blaze3d.platform.GlStateManager; import me.shedaniel.rei.api.RecipeCategory; import me.shedaniel.rei.api.Renderable; +import me.shedaniel.rei.api.Renderer; import me.shedaniel.rei.gui.renderables.RecipeRenderer; -import me.shedaniel.rei.gui.widget.SlotWidget; import me.shedaniel.rei.gui.widget.RecipeBaseWidget; +import me.shedaniel.rei.gui.widget.SlotWidget; import me.shedaniel.rei.gui.widget.Widget; import net.minecraft.block.Blocks; import net.minecraft.client.MinecraftClient; @@ -36,8 +37,8 @@ public class DefaultBlastingCategory implements RecipeCategory