From 697db274295ef045c9ac8404185448d2cdce7722 Mon Sep 17 00:00:00 2001 From: Hedzer Kuijlman Date: Tue, 24 Jun 2025 17:06:31 +0200 Subject: [PATCH] [update] 1.21.6 (caveats) --- build.gradle.kts | 2 ++ gradle.properties | 19 ++++++------ .../whereisit/client/WhereIsItClient.java | 4 ++- .../client/WhereIsItConfigScreenBuilder.java | 30 +++++++++---------- .../whereisit/client/render/Rendering.java | 26 +++++----------- 5 files changed, 38 insertions(+), 43 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 900daf4..7b531a1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -155,6 +155,8 @@ dependencies { modImplementation("net.fabricmc.fabric-api:fabric-api:${properties["fabric-api_version"]}") + modImplementation("dev.architectury:architectury-fabric:${properties["architectury_version"]}") + // Config modImplementation("dev.isxander:yet-another-config-lib:${properties["yacl_version"]}") { exclude(group = "com.terraformersmc", module = "modmenu") diff --git a/gradle.properties b/gradle.properties index b2e90d7..03d8122 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,11 +4,11 @@ org.gradle.parallel=true # Fabric Properties # check these on https://fabricmc.net/develop -minecraft_version=1.21.5 -game_versions_mr=1.21.5 -game_versions_curse=1.21.5 -parchment_version=1.21.4:2025.03.23 -loader_version=0.16.10 +minecraft_version=1.21.6 +game_versions_mr=1.21.6 +game_versions_curse=1.21.6 +parchment_version=1.21.5:2025.06.15 +loader_version=0.16.13 # Mod Properties mod_version=2.6.4 @@ -17,20 +17,21 @@ archives_base_name=whereisit # Dependencies jackfredlib_version=0.10.7+1.21.5 -yacl_version=3.6.6+1.21.5-fabric +yacl_version=3.7.1+1.21.6-fabric jei_modrinth_id=xGApC30U # JF_AUTO_UPDATE_BLOCK -fabric-api_version=0.119.9+1.21.5 -modmenu_version=14.0.0-rc.2 +fabric-api_version=0.127.1+1.21.6 +architectury_version=17.0.6 +modmenu_version=15.0.0-beta.3 jei_version=19.21.0.247 rei_version=19.0.805 emi_version=1.1.21+1.21.1 # JF_END_AUTO_UPDATE_BLOCK # Publishing -prefix=[1.21.5] +prefix=[1.21.6] release_type=release changelog_filter=[feat],[fix],[change],[docs],[update] mod_name=Where Is It diff --git a/src/client/java/red/jackf/whereisit/client/WhereIsItClient.java b/src/client/java/red/jackf/whereisit/client/WhereIsItClient.java index 1aaa747..f1bbcf3 100644 --- a/src/client/java/red/jackf/whereisit/client/WhereIsItClient.java +++ b/src/client/java/red/jackf/whereisit/client/WhereIsItClient.java @@ -2,6 +2,7 @@ import com.mojang.blaze3d.platform.InputConstants; import com.mojang.logging.LogUtils; +import dev.architectury.event.events.client.ClientGuiEvent; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; @@ -58,7 +59,8 @@ public void onInitializeClient() { ScreenEvents.BEFORE_INIT.register((client, _screen, scaledWidth, scaledHeight) -> { if (inGame) { if (WhereIsItConfig.INSTANCE.instance().getClient().showSlotHighlights) { - ScreenEvents.afterRender(_screen).register(Rendering::renderSlotHighlight); + //ScreenEvents.afterRender(_screen).register(Rendering::renderSlotHighlight); + ClientGuiEvent.RENDER_CONTAINER_BACKGROUND.register(Rendering::renderSlotHighlight); } // listen for keypress in-GUI diff --git a/src/client/java/red/jackf/whereisit/client/WhereIsItConfigScreenBuilder.java b/src/client/java/red/jackf/whereisit/client/WhereIsItConfigScreenBuilder.java index be04f6c..c217996 100644 --- a/src/client/java/red/jackf/whereisit/client/WhereIsItConfigScreenBuilder.java +++ b/src/client/java/red/jackf/whereisit/client/WhereIsItConfigScreenBuilder.java @@ -8,12 +8,11 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.Screen; -import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.RenderPipelines; import net.minecraft.resources.ResourceLocation; import red.jackf.jackfredlib.api.colour.Colour; import red.jackf.jackfredlib.api.colour.Colours; import red.jackf.jackfredlib.api.colour.Gradient; -import red.jackf.jackfredlib.client.api.colour.GradientUtils; import red.jackf.whereisit.WhereIsIt; import red.jackf.whereisit.client.render.CurrentGradientHolder; import red.jackf.whereisit.config.ColourScheme; @@ -222,10 +221,10 @@ public int render(GuiGraphics graphics, int x, int y, int renderWidth, float tic float ratio = (float) renderWidth / imageWidth; int height = (int) (imageHeight * ratio); - graphics.pose().pushPose(); - graphics.pose().translate(x, y, 0); - graphics.pose().scale(ratio, ratio, 1); - graphics.blit(RenderType::guiTextured, + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.pose().scale(ratio, ratio); + graphics.blit(RenderPipelines.GUI_TEXTURED, WhereIsIt.id("textures/gui/config/show_container_names_example.png"), 0, 0, 0, 0, imageWidth, imageHeight, imageWidth, imageHeight); @@ -233,7 +232,7 @@ public int render(GuiGraphics graphics, int x, int y, int renderWidth, float tic float f = scaleGetter.get(); if (f == 0f) { - graphics.pose().popPose(); + graphics.pose().popMatrix(); return height; } @@ -242,12 +241,12 @@ public int render(GuiGraphics graphics, int x, int y, int renderWidth, float tic var bgColour = ((int) (Minecraft.getInstance().options.getBackgroundOpacity(0.25F) * 255F)) << 24; graphics.fill(labelMidX - halfWidth, labelMidY - halfHeight, labelMidX + halfWidth, labelMidY + halfHeight, bgColour); - graphics.pose().translate(labelMidX, labelMidY, 0); - graphics.pose().scale(f * 5, f * 5, f * 5); + graphics.pose().translate(labelMidX, labelMidY); + graphics.pose().scale(f * 5, f * 5); var font = Minecraft.getInstance().font; var textWidth = font.width("Tools"); graphics.drawString(font, "Tools", -textWidth / 2, -font.lineHeight / 2, 0xFF_FFFFFF, false); - graphics.pose().popPose(); + graphics.pose().popMatrix(); return height; } @@ -448,9 +447,9 @@ public int render(GuiGraphics graphics, int x, int y, int renderWidth, float tic int width = renderWidth - 2 * borderThickness; int height = renderHeight - 2 * borderThickness; - graphics.pose().pushPose(); - graphics.pose().translate(x, y, 0); - graphics.blitSprite(RenderType::guiTextured, COLOUR_PREVIEW_BORDER, 0, 0, renderWidth, renderHeight); + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.blitSprite(RenderPipelines.GUI_TEXTURED, COLOUR_PREVIEW_BORDER, 0, 0, renderWidth, renderHeight); Gradient previewScheme; Colour solid = Colour.fromInt(solidColour.getRGB()); if (scheme == ColourScheme.SOLID) { @@ -460,8 +459,9 @@ public int render(GuiGraphics graphics, int x, int y, int renderWidth, float tic } else { previewScheme = scheme.getGradient(); } - GradientUtils.drawHorizontalGradient(graphics, borderThickness, borderThickness, width, height, previewScheme, 0, 1); - graphics.pose().popPose(); + // TODO: Waiting for JackFredLib to update + // GradientUtils.drawHorizontalGradient(graphics, borderThickness, borderThickness, width, height, previewScheme, 0, 1); + graphics.pose().popMatrix(); return renderHeight; } diff --git a/src/client/java/red/jackf/whereisit/client/render/Rendering.java b/src/client/java/red/jackf/whereisit/client/render/Rendering.java index f906033..93a1487 100644 --- a/src/client/java/red/jackf/whereisit/client/render/Rendering.java +++ b/src/client/java/red/jackf/whereisit/client/render/Rendering.java @@ -1,11 +1,8 @@ package red.jackf.whereisit.client.render; -import com.mojang.blaze3d.buffers.GpuBuffer; -import com.mojang.blaze3d.pipeline.RenderPipeline; -import com.mojang.blaze3d.shaders.ShaderType; -import com.mojang.blaze3d.systems.GpuDevice; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.*; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Axis; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents; @@ -15,7 +12,9 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen; -import net.minecraft.client.renderer.*; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderType; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.util.ARGB; @@ -29,7 +28,6 @@ import red.jackf.whereisit.api.SearchResult; import red.jackf.whereisit.config.WhereIsItConfig; -import java.nio.ByteBuffer; import java.util.*; @SuppressWarnings("resource") // i really don't want to call ClientLevel#close() thanks @@ -73,6 +71,7 @@ public static void setup() { renderBoxes(context, getRenderingProgress(context.tickCounter().getGameTimeDeltaPartialTick(true))); }); + } private static float getRenderingProgress(float tickDelta) { @@ -288,20 +287,18 @@ private static void renderBoxes(WorldRenderContext context, float progress) { pose.mulPose(Axis.XP.rotationDegrees(camera.getXRot())); pose.mulPose(Axis.YP.rotationDegrees(camera.getYRot() - 180f)); - // Calculate alpha and color based on progress - var alpha = 1 - (progress / 2f); var colour = CurrentGradientHolder.getColour(getBaseProgress(getTicksSinceSearch(), context.tickCounter().getGameTimeDeltaPartialTick(true))); var scale = easingFunc(progress); var bufferSource = Minecraft.getInstance().renderBuffers().bufferSource(); // Prepare the builder to start collecting vertex data - var builder = bufferSource.getBuffer(RenderType.guiOverlay()); + var builder = bufferSource.getBuffer(RenderType.textBackgroundSeeThrough()); final int r = ARGB.red(colour); final int g = ARGB.green(colour); final int b = ARGB.blue(colour); - final int a = (int) (alpha * 255); + final int a = 75; // Loop through each result and render the boxes for (SearchResult result : results.values()) { @@ -331,14 +328,7 @@ private static void renderBoxes(WorldRenderContext context, float progress) { ); } } - - // Set the color for the shader - RenderSystem.setShaderColor(1f, 1f, 1f, alpha); // Apply the alpha for the color - bufferSource.endBatch(); - - // Reset shader color and rendering options back to default - RenderSystem.setShaderColor(1f, 1f, 1f, 1f); // Reset color to white }