From dbf21cd9e10975f12bc44116294c6b478462f16b Mon Sep 17 00:00:00 2001 From: noramibuu <50046813+noramibu@users.noreply.github.com> Date: Wed, 24 Dec 2025 18:58:05 +0300 Subject: [PATCH] fix duplicate delegates crash in StorageESP --- .../MeshBuilderVertexConsumerProvider.java | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/main/java/meteordevelopment/meteorclient/utils/render/MeshBuilderVertexConsumerProvider.java b/src/main/java/meteordevelopment/meteorclient/utils/render/MeshBuilderVertexConsumerProvider.java index 609a0d45b8..184977019e 100644 --- a/src/main/java/meteordevelopment/meteorclient/utils/render/MeshBuilderVertexConsumerProvider.java +++ b/src/main/java/meteordevelopment/meteorclient/utils/render/MeshBuilderVertexConsumerProvider.java @@ -19,7 +19,42 @@ public MeshBuilderVertexConsumerProvider(MeshBuilder mesh) { @Override public VertexConsumer getBuffer(RenderLayer layer) { - return vertexConsumer; + return new W(vertexConsumer); // new instance each call to fix duplicate delegates + } + + private record W(MeshBuilderVertexConsumer d) implements VertexConsumer { + public VertexConsumer vertex(float x, float y, float z) { + d.vertex(x, y, z); + return this; + } + + public VertexConsumer color(int r, int g, int b, int a) { + return this; + } + + public VertexConsumer color(int c) { + return this; + } + + public VertexConsumer texture(float u, float v) { + return this; + } + + public VertexConsumer overlay(int u, int v) { + return this; + } + + public VertexConsumer light(int u, int v) { + return this; + } + + public VertexConsumer normal(float x, float y, float z) { + return this; + } + + public VertexConsumer lineWidth(float w) { + return this; + } } public void setColor(Color color) {