aboutsummaryrefslogtreecommitdiff
path: root/runtime/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/src/main/java')
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java12
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java24
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java15
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/addon/ConfigAddonsScreen.java13
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ConfigureCategoriesScreen.java15
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringAddRuleScreen.java15
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringRulesScreen.java15
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java27
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/entry/type/types/RenderingEntryDefinition.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/favorites/DelegatingFavoriteEntryProviderImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/InternalTextures.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/RecipeDisplayExporter.java12
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/REIConfigScreen.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/config/components/ConfigCategoryEntryWidget.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsEntryListWidget.java9
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java9
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/error/ErrorsEntryListWidget.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/error/ErrorsScreen.java13
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/performance/PerformanceScreen.java11
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/AbstractDisplayViewingScreen.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/ConfigReloadingScreen.java19
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/SearchFilterSyntaxHighlightingScreen.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/UncertainDisplayViewingScreen.java17
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/WarningAndErrorScreen.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/collapsible/CollapsibleEntriesScreen.java33
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/collapsible/CollapsibleEntryWidget.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/collapsible/selection/CustomCollapsibleEntrySelectionScreen.java28
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/generic/OptionEntriesScreen.java14
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/BatchedEntryRendererManager.java1
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/CachedEntryListRender.java12
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/DisplayCompositeWidget.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/HoleWidget.java37
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/ScrollableViewWidget.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/TooltipContextImpl.java10
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/UpdatedListWidget.java69
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/basewidgets/TextFieldWidget.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/favorites/panel/rows/FavoritesPanelEntriesRow.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/search/argument/type/RegexArgumentType.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/search/argument/type/TextArgumentType.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/search/argument/type/TooltipArgumentType.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/transfer/SimpleTransferHandlerImpl.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/entry/AbstractEntryStack.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/entry/comparison/FluidComparatorRegistryImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/entry/comparison/ItemComparatorRegistryImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/entry/comparison/NbtHasherProviderImpl.java64
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/InputSlotCrafter.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/transfer/NewInputSlotCrafter.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java14
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/ItemEntryDefinition.java44
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/plugin/test/REITestPlugin.java11
53 files changed, 375 insertions, 276 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java
index 408227e16..8d748f704 100644
--- a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java
+++ b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCoreClient.java
@@ -24,8 +24,6 @@
package me.shedaniel.rei;
import com.google.common.collect.Lists;
-import com.mojang.blaze3d.systems.RenderSystem;
-import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.serialization.DataResult;
import dev.architectury.event.Event;
import dev.architectury.event.EventFactory;
@@ -67,7 +65,6 @@ import me.shedaniel.rei.impl.client.entry.filtering.rules.FilteringRuleTypeRegis
import me.shedaniel.rei.impl.client.entry.renderer.EntryRendererRegistryImpl;
import me.shedaniel.rei.impl.client.favorites.DelegatingFavoriteEntryProviderImpl;
import me.shedaniel.rei.impl.client.favorites.FavoriteEntryTypeRegistryImpl;
-import me.shedaniel.rei.impl.client.gui.ScreenOverlayImpl;
import me.shedaniel.rei.impl.client.gui.modules.entries.SubMenuEntry;
import me.shedaniel.rei.impl.client.gui.modules.entries.ToggleMenuEntry;
import me.shedaniel.rei.impl.client.gui.widget.InternalWidgets;
@@ -103,17 +100,18 @@ import net.minecraft.client.gui.screens.inventory.CraftingScreen;
import net.minecraft.client.gui.screens.recipebook.GhostRecipe;
import net.minecraft.client.gui.screens.recipebook.RecipeBookComponent;
import net.minecraft.client.resources.language.I18n;
+import net.minecraft.data.models.blockstates.PropertyDispatch;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.inventory.CraftingMenu;
import net.minecraft.world.inventory.Slot;
+import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.item.crafting.Ingredient;
-import org.apache.commons.lang3.function.TriFunction;
import org.apache.commons.lang3.mutable.MutableLong;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nullable;
@@ -156,7 +154,7 @@ public class RoughlyEnoughItemsCoreClient {
return entryType.read(object);
}, "favoriteEntryFromJson");
ClientInternals.attachInstance((BiFunction<@Nullable Point, Collection<Tooltip.Entry>, Tooltip>) QueuedTooltip::impl, "tooltipProvider");
- ClientInternals.attachInstance((TriFunction<Point, @Nullable TooltipFlag, Boolean, TooltipContext>) TooltipContextImpl::new, "tooltipContextProvider");
+ ClientInternals.attachInstance((PropertyDispatch.QuadFunction<Point, @Nullable TooltipFlag, Boolean, Item.TooltipContext, TooltipContext>) TooltipContextImpl::new, "tooltipContextProvider");
ClientInternals.attachInstance((Function<Object, Tooltip.Entry>) QueuedTooltip.TooltipEntryImpl::new, "tooltipEntryProvider");
ClientInternals.attachInstance((BiFunction<Component, List<FavoriteMenuEntry>, FavoriteMenuEntry>) SubMenuEntry::new, "subMenuEntry");
ClientInternals.attachInstance((BiFunction<Component, BooleanValue, FavoriteMenuEntry>) (text, value) -> ToggleMenuEntry.of(text, value::get, value), "toggleEntry");
@@ -247,7 +245,7 @@ public class RoughlyEnoughItemsCoreClient {
Minecraft client = Minecraft.getInstance();
NetworkManager.registerReceiver(NetworkManager.s2c(), RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, (buf, context) -> {
- ItemStack stack = buf.readItem();
+ ItemStack stack = buf.readJsonWithCodec(ItemStack.OPTIONAL_CODEC);
String player = buf.readUtf(32767);
if (client.player != null) {
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);
@@ -266,7 +264,7 @@ public class RoughlyEnoughItemsCoreClient {
List<ItemStack> list = Lists.newArrayList();
int count = buf.readInt();
for (int j = 0; j < count; j++) {
- list.add(buf.readItem());
+ list.add(buf.readJsonWithCodec(ItemStack.OPTIONAL_CODEC));
}
input.add(list);
}
diff --git a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java
index 58b4cd21a..71c49dca9 100644
--- a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java
+++ b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsNetwork.java
@@ -42,6 +42,7 @@ import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.Tag;
import net.minecraft.network.FriendlyByteBuf;
+import net.minecraft.network.RegistryFriendlyByteBuf;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerPlayer;
@@ -87,9 +88,12 @@ public class RoughlyEnoughItemsNetwork {
player.displayClientMessage(Component.translatable("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false);
return;
}
- ItemStack stack = buf.readItem();
+ ItemStack stack = buf.readJsonWithCodec(ItemStack.OPTIONAL_CODEC);
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));
+ RegistryFriendlyByteBuf newBuf = new RegistryFriendlyByteBuf(Unpooled.buffer(), player.registryAccess());
+ newBuf.writeJsonWithCodec(ItemStack.OPTIONAL_CODEC, stack.copy());
+ newBuf.writeUtf(player.getScoreboardName(), 32767);
+ NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, newBuf);
} else {
player.displayClientMessage(Component.translatable("text.rei.failed_cheat_items"), false);
}
@@ -102,16 +106,19 @@ public class RoughlyEnoughItemsNetwork {
}
AbstractContainerMenu menu = player.containerMenu;
- ItemStack itemStack = buf.readItem();
+ ItemStack itemStack = buf.readJsonWithCodec(ItemStack.OPTIONAL_CODEC);
ItemStack stack = itemStack.copy();
- if (!menu.getCarried().isEmpty() && ItemStack.isSameItemSameTags(menu.getCarried(), stack)) {
+ if (!menu.getCarried().isEmpty() && ItemStack.isSameItemSameComponents(menu.getCarried(), stack)) {
stack.setCount(Mth.clamp(stack.getCount() + menu.getCarried().getCount(), 1, stack.getMaxStackSize()));
} else if (!menu.getCarried().isEmpty()) {
return;
}
menu.setCarried(stack.copy());
menu.broadcastChanges();
- NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, new FriendlyByteBuf(Unpooled.buffer()).writeItem(itemStack.copy()).writeUtf(player.getScoreboardName(), 32767));
+ RegistryFriendlyByteBuf newBuf = new RegistryFriendlyByteBuf(Unpooled.buffer(), player.registryAccess());
+ newBuf.writeJsonWithCodec(ItemStack.OPTIONAL_CODEC, stack.copy());
+ newBuf.writeUtf(player.getScoreboardName(), 32767);
+ NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, newBuf);
});
NetworkManager.registerReceiver(NetworkManager.c2s(), CREATE_ITEMS_HOTBAR_PACKET, Collections.singletonList(new SplitPacketTransformer()), (buf, context) -> {
ServerPlayer player = (ServerPlayer) context.getPlayer();
@@ -119,13 +126,16 @@ public class RoughlyEnoughItemsNetwork {
player.displayClientMessage(Component.translatable("text.rei.no_permission_cheat").withStyle(ChatFormatting.RED), false);
return;
}
- ItemStack stack = buf.readItem();
+ ItemStack stack = buf.readJsonWithCodec(ItemStack.OPTIONAL_CODEC);
int hotbarSlotId = buf.readVarInt();
if (hotbarSlotId >= 0 && hotbarSlotId < 9) {
AbstractContainerMenu menu = player.containerMenu;
player.getInventory().items.set(hotbarSlotId, stack.copy());
menu.broadcastChanges();
- NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, new FriendlyByteBuf(Unpooled.buffer()).writeItem(stack.copy()).writeUtf(player.getScoreboardName(), 32767));
+ RegistryFriendlyByteBuf newBuf = new RegistryFriendlyByteBuf(Unpooled.buffer(), player.registryAccess());
+ newBuf.writeJsonWithCodec(ItemStack.OPTIONAL_CODEC, stack.copy());
+ newBuf.writeUtf(player.getScoreboardName(), 32767);
+ NetworkManager.sendToPlayer(player, RoughlyEnoughItemsNetwork.CREATE_ITEMS_MESSAGE_PACKET, newBuf);
} else {
player.displayClientMessage(Component.translatable("text.rei.failed_cheat_items"), false);
}
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 9c185764e..2a489e9f0 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
@@ -58,7 +58,7 @@ import net.minecraft.client.gui.screens.Screen;
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.RegistryFriendlyByteBuf;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.LazyLoadedValue;
@@ -188,7 +188,7 @@ public class ClientHelperImpl implements ClientHelper {
inventoryScreen.isQuickCrafting = false;
return;
}
- NetworkManager.sendToServer(RoughlyEnoughItemsNetwork.DELETE_ITEMS_PACKET, new FriendlyByteBuf(Unpooled.buffer()));
+ NetworkManager.sendToServer(RoughlyEnoughItemsNetwork.DELETE_ITEMS_PACKET, new RegistryFriendlyByteBuf(Unpooled.buffer(), Minecraft.getInstance().player.registryAccess()));
if (Minecraft.getInstance().screen instanceof AbstractContainerScreen<?> containerScreen) {
containerScreen.isQuickCrafting = false;
}
@@ -219,7 +219,9 @@ public class ClientHelperImpl implements ClientHelper {
return false;
}
try {
- NetworkManager.sendToServer(ConfigObject.getInstance().isGrabbingItems() ? RoughlyEnoughItemsNetwork.CREATE_ITEMS_GRAB_PACKET : RoughlyEnoughItemsNetwork.CREATE_ITEMS_PACKET, new FriendlyByteBuf(Unpooled.buffer()).writeItem(cheatedStack));
+ RegistryFriendlyByteBuf newBuf = new RegistryFriendlyByteBuf(Unpooled.buffer(), Minecraft.getInstance().player.registryAccess());
+ newBuf.writeJsonWithCodec(ItemStack.OPTIONAL_CODEC, cheatedStack);
+ NetworkManager.sendToServer(ConfigObject.getInstance().isGrabbingItems() ? RoughlyEnoughItemsNetwork.CREATE_ITEMS_GRAB_PACKET : RoughlyEnoughItemsNetwork.CREATE_ITEMS_PACKET, newBuf);
return true;
} catch (Exception exception) {
return false;
@@ -229,7 +231,7 @@ public class ClientHelperImpl implements ClientHelper {
if (identifier == null) {
return false;
}
- String tagMessage = cheatedStack.copy().getTag() != null && !cheatedStack.copy().getTag().isEmpty() ? cheatedStack.copy().getTag().getAsString() : "";
+ String tagMessage = /* TODO 24w09a: cheatedStack.copy().getTag() != null && !cheatedStack.copy().getTag().isEmpty() ? cheatedStack.copy().getTag().getAsString() :*/ "";
String og = cheatedStack.getCount() == 1 ? ConfigObject.getInstance().getGiveCommand().replaceAll(" \\{count}", "") : ConfigObject.getInstance().getGiveCommand();
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) {
@@ -264,7 +266,10 @@ public class ClientHelperImpl implements ClientHelper {
return false;
}
try {
- NetworkManager.sendToServer(RoughlyEnoughItemsNetwork.CREATE_ITEMS_HOTBAR_PACKET, new FriendlyByteBuf(Unpooled.buffer()).writeItem(stack.getValue().copy()).writeVarInt(hotbarSlotId));
+ RegistryFriendlyByteBuf newBuf = new RegistryFriendlyByteBuf(Unpooled.buffer(), Minecraft.getInstance().player.registryAccess());
+ newBuf.writeJsonWithCodec(ItemStack.OPTIONAL_CODEC, stack.getValue().copy());
+ newBuf.writeVarInt(hotbarSlotId);
+ NetworkManager.sendToServer(RoughlyEnoughItemsNetwork.CREATE_ITEMS_HOTBAR_PACKET, newBuf);
return true;
} catch (Exception exception) {
return false;
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/addon/ConfigAddonsScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/addon/ConfigAddonsScreen.java
index 32ee7174d..fdbc3166e 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/addon/ConfigAddonsScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/addon/ConfigAddonsScreen.java
@@ -23,10 +23,10 @@
package me.shedaniel.rei.impl.client.config.addon;
-import me.shedaniel.clothconfig2.gui.widget.DynamicElementListWidget;
import me.shedaniel.rei.api.client.config.addon.ConfigAddon;
import me.shedaniel.rei.api.client.config.addon.ConfigAddonRegistry;
import me.shedaniel.rei.impl.client.gui.InternalTextures;
+import me.shedaniel.rei.impl.client.gui.widget.UpdatedListWidget;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ComponentPath;
import net.minecraft.client.gui.GuiGraphics;
@@ -38,7 +38,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.resources.ResourceLocation;
import org.jetbrains.annotations.Nullable;
import java.util.Collections;
@@ -63,7 +62,7 @@ public class ConfigAddonsScreen extends Screen {
minecraft.setScreen(parent);
}).bounds(4, 4, Minecraft.getInstance().font.width(backText) + 10, 20).build());
}
- rulesList = addWidget(new AddonsList(minecraft, width, height, 30, height, BACKGROUND_LOCATION));
+ rulesList = addWidget(new AddonsList(minecraft, width, height, 30, height));
ConfigAddonRegistryImpl addonRegistry = (ConfigAddonRegistryImpl) ConfigAddonRegistry.getInstance();
for (ConfigAddon addon : addonRegistry.getAddons()) {
rulesList.addItem(new DefaultAddonEntry(parent, addon));
@@ -77,11 +76,11 @@ public class ConfigAddonsScreen extends Screen {
graphics.drawString(this.font, this.title.getVisualOrderText(), (int) (this.width / 2.0F - this.font.width(this.title) / 2.0F), 12, -1);
}
- public static class AddonsList extends DynamicElementListWidget<AddonEntry> {
+ public static class AddonsList extends UpdatedListWidget<AddonEntry> {
private boolean inFocus;
- public AddonsList(Minecraft client, int width, int height, int top, int bottom, ResourceLocation backgroundLocation) {
- super(client, width, height, top, bottom, backgroundLocation);
+ public AddonsList(Minecraft client, int width, int height, int top, int bottom) {
+ super(client, width, height, top, bottom);
}
@Override
@@ -105,7 +104,7 @@ public class ConfigAddonsScreen extends Screen {
}
}
- public static abstract class AddonEntry extends DynamicElementListWidget.ElementEntry<AddonEntry> {
+ public static abstract class AddonEntry extends UpdatedListWidget.ElementEntry<AddonEntry> {
@Override
public int getItemHeight() {
return 26;
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ConfigureCategoriesScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ConfigureCategoriesScreen.java
index 3199e2575..f1d0c3ac2 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ConfigureCategoriesScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/ConfigureCategoriesScreen.java
@@ -23,13 +23,13 @@
package me.shedaniel.rei.impl.client.config.entries;
-import me.shedaniel.clothconfig2.gui.widget.DynamicElementListWidget;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
import me.shedaniel.rei.api.client.gui.widgets.Label;
import me.shedaniel.rei.api.client.gui.widgets.Widgets;
import me.shedaniel.rei.api.client.registry.category.CategoryRegistry;
import me.shedaniel.rei.api.common.category.CategoryIdentifier;
+import me.shedaniel.rei.impl.client.gui.widget.UpdatedListWidget;
import net.minecraft.ChatFormatting;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
@@ -41,7 +41,6 @