From 3b233ed80761e29409f16b30e8c8082334e07ca6 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Sat, 23 Apr 2022 02:00:04 +0800 Subject: Update to 22w16b --- .../rei/RoughlyEnoughItemsCoreClient.java | 9 ++-- .../shedaniel/rei/RoughlyEnoughItemsNetwork.java | 14 +++--- .../rei/impl/client/ClientHelperImpl.java | 4 +- .../rei/impl/client/config/ConfigManagerImpl.java | 42 ++++++++-------- .../config/entries/FilteringAddRuleScreen.java | 6 +-- .../impl/client/config/entries/FilteringEntry.java | 4 +- .../config/entries/FilteringRuleOptionsScreen.java | 7 +-- .../config/entries/FilteringRulesScreen.java | 10 ++-- .../client/config/entries/FilteringScreen.java | 14 +++--- .../client/config/entries/NoFilteringEntry.java | 4 +- .../config/entries/RecipeScreenTypeEntry.java | 3 +- .../client/config/entries/ReloadPluginsEntry.java | 6 +-- .../SearchFilterSyntaxHighlightingEntry.java | 3 +- .../entry/filtering/rules/ManualFilteringRule.java | 5 +- .../entry/filtering/rules/SearchFilteringRule.java | 15 ++---- .../rei/impl/client/gui/ScreenOverlayImpl.java | 57 ++++++++++------------ .../impl/client/gui/changelog/ChangelogLoader.java | 9 ++-- .../gui/changelog/JParseDownToMinecraft.java | 19 ++++---- .../client/gui/credits/CreditsEntryListWidget.java | 3 +- .../rei/impl/client/gui/credits/CreditsScreen.java | 27 +++++----- .../client/gui/error/ErrorsEntryListWidget.java | 8 +-- .../rei/impl/client/gui/error/ErrorsScreen.java | 7 ++- .../rei/impl/client/gui/modules/Menu.java | 6 +-- .../client/gui/modules/entries/SubMenuEntry.java | 3 +- .../gui/modules/entries/SubSubsetsMenuEntry.java | 3 +- .../client/gui/performance/PerformanceScreen.java | 14 +++--- .../gui/performance/entry/PerformanceEntry.java | 4 +- .../gui/screen/CompositeDisplayViewingScreen.java | 19 ++++---- .../gui/screen/DefaultDisplayViewingScreen.java | 41 ++++++++-------- .../gui/screen/UncertainDisplayViewingScreen.java | 28 +++++------ .../client/gui/screen/WarningAndErrorScreen.java | 17 +++---- .../client/gui/widget/AutoCraftingEvaluator.java | 16 +++--- .../client/gui/widget/CatchingExceptionUtils.java | 14 +++--- .../gui/widget/DefaultDisplayChoosePageWidget.java | 6 +-- .../widget/DynamicErrorFreeEntryListWidget.java | 10 ++-- .../impl/client/gui/widget/EntryListWidget.java | 8 ++- .../rei/impl/client/gui/widget/EntryWidget.java | 9 ++-- .../client/gui/widget/FavoritesListWidget.java | 12 ++--- .../impl/client/gui/widget/InternalWidgets.java | 3 +- .../rei/impl/client/gui/widget/TabWidget.java | 3 +- .../basewidgets/TexturedDrawableConsumer.java | 2 +- .../gui/widget/search/OverlaySearchField.java | 2 +- .../entry/type/types/BuiltinEntryDefinition.java | 3 +- .../autocrafting/DefaultCategoryHandler.java | 6 +-- .../plugin/client/entry/FluidEntryDefinition.java | 5 +- .../plugin/client/entry/ItemEntryDefinition.java | 5 +- .../client/runtime/DefaultClientRuntimePlugin.java | 4 +- .../runtime/PluginStageExecutionWatcher.java | 8 ++- .../client/runtime/SearchBarHighlightWatcher.java | 5 +- .../client/runtime/SearchFilterPrepareWatcher.java | 5 +- 50 files changed, 241 insertions(+), 296 deletions(-) (limited to 'runtime/src') diff --git a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java index 775b29d9e..5c32d389b 100644 --- a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java +++ b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java @@ -54,7 +54,6 @@ import me.shedaniel.rei.api.common.plugins.PluginView; import me.shedaniel.rei.api.common.registry.ReloadStage; import me.shedaniel.rei.api.common.util.CollectionUtils; import me.shedaniel.rei.api.common.util.EntryStacks; -import me.shedaniel.rei.api.common.util.ImmutableTextComponent; import me.shedaniel.rei.impl.ClientInternals; import me.shedaniel.rei.impl.client.REIRuntimeImpl; import me.shedaniel.rei.impl.client.config.ConfigManagerImpl; @@ -90,8 +89,6 @@ import net.minecraft.client.gui.screens.recipebook.RecipeBookComponent; import net.minecraft.client.resources.language.I18n; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.InteractionResult; import net.minecraft.world.inventory.CraftingMenu; @@ -154,8 +151,8 @@ public class RoughlyEnoughItemsCoreClient { Component collect = CollectionUtils.mapAndJoinToComponent(categories, identifier -> CategoryRegistry.getInstance().tryGet(identifier) .map(config -> config.getCategory().getTitle()) - .orElse(new ImmutableTextComponent(identifier.toString())), new ImmutableTextComponent(", ")); - return new Component[]{new TranslatableComponent("text.rei.view_recipes_for", collect)}; + .orElse(Component.literal(identifier.toString())), Component.literal(", ")); + return new Component[]{Component.translatable("text.rei.view_recipes_for", collect)}; } return null; @@ -243,7 +240,7 @@ public class RoughlyEnoughItemsCoreClient { ItemStack stack = buf.readItem(); String player = buf.readUtf(32767); if (client.player != null) { - client.player.displayClientMessage(new TextComponent(I18n.get("text.rei.cheat_items").replaceAll("\\{item_name}", EntryStacks.of(stack.copy()).asFormattedText().getString()).replaceAll("\\{item_count}", stack.copy().getCount() + "").replaceAll("\\{player_name}", player)), false); + client.player.displayClientMessage(Component.literal(I18n.get("text.rei.cheat_items").replaceAll("\\{item_name}", EntryStacks.of(stack.copy()).asFormattedText().getString()).replaceAll("\\{item_count}", stack.copy().getCount() + "").replaceAll("\\{player_name}", player)), false); } }); NetworkManager.registerReceiver(NetworkManager.s2c(), RoughlyEnoughItemsNetwork.NOT_ENOUGH_ITEMS_PACKET, (buf, context) -> { diff --git a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java index ebc3df9c0..a2b7cd9b6 100644 --- a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java +++ b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java @@ -32,7 +32,7 @@ import me.shedaniel.rei.impl.common.transfer.InputSlotCrafter; import net.minecraft.ChatFormatting; import net.minecraft.Util; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; @@ -56,7 +56,7 @@ public class RoughlyEnoughItemsNetwork { NetworkManager.registerReceiver(NetworkManager.c2s(), DELETE_ITEMS_PACKET, Collections.singletonList(new SplitPacketTransformer()), (buf, context) -> { ServerPlayer player = (ServerPlayer) context.getPlayer(); if (player.getServer().getProfilePermissions(player.getGameProfile()) < player.getServer().getOperatorUserPermissionLevel()) { - player.displayClientMessage(new TranslatableComponent("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); + player.displayClientMessage(Component.translatable("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); return; } AbstractContainerMenu menu = player.containerMenu; @@ -68,20 +68,20 @@ public class RoughlyEnoughItemsNetwork { NetworkManager.registerReceiver(NetworkManager.c2s(), CREATE_ITEMS_PACKET, Collections.singletonList(new SplitPacketTransformer()), (buf, context) -> { ServerPlayer player = (ServerPlayer) context.getPlayer(); if (player.getServer().getProfilePermissions(player.getGameProfile()) < player.getServer().getOperatorUserPermissionLevel()) { - player.displayClientMessage(new TranslatableComponent("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); + player.displayClientMessage(Component.translatable("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); return; } ItemStack stack = buf.readItem(); if (player.getInventory().add(stack.copy())) { NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, new FriendlyByteBuf(Unpooled.buffer()).writeItem(stack.copy()).writeUtf(player.getScoreboardName(), 32767)); } else { - player.displayClientMessage(new TranslatableComponent("text.rei.failed_cheat_items"), false); + player.displayClientMessage(Component.translatable("text.rei.failed_cheat_items"), false); } }); NetworkManager.registerReceiver(NetworkManager.c2s(), CREATE_ITEMS_GRAB_PACKET, Collections.singletonList(new SplitPacketTransformer()), (buf, context) -> { ServerPlayer player = (ServerPlayer) context.getPlayer(); if (player.getServer().getProfilePermissions(player.getGameProfile()) < player.getServer().getOperatorUserPermissionLevel()) { - player.displayClientMessage(new TranslatableComponent("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); + player.displayClientMessage(Component.translatable("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false); return; } @@ -121,9 +121,9 @@ public class RoughlyEnoughItemsNetwork { } NetworkManager.sendToPlayer(player, NOT_ENOUGH_ITEMS_PACKET, buf);*/ } catch (IllegalStateException e) { - player.sendMessage(new TranslatableComponent(e.getMessage()).withStyle(ChatFormatting.RED), Util.NIL_UUID); + player.sendMessage(Component.translatable(e.getMessage()).withStyle(ChatFormatting.RED), Util.NIL_UUID); } catch (Exception e) { - player.sendMessage(new TranslatableComponent("error.rei.internal.error", e.getMessage()).withStyle(ChatFormatting.RED), Util.NIL_UUID); + player.sendMessage(Component.translatable("error.rei.internal.error", e.getMessage()).withStyle(ChatFormatting.RED), Util.NIL_UUID); e.printStackTrace(); } } catch (Exception e) { diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java index 09d43c2a1..2e476749c 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java @@ -59,7 +59,7 @@ import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen; import net.minecraft.client.gui.screens.inventory.CreativeModeInventoryScreen; import net.minecraft.core.NonNullList; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.LazyLoadedValue; import net.minecraft.util.Mth; @@ -218,7 +218,7 @@ public class ClientHelperImpl implements ClientHelper { String madeUpCommand = og.replaceAll("\\{player_name}", Minecraft.getInstance().player.getScoreboardName()).replaceAll("\\{item_name}", identifier.getPath()).replaceAll("\\{item_identifier}", identifier.toString()).replaceAll("\\{nbt}", tagMessage).replaceAll("\\{count}", String.valueOf(cheatedStack.getCount())); if (madeUpCommand.length() > 256) { madeUpCommand = og.replaceAll("\\{player_name}", Minecraft.getInstance().player.getScoreboardName()).replaceAll("\\{item_name}", identifier.getPath()).replaceAll("\\{item_identifier}", identifier.toString()).replaceAll("\\{nbt}", "").replaceAll("\\{count}", String.valueOf(cheatedStack.getCount())); - Minecraft.getInstance().player.displayClientMessage(new TranslatableComponent("text.rei.too_long_nbt"), false); + Minecraft.getInstance().player.displayClientMessage(Component.translatable("text.rei.too_long_nbt"), false); } Minecraft.getInstance().player.chat(madeUpCommand); return true; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigManagerImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigManagerImpl.java index 2d82a28c8..d7cccd915 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigManagerImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigManagerImpl.java @@ -58,7 +58,6 @@ import me.shedaniel.rei.api.client.overlay.ScreenOverlay; import me.shedaniel.rei.api.client.registry.entry.EntryRegistry; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.util.CollectionUtils; -import me.shedaniel.rei.api.common.util.ImmutableTextComponent; import me.shedaniel.rei.impl.client.REIRuntimeImpl; import me.shedaniel.rei.impl.client.config.entries.*; import me.shedaniel.rei.impl.client.entry.filtering.FilteringRule; @@ -77,7 +76,10 @@ import net.minecraft.client.gui.screens.Screen; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.nbt.TagParser; -import net.minecraft.network.chat.*; +import net.minecraft.network.chat.ClickEvent; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.HoverEvent; +import net.minecraft.network.chat.TextColor; import net.minecraft.util.Mth; import net.minecraft.world.InteractionResult; import org.jetbrains.annotations.ApiStatus; @@ -102,21 +104,21 @@ public class ConfigManagerImpl implements ConfigManager { guiRegistry.registerPredicateProvider((i13n, field, config, defaults, guiProvider) -> { if (field.isAnnotationPresent(ConfigEntry.Gui.Excluded.class)) return Collections.emptyList(); - KeyCodeEntry entry = ConfigEntryBuilder.create().startModifierKeyCodeField(new TranslatableComponent(i13n), getUnsafely(field, config, ModifierKeyCode.unknown())).setModifierDefaultValue(() -> getUnsafely(field, defaults)).setModifierSaveConsumer(newValue -> setUnsafely(field, config, newValue)).build(); + KeyCodeEntry entry = ConfigEntryBuilder.create().startModifierKeyCodeField(Component.translatable(i13n), getUnsafely(field, config, ModifierKeyCode.unknown())).setModifierDefaultValue(() -> getUnsafely(field, defaults)).setModifierSaveConsumer(newValue -> setUnsafely(field, config, newValue)).build(); return Collections.singletonList(entry); }, field -> field.getType() == ModifierKeyCode.class); guiRegistry.registerAnnotationProvider((i13n, field, config, defaults, guiProvider) -> { ConfigObjectImpl.UsePercentage bounds = field.getAnnotation(ConfigObjectImpl.UsePercentage.class); - return Collections.singletonList(ConfigEntryBuilder.create().startIntSlider(new TranslatableComponent(i13n), Mth.ceil(Utils.getUnsafely(field, config, 0.0) * 100), Mth.ceil(bounds.min() * 100), Mth.ceil(bounds.max() * 100)).setDefaultValue(() -> Mth.ceil((double) Utils.getUnsafely(field, defaults) * 100)).setSaveConsumer((newValue) -> { + return Collections.singletonList(ConfigEntryBuilder.create().startIntSlider(Component.translatable(i13n), Mth.ceil(Utils.getUnsafely(field, config, 0.0) * 100), Mth.ceil(bounds.min() * 100), Mth.ceil(bounds.max() * 100)).setDefaultValue(() -> Mth.ceil((double) Utils.getUnsafely(field, defaults) * 100)).setSaveConsumer((newValue) -> { setUnsafely(field, config, newValue / 100d); - }).setTextGetter(integer -> new TextComponent(bounds.prefix() + String.format("%d%%", integer))).build()); + }).setTextGetter(integer -> Component.literal(bounds.prefix() + String.format("%d%%", integer))).build()); }, (field) -> field.getType() == Double.TYPE || field.getType() == Double.class, ConfigObjectImpl.UsePercentage.class); guiRegistry.registerAnnotationProvider((i13n, field, config, defaults, guiProvider) -> - Collections.singletonList(new RecipeScreenTypeEntry(220, new TranslatableComponent(i13n), getUnsafely(field, config, DisplayScreenType.UNSET), getUnsafely(field, defaults), type -> setUnsafely(field, config, type))) + Collections.singletonList(new RecipeScreenTypeEntry(220, Component.translatable(i13n), getUnsafely(field, config, DisplayScreenType.UNSET), getUnsafely(field, defaults), type -> setUnsafely(field, config, type))) , (field) -> field.getType() == DisplayScreenType.class, ConfigObjectImpl.UseSpecialRecipeTypeScreen.class); guiRegistry.registerAnnotationProvider((i13n, field, config, defaults, guiProvider) -> - Collections.singletonList(new SearchFilterSyntaxHighlightingEntry(new TranslatableComponent(i13n), getUnsafely(field, config, SyntaxHighlightingMode.COLORFUL), getUnsafely(field, defaults), type -> setUnsafely(field, config, type))) + Collections.singletonList(new SearchFilterSyntaxHighlightingEntry(Component.translatable(i13n), getUnsafely(field, config, SyntaxHighlightingMode.COLORFUL), getUnsafely(field, defaults), type -> setUnsafely(field, config, type))) , (field) -> field.getType() == SyntaxHighlightingMode.class, ConfigObjectImpl.UseSpecialSearchFilterSyntaxHighlightingScreen.class); guiRegistry.registerAnnotationProvider((i13n, field, config, defaults, guiProvider) -> { List> value = CollectionUtils.map(Utils.>>getUnsafely(field, config, new ArrayList<>()), EntryStackProvider::provide); @@ -308,7 +310,7 @@ public class ConfigManagerImpl implements ConfigManager { private final int height; public EmptyEntry(int height) { - super(new TextComponent(UUID.randomUUID().toString()), false); + super(Component.literal(UUID.randomUUID().toString()), false); this.height = height; } @@ -353,43 +355,43 @@ public class ConfigManagerImpl implements ConfigManager { builder.setGlobalizedExpanded(false); if (Minecraft.getInstance().getConnection() != null && Minecraft.getInstance().getConnection().getRecipeManager() != null) { TextListEntry feedbackEntry = ConfigEntryBuilder.create().startTextDescription( - new TranslatableComponent("text.rei.feedback", new TranslatableComponent("text.rei.feedback.link") + Component.translatable("text.rei.feedback", Component.translatable("text.rei.feedback.link") .withStyle(style -> style .withColor(TextColor.fromRgb(0xff1fc3ff)) .withUnderlined(true) .withClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://forms.gle/5tdnK5WN1wng78pV8")) - .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ImmutableTextComponent("https://forms.gle/5tdnK5WN1wng78pV8"))) + .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, Component.literal("https://forms.gle/5tdnK5WN1wng78pV8"))) )) .withStyle(ChatFormatting.GRAY) ).build(); - builder.getOrCreateCategory(new TranslatableComponent("config.roughlyenoughitems.advanced")).getEntries().add(0, feedbackEntry); - builder.getOrCreateCategory(new TranslatableComponent("config.roughlyenoughitems.advanced")).getEntries().add(0, new ReloadPluginsEntry(220)); - builder.getOrCreateCategory(new TranslatableComponent("config.roughlyenoughitems.advanced")).getEntries().add(0, new PerformanceEntry(220)); + builder.getOrCreateCategory(Component.translatable("config.roughlyenoughitems.advanced")).getEntries().add(0, feedbackEntry); + builder.getOrCreateCategory(Component.translatable("config.roughlyenoughitems.advanced")).getEntries().add(0, new ReloadPluginsEntry(220)); + builder.getOrCreateCategory(Component.translatable("config.roughlyenoughitems.advanced")).getEntries().add(0, new PerformanceEntry(220)); } return builder.setAfterInitConsumer(screen -> { ((GlobalizedClothConfigScreen) screen).listWidget.children().add(0, (AbstractConfigEntry) new EmptyEntry(4)); TextListEntry supportText = ConfigEntryBuilder.create().startTextDescription( - new TranslatableComponent("text.rei.support.me.desc", - new TranslatableComponent("text.rei.support.me.patreon") + Component.translatable("text.rei.support.me.desc", + Component.translatable("text.rei.support.me.patreon") .withStyle(style -> style .withColor(TextColor.fromRgb(0xff1fc3ff)) .withClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://patreon.com/shedaniel")) - .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ImmutableTextComponent("https://patreon.com/shedaniel"))) + .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, Component.literal("https://patreon.com/shedaniel"))) ), - new TranslatableComponent("text.rei.support.me.bisect") + Component.translatable("text.rei.support.me.bisect") .withStyle(style -> style .withColor(TextColor.fromRgb(0xff1fc3ff)) .withClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://www.bisecthosting.com/shedaniel")) - .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new ImmutableTextComponent("https://www.bisecthosting.com/shedaniel"))) + .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, Component.literal("https://www.bisecthosting.com/shedaniel"))) ) ) .withStyle(ChatFormatting.GRAY) ).build(); supportText.setScreen((AbstractConfigScreen) screen); ((GlobalizedClothConfigScreen) screen).listWidget.children().add(0, (AbstractConfigEntry) supportText); - ((GlobalizedClothConfigScreen) screen).listWidget.children().add(0, (AbstractConfigEntry) new TitleTextEntry(new TranslatableComponent("text.rei.support.me"))); + ((GlobalizedClothConfigScreen) screen).listWidget.children().add(0, (AbstractConfigEntry) new TitleTextEntry(Component.translatable("text.rei.support.me"))); ((GlobalizedClothConfigScreen) screen).listWidget.children().add(0, (AbstractConfigEntry) new EmptyEntry(4)); - ScreenHooks.addRenderableWidget(screen, new Button(screen.width - 104, 4, 100, 20, new TranslatableComponent("text.rei.credits"), button -> { + ScreenHooks.addRenderableWidget(screen, new Button(screen.width - 104, 4, 100, 20, Component.translatable("text.rei.credits"), button -> { CreditsScreen creditsScreen = new CreditsScreen(screen); Minecraft.getInstance().setScreen(creditsScreen); })); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringAddRuleScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringAddRuleScreen.java index 61f16508f..080bbc292 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringAddRuleScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringAddRuleScreen.java @@ -35,8 +35,6 @@ import net.minecraft.client.gui.screens.Screen; import net.minecraft.locale.Language; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.FormattedText; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import java.util.Collections; @@ -50,7 +48,7 @@ public class FilteringAddRuleScreen extends Screen { Screen parent; public FilteringAddRuleScreen(FilteringEntry entry) { - super(new TranslatableComponent("config.roughlyenoughitems.filteringRulesScreen.new")); + super(Component.translatable("config.roughlyenoughitems.filteringRulesScreen.new")); this.entry = entry; } @@ -58,7 +56,7 @@ public class FilteringAddRuleScreen extends Screen { public void init() { super.init(); { - Component backText = new TextComponent("↩ ").append(new TranslatableComponent("gui.back")); + Component backText = Component.literal("↩ ").append(Component.translatable("gui.back")); addRenderableWidget(new Button(4, 4, Minecraft.getInstance().font.width(backText) + 10, 20, backText, button -> { minecraft.setScreen(parent); this.parent = null; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringEntry.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringEntry.java index 403f1e94d..deaeb2484 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringEntry.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringEntry.java @@ -37,7 +37,7 @@ import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.narration.NarratableEntry; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import org.jetbrains.annotations.ApiStatus; import java.util.*; @@ -54,7 +54,7 @@ public class FilteringEntry extends AbstractConfigListEntry>> boolean edited = false; final FilteringScreen filteringScreen = new FilteringScreen(this); final FilteringRulesScreen filteringRulesScreen = new FilteringRulesScreen(this); - private final AbstractWidget buttonWidget = new Button(0, 0, 0, 20, new TranslatableComponent("config.roughlyenoughitems.filteringScreen"), button -> { + private final AbstractWidget buttonWidget = new Button(0, 0, 0, 20, Component.translatable("config.roughlyenoughitems.filteringScreen"), button -> { filteringRulesScreen.parent = Minecraft.getInstance().screen; Minecraft.getInstance().setScreen(filteringRulesScreen); }); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRuleOptionsScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRuleOptionsScreen.java index fac731ecf..86429e437 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRuleOptionsScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRuleOptionsScreen.java @@ -23,8 +23,6 @@ package me.shedaniel.rei.impl.client.config.entries; -import com.google.common.collect.Collections2; -import com.google.common.collect.Lists; import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.PoseStack; import me.shedaniel.clothconfig2.gui.widget.DynamicElementListWidget; @@ -39,7 +37,6 @@ import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.resources.sounds.SimpleSoundInstance; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.FormattedText; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; import net.minecraft.util.FormattedCharSequence; @@ -59,7 +56,7 @@ public abstract class FilteringRuleOptionsScreen> ext public T rule; public FilteringRuleOptionsScreen(FilteringEntry entry, T rule, Screen screen) { - super(new TranslatableComponent("config.roughlyenoughitems.filteringRulesScreen")); + super(Component.translatable("config.roughlyenoughitems.filteringRulesScreen")); this.entry = entry; this.rule = rule; this.parent = screen; @@ -70,7 +67,7 @@ public abstract class FilteringRuleOptionsScreen> ext super.init(); if (rulesList != null) save(); { - Component doneText = new TranslatableComponent("gui.done"); + Component doneText = Component.translatable("gui.done"); int width = Minecraft.getInstance().font.width(doneText); addRenderableWidget(new Button(this.width - 4 - width - 10, 4, width + 10, 20, doneText, button -> { save(); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRulesScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRulesScreen.java index a394d0d21..9e4b311c2 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRulesScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRulesScreen.java @@ -37,8 +37,6 @@ import net.minecraft.client.resources.sounds.SimpleSoundInstance; import net.minecraft.locale.Language; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.FormattedText; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; @@ -55,7 +53,7 @@ public class FilteringRulesScreen extends Screen { Screen parent; public FilteringRulesScreen(FilteringEntry entry) { - super(new TranslatableComponent("config.roughlyenoughitems.filteringRulesScreen")); + super(Component.translatable("config.roughlyenoughitems.filteringRulesScreen")); this.entry = entry; } @@ -63,14 +61,14 @@ public class FilteringRulesScreen extends Screen { public void init() { super.init(); { - Component backText = new TextComponent("↩ ").append(new TranslatableComponent("gui.back")); + Component backText = Component.literal("↩ ").append(Component.translatable("gui.back")); addRenderableWidget(new Button(4, 4, Minecraft.getInstance().font.width(backText) + 10, 20, backText, button -> { minecraft.setScreen(parent); this.parent = null; })); } { - Component addText = new TextComponent(" + "); + Component addText = Component.literal(" + "); addRenderableWidget(new Button(width - 4 - 20, 4, 20, 20, addText, button -> { FilteringAddRuleScreen screen = new FilteringAddRuleScreen(entry); screen.parent = this; @@ -198,7 +196,7 @@ public class FilteringRulesScreen extends Screen { } }; { - Component deleteText = new TranslatableComponent("config.roughlyenoughitems.filteringRulesScreen.delete"); + Component deleteText = Component.translatable("config.roughlyenoughitems.filteringRulesScreen.delete"); deleteButton = new Button(0, 0, Minecraft.getInstance().font.width(deleteText) + 10, 20, deleteText, button -> { final Screen screen = Minecraft.getInstance().screen; entry.edited = true; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java index 5fcd5790e..4abc68318 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java @@ -52,8 +52,6 @@ import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.renderer.GameRenderer; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.util.Mth; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; @@ -106,25 +104,25 @@ public class FilteringScreen extends Screen { private SearchFilter lastFilter = SearchFilter.matchAll(); public FilteringScreen(FilteringEntry filteringEntry) { - super(new TranslatableComponent("config.roughlyenoughitems.filteringScreen")); + super(Component.translatable("config.roughlyenoughitems.filteringScreen")); this.filteringEntry = filteringEntry; this.searchField = new OverlaySearchField(0, 0, 0, 0); { - Component selectAllText = new TranslatableComponent("config.roughlyenoughitems.filteredEntries.selectAll"); + Component selectAllText = Component.translatable("config.roughlyenoughitems.filteredEntries.selectAll"); this.selectAllButton = new Button(0, 0, Minecraft.getInstance().font.width(selectAllText) + 10, 20, selectAllText, button -> { this.selectionPoint = new Point(-Integer.MAX_VALUE / 2, -Integer.MAX_VALUE / 2); this.secondPoint = new Point(Integer.MAX_VALUE / 2, Integer.MAX_VALUE / 2); }); } { - Component selectNoneText = new TranslatableComponent("config.roughlyenoughitems.filteredEntries.selectNone"); + Component selectNoneText = Component.translatable("config.roughlyenoughitems.filteredEntries.selectNone"); this.selectNoneButton = new Button(0, 0, Minecraft.getInstance().font.width(selectNoneText) + 10, 20, selectNoneText, button -> { this.selectionPoint = new Point(Integer.MAX_VALUE, Integer.MAX_VALUE); this.secondPoint = new Point(Integer.MAX_VALUE, Integer.MAX_VALUE); }); } { - Component hideText = new TranslatableComponent("config.roughlyenoughitems.filteredEntries.hide"); + Component hideText = Component.translatable("config.roughlyenoughitems.filteredEntries.hide"); this.hideButton = new Button(0, 0, Minecraft.getInstance().font.width(hideText) + 10, 20, hideText, button -> { for (int i = 0; i < entryStacks.size(); i++) { EntryStack stack = entryStacks.get(i); @@ -139,7 +137,7 @@ public class FilteringScreen extends Screen { }); } { - Component showText = new TranslatableComponent("config.roughlyenoughitems.filteredEntries.show"); + Component showText = Component.translatable("config.roughlyenoughitems.filteredEntries.show"); this.showButton = new Button(0, 0, Minecraft.getInstance().font.width(showText) + 10, 20, showText, button -> { for (int i = 0; i < entryStacks.size(); i++) { EntryStack stack = entryStacks.get(i); @@ -153,7 +151,7 @@ public class FilteringScreen extends Screen { }); } { - Component backText = new TextComponent("↩ ").append(new TranslatableComponent("gui.back")); + Component backText = Component.literal("↩ ").append(Component.translatable("gui.back")); this.backButton = new Button(0, 0, Minecraft.getInstance().font.width(backText) + 10, 20, backText, button -> { minecraft.setScreen(parent); this.parent = null; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/NoFilteringEntry.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/NoFilteringEntry.java index efa88a5ce..8003a3f9c 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/NoFilteringEntry.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/NoFilteringEntry.java @@ -34,7 +34,7 @@ import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.narration.NarratableEntry; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import org.jetbrains.annotations.ApiStatus; import java.util.List; @@ -47,7 +47,7 @@ public class NoFilteringEntry extends AbstractConfigListEntry private Consumer>> saveConsumer; private List> defaultValue; private List> configFiltered; - private final AbstractWidget buttonWidget = new Button(0, 0, 0, 20, new TranslatableComponent("config.roughlyenoughitems.filteredEntries.loadWorldFirst"), button -> {}); + private final AbstractWidget buttonWidget = new Button(0, 0, 0, 20, Component.translatable("config.roughlyenoughitems.filteredEntries.loadWorldFirst"), button -> {}); private final List children = ImmutableList.of(buttonWidget); public NoFilteringEntry(int width, List> configFiltered, List> defaultValue, Consumer>> saveConsumer) { diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/RecipeScreenTypeEntry.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/RecipeScreenTypeEntry.java index bc37f2a35..98060aa30 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/RecipeScreenTypeEntry.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/RecipeScreenTypeEntry.java @@ -36,7 +36,6 @@ import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.narration.NarratableEntry; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import java.util.List; import java.util.Optional; @@ -56,7 +55,7 @@ public class RecipeScreenTypeEntry extends TooltipListEntry { }) { @Override public void render(PoseStack matrices, int mouseX, int mouseY, float delta) { - setMessage(new TranslatableComponent("config.roughlyenoughitems.recipeScreenType.config", type.toString())); + setMessage(Component.translatable("config.roughlyenoughitems.recipeScreenType.config", type.toString())); super.render(matrices, mouseX, mouseY, delta); } }; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ReloadPluginsEntry.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ReloadPluginsEntry.java index 257751431..487b78895 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ReloadPluginsEntry.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ReloadPluginsEntry.java @@ -39,7 +39,7 @@ import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.narration.NarratableEntry; import net.minecraft.client.gui.screens.Screen; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.util.Unit; import org.jetbrains.annotations.ApiStatus; @@ -71,8 +71,8 @@ public class ReloadPluginsEntry extends AbstractConfigListEntry { public ReloadPluginsEntry(int width) { super(NarratorChatListener.NO_TITLE, false); this.width = width; - reloadPluginsButton.setMessage(new TranslatableComponent("text.rei.reload_config")); - reloadSearchButton.setMessage(new TranslatableComponent("text.rei.reload_search")); + reloadPluginsButton.setMessage(Component.translatable("text.rei.reload_config")); + reloadSearchButton.setMessage(Component.translatable("text.rei.reload_search")); } @Override diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/SearchFilterSyntaxHighlightingEntry.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/SearchFilterSyntaxHighlightingEntry.java index 6ed293bd3..1fc3a28bf 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/SearchFilterSyntaxHighlightingEntry.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/SearchFilterSyntaxHighlightingEntry.java @@ -35,7 +35,6 @@ import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.narration.NarratableEntry; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextComponent; import java.util.List; import java.util.Optional; @@ -49,7 +48,7 @@ public class SearchFilterSyntaxHighlightingEntry extends TooltipListEntry {}) { @Override public void render(PoseStack matrices, int mouseX, int mouseY, float delta) { - setMessage(new TextComponent(type.toString())); + setMessage(Component.literal(type.toString())); super.render(matrices, mouseX, mouseY, delta); } }; diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/ManualFilteringRule.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/ManualFilteringRule.java index d960a9834..07320b761 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/ManualFilteringRule.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/ManualFilteringRule.java @@ -37,7 +37,6 @@ import me.shedaniel.rei.impl.client.entry.filtering.FilteringContext; import me.shedaniel.rei.impl.client.entry.filtering.FilteringResult; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import java.util.Collection; import java.util.List; @@ -106,12 +105,12 @@ public class ManualFilteringRule extends AbstractFilteringRule entryConsumer) { addEmpty(entryConsumer, 10); - addText(entryConsumer, new TranslatableComponent("rule.roughlyenoughitems.filtering.search.filter").withStyle(ChatFormatting.GRAY)); + addText(entryConsumer, Component.translatable("rule.roughlyenoughitems.filtering.search.filter").withStyle(ChatFormatting.GRAY)); entryConsumer.accept(entry = new TextFieldRuleEntry(width - 36, rule, widget -> { widget.setMaxLength(9999); widget.setResponder(searchTerm -> { @@ -181,9 +176,9 @@ public class SearchFilteringRule extends AbstractFilteringRule function = bool -> { - return new TranslatableComponent("rule.roughlyenoughitems.filtering.search.show." + bool); + return Component.translatable("rule.roughlyenoughitems.filtering.search.show." + bool); }; entryConsumer.accept(show = new BooleanRuleEntry(width - 36, show == null ? rule.show : show.getBoolean(), rule, function)); addEmpty(entryConsumer, 10); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/ScreenOverlayImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/ScreenOverlayImpl.java index 74c010f83..88fa4eb53 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/ScreenOverlayImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/ScreenOverlayImpl.java @@ -57,7 +57,6 @@ import me.shedaniel.rei.api.client.view.ViewSearchBuilder; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.plugins.PluginManager; import me.shedaniel.rei.api.common.util.EntryStacks; -import me.shedaniel.rei.api.common.util.ImmutableTextComponent; import me.shedaniel.rei.impl.client.ClientHelperImpl; import me.shedaniel.rei.impl.client.REIRuntimeImpl; import me.shedaniel.rei.impl.client.config.ConfigManagerImpl; @@ -82,8 +81,6 @@ import net.minecraft.client.multiplayer.PlayerInfo; import net.minecraft.client.renderer.entity.ItemRenderer; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.InteractionResult; import net.minecraft.world.inventory.Slot; @@ -254,7 +251,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { this.widgets.add(REIRuntimeImpl.getSearchField()); REIRuntimeImpl.getSearchField().setResponder(s -> ENTRY_LIST_WIDGET.updateSearch(s, false)); if (!ConfigObject.getInstance().isEntryListWidgetScrolled()) { - widgets.add(leftButton = Widgets.createButton(new Rectangle(bounds.x, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), new TranslatableComponent("text.rei.left_arrow")) + widgets.add(leftButton = Widgets.createButton(new Rectangle(bounds.x, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), Component.translatable("text.rei.left_arrow")) .onClick(button -> { ENTRY_LIST_WIDGET.previousPage(); if (ENTRY_LIST_WIDGET.getPage() < 0) @@ -262,15 +259,15 @@ public class ScreenOverlayImpl extends ScreenOverlay { ENTRY_LIST_WIDGET.updateEntriesPosition(); }) .containsMousePredicate((button, point) -> button.getBounds().contains(point) && isNotInExclusionZones(point.x, point.y)) - .tooltipLine(new TranslatableComponent("text.rei.previous_page")) + .tooltipLine(Component.translatable("text.rei.previous_page")) .focusable(false)); Button changelogButton; - widgets.add(changelogButton = Widgets.createButton(new Rectangle(bounds.x + bounds.width - 18 - 18, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), new TranslatableComponent("")) + widgets.add(changelogButton = Widgets.createButton(new Rectangle(bounds.x + bounds.width - 18 - 18, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), Component.translatable("")) .onClick(button -> { ChangelogLoader.show(); }) .containsMousePredicate((button, point) -> button.getBounds().contains(point) && isNotInExclusionZones(point.x, point.y)) - .tooltipLine(new TranslatableComponent("text.rei.changelog.title")) + .tooltipLine(Component.translatable("text.rei.changelog.title")) .focusable(false)); widgets.add(Widgets.createDrawableWidget((helper, matrices, mouseX, mouseY, delta) -> { helper.setBlitOffset(helper.getBlitOffset() + 1); @@ -282,7 +279,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { matrices.popPose(); helper.setBlitOffset(helper.getBlitOffset() - 1); })); - widgets.add(rightButton = Widgets.createButton(new Rectangle(bounds.x + bounds.width - 18, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), new TranslatableComponent("text.rei.right_arrow")) + widgets.add(rightButton = Widgets.createButton(new Rectangle(bounds.x + bounds.width - 18, bounds.y + (ConfigObject.getInstance().getSearchFieldLocation() == SearchFieldLocation.TOP_SIDE ? 24 : 0) + 5, 16, 16), Component.translatable("text.rei.right_arrow")) .onClick(button -> { ENTRY_LIST_WIDGET.nextPage(); if (ENTRY_LIST_WIDGET.getPage() >= ENTRY_LIST_WIDGET.getTotalPages()) @@ -290,7 +287,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { ENTRY_LIST_WIDGET.updateEntriesPosition(); }) .containsMousePredicate((button, point) -> button.getBounds().contains(point) && isNotInExclusionZones(point.x, point.y)) - .tooltipLine(new TranslatableComponent("text.rei.next_page")) + .tooltipLine(Component.translatable("text.rei.next_page")) .focusable(false)); } @@ -341,7 +338,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { )); Rectangle subsetsButtonBounds = getSubsetsButtonBounds(); if (ConfigObject.getInstance().isSubsetsEnabled()) { - widgets.add(InternalWidgets.wrapLateRenderable(Widgets.withTranslate(Widgets.createButton(subsetsButtonBounds, ClientHelperImpl.getInstance().isAprilFools.get() ? new TranslatableComponent("text.rei.tiny_potato") : new TranslatableComponent("text.rei.subsets")) + widgets.add(InternalWidgets.wrapLateRenderable(Widgets.withTranslate(Widgets.createButton(subsetsButtonBounds, ClientHelperImpl.getInstance().isAprilFools.get() ? Component.translatable("text.rei.tiny_potato") : Component.translatable("text.rei.subsets")) .onClick(button -> { proceedOpenMenuOrElse(Menu.SUBSETS, () -> { openMenu(Menu.SUBSETS, Menu.createSubsetsMenuFromRegistry(subsetsButtonBounds), point -> true, point -> true); @@ -361,9 +358,9 @@ public class ScreenOverlayImpl extends ScreenOverlay { ENTRY_LIST_WIDGET.updateEntriesPosition(); }, ENTRY_LIST_WIDGET.getPage(), ENTRY_LIST_WIDGET.getTotalPages()); } - }).tooltip(new TranslatableComponent("text.rei.go_back_first_page"), new TextComponent(" "), new TranslatableComponent("text.rei.shift_click_to", new TranslatableComponent("text.rei.choose_page")).withStyle(ChatFormatting.GRAY)).focusable(false).onRender((matrices, label) -> { + }).tooltip(Component.translatable("text.rei.go_back_first_page"), Component.literal(" "), Component.translatable("text.rei.shift_click_to", Component.translatable("text.rei.choose_page")).withStyle(ChatFormatting.GRAY)).focusable(false).onRender((matrices, label) -> { label.setClickable(ENTRY_LIST_WIDGET.getTotalPages() > 1); - label.setMessage(new TextComponent(String.format("%s/%s", ENTRY_LIST_WIDGET.getPage() + 1, Math.max(ENTRY_LIST_WIDGET.getTotalPages(), 1)))); + label.setMessage(Component.literal(String.format("%s/%s", ENTRY_LIST_WIDGET.getPage() + 1, Math.max(ENTRY_LIST_WIDGET.getTotalPages(), 1)))); }).rainbow(new Random().nextFloat() < 1.0E-4D || ClientHelperImpl.getInstance().isAprilFools.get())); } if (ConfigObject.getInstance().isCraftableFilterEnabled()) { @@ -379,7 +376,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { }) .onRender((matrices, button) -> button.setTint(ConfigManager.getInstance().isCraftableOnlyEnabled() ? 939579655 : 956235776)) .containsMousePredicate((button, point) -> button.getBounds().contains(point) && isNotInExclusionZones(point.x, point.y)) - .tooltipLineSupplier(button -> new TranslatableComponent(ConfigManager.getInstance().isCraftableOnlyEnabled() ? "text.rei.showing_craftable" : "text.rei.showing_all")), + .tooltipLineSupplier(button -> Component.translatable(ConfigManager.getInstance().isCraftableOnlyEnabled() ? "text.rei.showing_craftable" : "text.rei.showing_all")), Widgets.createDrawableWidget((helper, matrices, mouseX, mouseY, delta) -> { Vector4f vector = new Vector4f(area.x + 2, area.y + 2, helper.getBlitOffset() - 10, 1.0F); vector.transform(matrices.last().pose()); @@ -396,37 +393,37 @@ public class ScreenOverlayImpl extends ScreenOverlay { private Collection provideConfigButtonMenu() { ConfigObjectImpl config = ConfigManagerImpl.getInstance().getConfig(); return Arrays.asList( - ToggleMenuEntry.of(new TranslatableComponent("text.rei.cheating"), + ToggleMenuEntry.of(Component.translatable("text.rei.cheating"), config::isCheating, config::setCheating ), new EmptyMenuEntry(4), new TextMenuEntry(() -> { if (!ClientHelper.getInstance().isCheating()) - return new TranslatableComponent("text.rei.cheating_disabled"); + return Component.translatable("text.rei.cheating_disabled"); else if (!ClientHelperImpl.getInstance().hasOperatorPermission()) { if (minecraft.gameMode.hasInfiniteItems()) - return new TranslatableComponent("text.rei.cheating_limited_creative_enabled"); - else return new TranslatableComponent("text.rei.cheating_enabled_no_perms"); + return Component.translatable("text.rei.cheating_limited_creative_enabled"); + else return Component.translatable("text.rei.cheating_enabled_no_perms"); } else if (ClientHelperImpl.getInstance().hasPermissionToUsePackets()) - return new TranslatableComponent("text.rei.cheating_enabled"); + return Component.translatable("text.rei.cheating_enabled"); else - return new TranslatableComponent("text.rei.cheating_limited_enabled"); + return Component.translatable("text.rei.cheating_limited_enabled"); }), new SeparatorMenuEntry(), - ToggleMenuEntry.ofDeciding(new TranslatableComponent("text.rei.config.menu.dark_theme"), + ToggleMenuEntry.ofDeciding(Component.translatable("text.rei.config.menu.dark_theme"), config::isUsingDarkTheme, dark -> { config.setUsingDarkTheme(dark); return false; } ), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.craftable_filter"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.craftable_filter"), config::isCraftableFilterEnabled, config::setCraftableFilterEnabled ), - new SubMenuEntry(new TranslatableComponent("text.rei.config.menu.display"), Arrays.asList( - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.remove_recipe_book"), + new SubMenuEntry(Component.translatable("text.rei.config.menu.display"), Arrays.asList( + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.remove_recipe_book"), config::doesDisableRecipeBook, disableRecipeBook -> { config.setDisableRecipeBook(disableRecipeBook); @@ -437,7 +434,7 @@ public class ScreenOverlayImpl extends ScreenOverlay { } } ), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.left_side_mob_effects"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.left_side_mob_effects"), config::isLeftSideMobEffects, disableRecipeBook -> { config.setLeftSideMobEffects(disableRecipeBook); @@ -448,31 +445,31 @@ public class ScreenOverlayImpl extends ScreenOverlay { } } ), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.left_side_panel"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.left_side_panel"), config::isLeftHandSidePanel, bool -> config.setDisplayPanelLocation(bool ? DisplayPanelLocation.LEFT : DisplayPanelLocation.RIGHT) ), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.scrolling_side_panel"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.scrolling_side_panel"), config::isEntryListWidgetScrolled, config::setEntryListWidgetScrolled ), new SeparatorMenuEntry(), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.caching_entry_rendering"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.caching_entry_rendering"), config::doesCacheEntryRendering, config::setDoesCacheEntryRendering ), new SeparatorMenuEntry(), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.side_search_field"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.side_search_field"), () -> config.getSearchFieldLocation() != SearchFieldLocation.CENTER, bool -> config.setSearchFieldLocation(bool ? SearchFieldLocation.BOTTOM_SIDE : SearchFieldLocation.CENTER) ), - ToggleMenuEntry.of(new TranslatableComponent("text.rei.config.menu.display.syntax_highlighting"), + ToggleMenuEntry.of(Component.translatable("text.rei.config.menu.display.syntax_highlighting"), () -> config.getSyntaxHighlightingMode() == SyntaxHighlightingMode.COLORFUL || config.getSyntaxHighlightingMode() == SyntaxHighlightingMode.COLORFUL_UNDERSCORED, bool -> config.setSyntaxHighlightingMode(bool ? SyntaxHighlightingMode.COLORFUL : SyntaxHighlightingMode.PLAIN_UNDERSCORED) ) )), new SeparatorMenuEntry(), - ToggleMenuEntry.ofDeciding(new TranslatableComponent("text.rei.config.menu.config"), + ToggleMenuEntry.ofDeciding(Component.translatable("text.rei.config.menu.config"), () -> false, $ -> { ConfigManager.getI