Skip to content

Commit 3db1e98

Browse files
committed
Added overlays to NoRender
1 parent e4a3d7c commit 3db1e98

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
package com.lambda.mixin.render;
2+
3+
import com.lambda.module.modules.render.NoRender;
4+
import net.minecraft.client.MinecraftClient;
5+
import net.minecraft.client.gui.hud.InGameOverlayRenderer;
6+
import net.minecraft.client.texture.Sprite;
7+
import net.minecraft.client.util.math.MatrixStack;
8+
import org.spongepowered.asm.mixin.Mixin;
9+
import org.spongepowered.asm.mixin.injection.At;
10+
import org.spongepowered.asm.mixin.injection.Inject;
11+
import org.spongepowered.asm.mixin.injection.ModifyArg;
12+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
13+
14+
@Mixin(InGameOverlayRenderer.class)
15+
public class InGameOverlayRendererMixin {
16+
@Inject(method = "renderFireOverlay", at = @At("HEAD"), cancellable = true)
17+
private static void onRenderFireOverlay(
18+
MinecraftClient mc,
19+
MatrixStack matrixStack,
20+
CallbackInfo ci
21+
) {
22+
if (NoRender.INSTANCE.isEnabled() && NoRender.getNoBurning()) ci.cancel();
23+
}
24+
25+
@ModifyArg(method = "renderFireOverlay", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V"), index = 1)
26+
private static float onRenderFireOverlayTranslate(float x) {
27+
if (NoRender.INSTANCE.isEnabled()) {
28+
return (float) NoRender.getFireOverlayYOffset();
29+
} else {
30+
return -0.3f;
31+
}
32+
}
33+
34+
@Inject(method = "renderUnderwaterOverlay", at = @At("HEAD"), cancellable = true)
35+
private static void onRenderUnderwaterOverlay(
36+
MinecraftClient mc,
37+
MatrixStack matrixStack,
38+
CallbackInfo ci
39+
) {
40+
if (NoRender.INSTANCE.isEnabled() && NoRender.getNoUnderwater()) ci.cancel();
41+
}
42+
43+
@Inject(method = "renderInWallOverlay", at = @At("HEAD"), cancellable = true)
44+
private static void onRenderInWallOverlay(
45+
Sprite sprite,
46+
MatrixStack matrices,
47+
CallbackInfo ci
48+
) {
49+
if (NoRender.INSTANCE.isEnabled() && NoRender.getNoInWall()) ci.cancel();
50+
}
51+
}

common/src/main/kotlin/com/lambda/module/modules/render/NoRender.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,8 @@ object NoRender : Module(
99
defaultTags = setOf(ModuleTag.RENDER)
1010
) {
1111
@JvmStatic val noDarkness by setting("No Darkness", true)
12+
@JvmStatic val noBurning by setting("No Burning Overlay", true)
13+
@JvmStatic val fireOverlayYOffset by setting("Fire Overlay Y Offset", -0.3, -0.8..0.0, 0.1) { !noBurning }
14+
@JvmStatic val noUnderwater by setting("No Underwater Overlay", true)
15+
@JvmStatic val noInWall by setting("No In Wall Overlay", true)
1216
}

0 commit comments

Comments
 (0)