Skip to content

Commit ed94bb0

Browse files
committed
fix: Minecraft and client hud layering
1 parent cd34e39 commit ed94bb0

3 files changed

Lines changed: 22 additions & 3 deletions

File tree

src/main/java/meteordevelopment/meteorclient/mixin/GameRendererMixin.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import meteordevelopment.meteorclient.events.render.Render3DEvent;
1616
import meteordevelopment.meteorclient.events.render.RenderAfterWorldEvent;
1717
import meteordevelopment.meteorclient.gui.WidgetScreen;
18+
import meteordevelopment.meteorclient.mixininterface.IGameRenderer;
1819
import meteordevelopment.meteorclient.mixininterface.IVec3d;
1920
import meteordevelopment.meteorclient.renderer.MeteorRenderPipelines;
2021
import meteordevelopment.meteorclient.renderer.Renderer3D;
@@ -56,7 +57,7 @@
5657
import java.util.List;
5758

5859
@Mixin(GameRenderer.class)
59-
public abstract class GameRendererMixin {
60+
public abstract class GameRendererMixin implements IGameRenderer {
6061
@Shadow
6162
@Final
6263
private MinecraftClient client;
@@ -173,8 +174,7 @@ private void onRenderGui(RenderTickCounter tickCounter, boolean tick, CallbackIn
173174
widgetScreen.renderCustom(context, mouseX, mouseY, tickCounter.getDynamicDeltaTicks());
174175

175176
RenderSystem.getDevice().createCommandEncoder().clearDepthTexture(client.getFramebuffer().getDepthAttachment(), 1.0);
176-
guiRenderer.render(fogRenderer.getFogBuffer(FogRenderer.FogType.NONE));
177-
guiRenderer.incrementFrame();
177+
meteor$flushGuiState();
178178
}
179179
}
180180

@@ -255,4 +255,10 @@ private void renderHand(float tickProgress, boolean sleeping, Matrix4f positionM
255255
!Modules.get().get(Zoom.class).renderHands())
256256
ci.cancel();
257257
}
258+
259+
@Override
260+
public void meteor$flushGuiState() {
261+
guiRenderer.render(fogRenderer.getFogBuffer(FogRenderer.FogType.NONE));
262+
guiRenderer.incrementFrame();
263+
}
258264
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/*
2+
* This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3+
* Copyright (c) Meteor Development.
4+
*/
5+
6+
package meteordevelopment.meteorclient.mixininterface;
7+
8+
public interface IGameRenderer {
9+
void meteor$flushGuiState();
10+
}

src/main/java/meteordevelopment/meteorclient/systems/hud/HudRenderer.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
1313
import meteordevelopment.meteorclient.MeteorClient;
1414
import meteordevelopment.meteorclient.events.meteor.CustomFontChangedEvent;
15+
import meteordevelopment.meteorclient.mixininterface.IGameRenderer;
1516
import meteordevelopment.meteorclient.renderer.*;
1617
import meteordevelopment.meteorclient.renderer.text.CustomTextRenderer;
1718
import meteordevelopment.meteorclient.renderer.text.Font;
@@ -63,6 +64,8 @@ private HudRenderer() {
6364
}
6465

6566
public void begin(DrawContext drawContext) {
67+
((IGameRenderer) mc.gameRenderer).meteor$flushGuiState();
68+
6669
Renderer2D.COLOR.begin();
6770

6871
this.drawContext = drawContext;

0 commit comments

Comments
 (0)