From 49e2757f5d850ccf9c38945301a99c4d8527a3ca Mon Sep 17 00:00:00 2001 From: jurrejelle Date: Sun, 8 Feb 2026 17:21:24 +0100 Subject: [PATCH 1/3] Fix access protection issue in netherite tools --- .../com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java b/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java index f2035827169..d76bfc06cf1 100644 --- a/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java +++ b/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java @@ -14,6 +14,7 @@ import com.gregtechceu.gtceu.api.item.tool.ToolHelper; import com.gregtechceu.gtceu.data.recipe.builder.*; +import net.minecraft.advancements.critereon.InventoryChangeTrigger; import net.minecraft.data.recipes.FinishedRecipe; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.SmithingTransformRecipeBuilder; @@ -631,7 +632,7 @@ public static void addSmithingTransformRecipe(Consumer provider, @NotNull RecipeCategory category) { SmithingTransformRecipeBuilder .smithing(Ingredient.of(template), Ingredient.of(baseInput), Ingredient.of(addition), category, result) - .unlocks(String.format("has_%s", baseInput), has(baseInput)) + .unlocks(String.format("has_%s", baseInput), InventoryChangeTrigger.TriggerInstance.hasItems(baseInput)) .save(provider, regName); } From 835ab30a6acc6de3029cd204751c4dee283456bb Mon Sep 17 00:00:00 2001 From: jurrejelle Date: Sun, 8 Feb 2026 17:27:03 +0100 Subject: [PATCH 2/3] Spotless + fix lamp issue --- .../java/com/gregtechceu/gtceu/api/item/LampBlockItem.java | 2 +- .../gtceu/client/renderer/block/LampItemRenderer.java | 4 +++- .../gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java | 2 -- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java b/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java index d07587b9b57..117e6a75949 100644 --- a/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java +++ b/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java @@ -77,7 +77,7 @@ public void initializeClient(Consumer consumer) { @Override public BlockEntityWithoutLevelRenderer getCustomRenderer() { - return LampItemRenderer.INSTANCE; + return LampItemRenderer.INSTANCE.get(); } }); } diff --git a/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java b/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java index aed2072c637..56aa71cea51 100644 --- a/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java +++ b/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java @@ -16,13 +16,15 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import org.jetbrains.annotations.NotNull; +import java.util.function.Supplier; + /** * All this renderer does is refer rendering to the correct block model based on the lamp item's NBT.
* Without it, all item variants would look like the default 'lit, with bloom' one. */ public class LampItemRenderer extends BlockEntityWithoutLevelRenderer { - public static final LampItemRenderer INSTANCE = new LampItemRenderer(); + public static final Supplier INSTANCE = LampItemRenderer::new; protected final ItemRenderer itemRenderer; protected final BlockRenderDispatcher blockRenderer; diff --git a/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java b/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java index d76bfc06cf1..e9d7013bf87 100644 --- a/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java +++ b/src/main/java/com/gregtechceu/gtceu/data/recipe/VanillaRecipeHelper.java @@ -34,8 +34,6 @@ import java.util.function.Consumer; -import static com.tterrag.registrate.providers.RegistrateRecipeProvider.has; - public class VanillaRecipeHelper { public static void addSmeltingRecipe(Consumer provider, @NotNull String regName, TagKey input, From bf8c8d049e0c423f34974f71d0bbb57931a1e26e Mon Sep 17 00:00:00 2001 From: jurrejelle Date: Sun, 8 Feb 2026 17:30:32 +0100 Subject: [PATCH 3/3] lazy getter --- .../com/gregtechceu/gtceu/api/item/LampBlockItem.java | 2 +- .../gtceu/client/renderer/block/LampItemRenderer.java | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java b/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java index 117e6a75949..edb5174a25a 100644 --- a/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java +++ b/src/main/java/com/gregtechceu/gtceu/api/item/LampBlockItem.java @@ -77,7 +77,7 @@ public void initializeClient(Consumer consumer) { @Override public BlockEntityWithoutLevelRenderer getCustomRenderer() { - return LampItemRenderer.INSTANCE.get(); + return LampItemRenderer.getInstance(); } }); } diff --git a/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java b/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java index 56aa71cea51..853f9a3e361 100644 --- a/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java +++ b/src/main/java/com/gregtechceu/gtceu/client/renderer/block/LampItemRenderer.java @@ -16,15 +16,20 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import org.jetbrains.annotations.NotNull; -import java.util.function.Supplier; - /** * All this renderer does is refer rendering to the correct block model based on the lamp item's NBT.
* Without it, all item variants would look like the default 'lit, with bloom' one. */ public class LampItemRenderer extends BlockEntityWithoutLevelRenderer { - public static final Supplier INSTANCE = LampItemRenderer::new; + private static LampItemRenderer INSTANCE = null; + + public static LampItemRenderer getInstance() { + if (INSTANCE == null) { + INSTANCE = new LampItemRenderer(); + } + return INSTANCE; + } protected final ItemRenderer itemRenderer; protected final BlockRenderDispatcher blockRenderer;