aboutsummaryrefslogtreecommitdiff
path: root/default-plugin/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'default-plugin/src/main')
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/recipebook/DefaultRecipeBookHandler.java5
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java4
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultInformationCategory.java6
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconBaseCategory.java6
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconPaymentCategory.java6
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ArmorDyeRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BannerDuplicateRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BookCloningRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/CraftingRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/FireworkRocketRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapCloningRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapExtendingRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShieldDecorationRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShulkerBoxColoringFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/SuspiciousStewRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/TippedArrowRecipeFiller.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/tag/ReferenceTagNodeWidget.java4
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java7
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java44
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java7
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultBlastingDisplay.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java17
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultSmeltingDisplay.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultSmokingDisplay.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/CraftingRecipeSizeProvider.java6
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java32
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCustomDisplay.java9
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCustomShapedDisplay.java9
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCustomShapelessDisplay.java9
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java11
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java7
31 files changed, 130 insertions, 101 deletions
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/recipebook/DefaultRecipeBookHandler.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/recipebook/DefaultRecipeBookHandler.java
index ff2b22547..5fc2affee 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/recipebook/DefaultRecipeBookHandler.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/autocrafting/recipebook/DefaultRecipeBookHandler.java
@@ -38,6 +38,7 @@ import net.minecraft.world.inventory.CraftingMenu;
import net.minecraft.world.inventory.InventoryMenu;
import net.minecraft.world.inventory.RecipeBookMenu;
import net.minecraft.world.item.crafting.Recipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.Optional;
@@ -71,7 +72,7 @@ public class DefaultRecipeBookHandler implements TransferHandler {
}
if (h == -1 || w == -1)
return Result.createNotApplicable();
- Recipe<?> recipe = craftingDisplay.getOptionalRecipe().get();
+ RecipeHolder<?> recipe = craftingDisplay.getOptionalRecipe().get();
if (craftingDisplay.getHeight() > h || craftingDisplay.getWidth() > w)
return Result.createFailed(Component.translatable("error.rei.transfer.too_small", h, w));
if (!context.getMinecraft().player.getRecipeBook().contains(recipe))
@@ -86,7 +87,7 @@ public class DefaultRecipeBookHandler implements TransferHandler {
}
} else if (display instanceof DefaultCookingDisplay defaultDisplay) {
if (defaultDisplay.getOptionalRecipe().isPresent()) {
- Recipe<?> recipe = (defaultDisplay).getOptionalRecipe().get();
+ RecipeHolder<?> recipe = (defaultDisplay).getOptionalRecipe().get();
if (!context.getMinecraft().player.getRecipeBook().contains(recipe))
return Result.createNotApplicable();
if (!context.isActuallyCrafting())
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java
index b8ec0b0b6..6702ec975 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java
@@ -309,8 +309,8 @@ public class DefaultClientPlugin implements REIClientPlugin, BuiltinClientPlugin
registry.registerRecipeFiller(BlastingRecipe.class, RecipeType.BLASTING, DefaultBlastingDisplay::new);
registry.registerRecipeFiller(CampfireCookingRecipe.class, RecipeType.CAMPFIRE_COOKING, DefaultCampfireDisplay::new);
registry.registerRecipeFiller(StonecutterRecipe.class, RecipeType.STONECUTTING, DefaultStoneCuttingDisplay::new);
- registry.registerRecipeFiller(SmithingTransformRecipe.class, RecipeType.SMITHING, DefaultSmithingDisplay::new);
- registry.registerRecipesFiller(SmithingTrimRecipe.class, RecipeType.SMITHING, DefaultSmithingDisplay::from);
+ registry.registerRecipeFiller(SmithingTransformRecipe.class, RecipeType.SMITHING, DefaultSmithingDisplay::ofTransforming);
+ registry.registerRecipesFiller(SmithingTrimRecipe.class, RecipeType.SMITHING, DefaultSmithingDisplay::fromTrimming);
registry.registerFiller(AnvilRecipe.class, DefaultAnvilDisplay::new);
registry.registerFiller(BrewingRecipe.class, DefaultBrewingDisplay::new);
registry.registerFiller(TagKey.class, tagKey -> {
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultInformationCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultInformationCategory.java
index 38de0e376..d9c6c7c35 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultInformationCategory.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultInformationCategory.java
@@ -161,9 +161,9 @@ public class DefaultInformationCategory implements DisplayCategory<DefaultInform
}
@Override
- public boolean mouseScrolled(double mouseX, double mouseY, double amount) {
- if (containsMouse(mouseX, mouseY)) {
- scrolling.offset(ClothConfigInitializer.getScrollStep() * -amount, true);
+ public boolean mouseScrolled(double mouseX, double mouseY, double amountX, double amountY) {
+ if (containsMouse(mouseX, mouseY) && amountY != 0) {
+ scrolling.offset(ClothConfigInitializer.getScrollStep() * -amountY, true);
return true;
}
return false;
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconBaseCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconBaseCategory.java
index 0c068776d..78b683e79 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconBaseCategory.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconBaseCategory.java
@@ -122,9 +122,9 @@ public class DefaultBeaconBaseCategory implements DisplayCategory<DefaultBeaconB
}
@Override
- public boolean mouseScrolled(double double_1, double double_2, double double_3) {
- if (containsMouse(double_1, double_2)) {
- scrolling.offset(ClothConfigInitializer.getScrollStep() * -double_3, true);
+ public boolean mouseScrolled(double double_1, double double_2, double amountX, double amountY) {
+ if (containsMouse(double_1, double_2) && amountY != 0) {
+ scrolling.offset(ClothConfigInitializer.getScrollStep() * -amountY, true);
return true;
}
return false;
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconPaymentCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconPaymentCategory.java
index c70d6e3bc..2172e3046 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconPaymentCategory.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/beacon/DefaultBeaconPaymentCategory.java
@@ -122,9 +122,9 @@ public class DefaultBeaconPaymentCategory implements DisplayCategory<DefaultBeac
}
@Override
- public boolean mouseScrolled(double double_1, double double_2, double double_3) {
- if (containsMouse(double_1, double_2)) {
- scrolling.offset(ClothConfigInitializer.getScrollStep() * -double_3, true);
+ public boolean mouseScrolled(double double_1, double double_2, double amountX, double amountY) {
+ if (containsMouse(double_1, double_2) && amountY != 0) {
+ scrolling.offset(ClothConfigInitializer.getScrollStep() * -amountY, true);
return true;
}
return false;
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ArmorDyeRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ArmorDyeRecipeFiller.java
index 2582beb51..73aa38bb5 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ArmorDyeRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ArmorDyeRecipeFiller.java
@@ -34,6 +34,7 @@ import net.minecraft.world.item.DyeItem;
import net.minecraft.world.item.DyeableLeatherItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.ArmorDyeRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.ArrayList;
import java.util.Collection;
@@ -42,7 +43,7 @@ import java.util.Random;
public class ArmorDyeRecipeFiller implements CraftingRecipeFiller<ArmorDyeRecipe> {
@Override
- public Collection<Display> apply(ArmorDyeRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<ArmorDyeRecipe> recipe) {
List<Display> displays = new ArrayList<>();
List<EntryStack<?>> toDye = EntryRegistry.getInstance().getEntryStacks().filter(entry -> entry.getValueType() == ItemStack.class && entry.<ItemStack>castValue().getItem() instanceof DyeableLeatherItem).toList();
DyeColor[] colors = DyeColor.values();
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BannerDuplicateRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BannerDuplicateRecipeFiller.java
index 127355293..f28eb8f43 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BannerDuplicateRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BannerDuplicateRecipeFiller.java
@@ -35,12 +35,13 @@ import net.minecraft.world.item.DyeColor;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.BannerDuplicateRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.*;
public class BannerDuplicateRecipeFiller implements CraftingRecipeFiller<BannerDuplicateRecipe> {
@Override
- public Collection<Display> apply(BannerDuplicateRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<BannerDuplicateRecipe> recipe) {
List<Display> displays = new ArrayList<>();
Map<DyeColor, Pair<EntryIngredient.Builder, EntryStack<?>>> displayMap = new HashMap<>();
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BookCloningRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BookCloningRecipeFiller.java
index 74b3c0101..cab460f70 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BookCloningRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/BookCloningRecipeFiller.java
@@ -34,6 +34,7 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.WrittenBookItem;
import net.minecraft.world.item.crafting.BookCloningRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.ArrayList;
import java.util.Collection;
@@ -60,7 +61,7 @@ public class BookCloningRecipeFiller implements CraftingRecipeFiller<BookCloning
};
@Override
- public Collection<Display> apply(BookCloningRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<BookCloningRecipe> recipe) {
List<Display> displays = new ArrayList<>();
for (int i = 1; i <= 8; i++) {
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/CraftingRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/CraftingRecipeFiller.java
index ac575045b..8670ed6fc 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/CraftingRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/CraftingRecipeFiller.java
@@ -37,13 +37,14 @@ import me.shedaniel.rei.plugin.common.displays.crafting.DefaultCraftingDisplay;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.crafting.CraftingRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.RecipeType;
import java.util.Collection;
import java.util.List;
import java.util.function.Function;
-public interface CraftingRecipeFiller<T extends CraftingRecipe> extends Function<T, Collection<Display>> {
+public interface CraftingRecipeFiller<T extends CraftingRecipe> extends Function<RecipeHolder<T>, Collection<Display>> {
default void registerCategories(CategoryRegistry registry) {
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/FireworkRocketRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/FireworkRocketRecipeFiller.java
index d4a689df1..3a9f04b0f 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/FireworkRocketRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/FireworkRocketRecipeFiller.java
@@ -35,6 +35,7 @@ import net.minecraft.network.chat.Component;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.crafting.FireworkRocketRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.ArrayList;
import java.util.Collection;
@@ -42,7 +43,7 @@ import java.util.List;
public class FireworkRocketRecipeFiller implements CraftingRecipeFiller<FireworkRocketRecipe> {
@Override
- public Collection<Display> apply(FireworkRocketRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<FireworkRocketRecipe> recipe) {
List<Display> displays = new ArrayList<>();
{
EntryIngredient[] inputs = new EntryIngredient[4];
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapCloningRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapCloningRecipeFiller.java
index e36a6fd8f..e692668ca 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapCloningRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapCloningRecipeFiller.java
@@ -28,6 +28,7 @@ import me.shedaniel.rei.api.common.util.EntryIngredients;
import me.shedaniel.rei.plugin.common.displays.crafting.DefaultCustomShapelessDisplay;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.crafting.MapCloningRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.ArrayList;
import java.util.Collection;
@@ -35,7 +36,7 @@ import java.util.List;
public class MapCloningRecipeFiller implements CraftingRecipeFiller<MapCloningRecipe> {
@Override
- public Collection<Display> apply(MapCloningRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<MapCloningRecipe> recipe) {
List<Display> displays = new ArrayList<>();
displays.add(new DefaultCustomShapelessDisplay(recipe,
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapExtendingRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapExtendingRecipeFiller.java
index f5771ce5b..b01b45c4c 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapExtendingRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/MapExtendingRecipeFiller.java
@@ -33,6 +33,7 @@ import net.minecraft.client.resources.language.I18n;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.crafting.MapExtendingRecipe;
+import net.minecraft.world.item.crafting.RecipeHolder;
import java.util.ArrayList;
import java.util.Collection;
@@ -40,7 +41,7 @@ import java.util.List;
public class MapExtendingRecipeFiller implements CraftingRecipeFiller<MapExtendingRecipe> {
@Override
- public Collection<Display> apply(MapExtendingRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<MapExtendingRecipe> recipe) {
List<Display> displays = new ArrayList<>();
for (int i = 0; i < 4; i++) {
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShieldDecorationRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShieldDecorationRecipeFiller.java
index 38de05515..54272d078 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShieldDecorationRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShieldDecorationRecipeFiller.java
@@ -36,6 +36,7 @@ import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.*;
+import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.ShieldDecorationRecipe;
import net.minecraft.world.level.block.entity.BannerPattern;
import net.minecraft.world.level.block.entity.BlockEntityType;
@@ -72,7 +73,7 @@ public class ShieldDecorationRecipeFiller implements CraftingRecipeFiller<Shield
}
@Override
- public Collection<Display> apply(ShieldDecorationRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<ShieldDecorationRecipe> recipe) {
List<Display> displays = new ArrayList<>();
EntryIngredient shield = EntryIngredients.of(Items.SHIELD);
EntryIngredient.Builder inputsBuilder = EntryIngredient.builder();
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShulkerBoxColoringFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShulkerBoxColoringFiller.java
index 1a1240925..a61c868f8 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShulkerBoxColoringFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/ShulkerBoxColoringFiller.java
@@ -30,6 +30,7 @@ import me.shedaniel.rei.plugin.common.displays.crafting.DefaultCustomShapelessDi
import net.minecraft.world.item.DyeColor;
import net.minecraft.world.item.DyeItem;
import net.minecraft.world.item.Items;
+import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.ShulkerBoxColoring;
import net.minecraft.world.level.block.ShulkerBoxBlock;
@@ -39,7 +40,7 @@ import java.util.List;
public class ShulkerBoxColoringFiller implements CraftingRecipeFiller<ShulkerBoxColoring> {
@Override
- public Collection<Display> apply(ShulkerBoxColoring recipe) {
+ public Collection<Display> apply(RecipeHolder<ShulkerBoxColoring> recipe) {
List<Display> displays = new ArrayList<>();
EntryIngredient shulkerBox = EntryIngredients.of(Items.SHULKER_BOX);
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/SuspiciousStewRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/SuspiciousStewRecipeFiller.java
index fab4e4e70..c86ff4a63 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/SuspiciousStewRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/SuspiciousStewRecipeFiller.java
@@ -30,6 +30,7 @@ import me.shedaniel.rei.plugin.common.displays.crafting.DefaultCustomShapelessDi
import net.minecraft.network.chat.Component;
import net.minecraft.tags.ItemTags;
import net.minecraft.world.item.Items;
+import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.SuspiciousStewRecipe;
import java.util.ArrayList;
@@ -38,7 +39,7 @@ import java.util.List;
public class SuspiciousStewRecipeFiller implements CraftingRecipeFiller<SuspiciousStewRecipe> {
@Override
- public Collection<Display> apply(SuspiciousStewRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<SuspiciousStewRecipe> recipe) {
List<Display> displays = new ArrayList<>();
displays.add(new DefaultCustomShapelessDisplay(recipe,
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/TippedArrowRecipeFiller.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/TippedArrowRecipeFiller.java
index e0d62e357..f544ae1e8 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/TippedArrowRecipeFiller.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/crafting/filler/TippedArrowRecipeFiller.java
@@ -35,6 +35,7 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.alchemy.Potion;
import net.minecraft.world.item.alchemy.PotionUtils;
+import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.TippedArrowRecipe;
import java.util.ArrayList;
@@ -43,7 +44,7 @@ import java.util.List;
public class TippedArrowRecipeFiller implements CraftingRecipeFiller<TippedArrowRecipe> {
@Override
- public Collection<Display> apply(TippedArrowRecipe recipe) {
+ public Collection<Display> apply(RecipeHolder<TippedArrowRecipe> recipe) {
EntryIngredient arrowStack = EntryIngredient.of(EntryStacks.of(Items.ARROW));
ReferenceSet<Potion> registeredPotions = new ReferenceOpenHashSet<>();
List<Display> displays = new ArrayList<>();
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/tag/ReferenceTagNodeWidget.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/tag/ReferenceTagNodeWidget.java
index 128300f11..04ddb52bf 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/tag/ReferenceTagNodeWidget.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/tag/ReferenceTagNodeWidget.java
@@ -71,7 +71,9 @@ public class ReferenceTagNodeWidget<S, T> extends TagNodeWidget<S, T> {
public void render(GuiGraphics graphics, int mouseX, int mouseY, float delta) {
if (this.overflowBounds.intersects(MatrixUtils.transform(graphics.pose().last().pose(), getBounds()))) {
RenderSystem.setShader(GameRenderer::getPositionTexShader);
- graphics.blit(new ResourceLocation("textures/gui/advancements/widgets.png"), bounds.x, bounds.y, 1, 128 + 27, 24, 24);
+ graphics.innerBlit(new ResourceLocation("textures/gui/sprites/advancements/task_frame_unobtained.png"),
+ bounds.x - 1, bounds.x - 1 + 26, bounds.y - 1, bounds.y - 1 + 26, 0,
+ 0, 1, 0, 1);
this.slot.getBounds().setLocation(bounds.getCenterX() - this.slot.getBounds().getWidth() / 2, bounds.y + (bounds.height - this.slot.getBounds().getHeight()) / 2 + 1);
this.slot.render(graphics, mouseX, mouseY, delta);
if (this.containsMouse(mouseX, mouseY)) {
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java
index 3119c8f85..c5352b3d2 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java
+++ b/