Skip to content

Commit

Permalink
Fix Search
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander01998 committed Mar 2, 2025
1 parent 7ffdf1c commit 6542cbd
Showing 1 changed file with 41 additions and 59 deletions.
100 changes: 41 additions & 59 deletions src/main/java/net/wurstclient/hacks/SearchHack.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,16 @@
import java.util.concurrent.ForkJoinTask;
import java.util.stream.Collectors;

import com.mojang.blaze3d.systems.RenderSystem;

import net.minecraft.block.Block;
import net.minecraft.client.render.VertexFormat.DrawMode;
import net.minecraft.client.render.VertexFormats;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.util.math.BlockPos;
import net.wurstclient.Category;
import net.wurstclient.SearchTags;
import net.wurstclient.WurstRenderLayers;
import net.wurstclient.events.PacketInputListener;
import net.wurstclient.events.RenderListener;
import net.wurstclient.events.UpdateListener;
Expand All @@ -29,6 +34,9 @@
import net.wurstclient.settings.SliderSetting.ValueDisplay;
import net.wurstclient.util.BlockVertexCompiler;
import net.wurstclient.util.ChatUtils;
import net.wurstclient.util.EasyVertexBuffer;
import net.wurstclient.util.RegionPos;
import net.wurstclient.util.RenderUtils;
import net.wurstclient.util.RotationUtils;
import net.wurstclient.util.chunk.ChunkSearcher;
import net.wurstclient.util.chunk.ChunkSearcherCoordinator;
Expand Down Expand Up @@ -59,8 +67,8 @@ public final class SearchHack extends Hack
private ForkJoinTask<HashSet<BlockPos>> getMatchingBlocksTask;
private ForkJoinTask<ArrayList<int[]>> compileVerticesTask;

// private VertexBuffer vertexBuffer;
// private RegionPos bufferRegion;
private EasyVertexBuffer vertexBuffer;
private RegionPos bufferRegion;
private boolean bufferUpToDate;

public SearchHack()
Expand Down Expand Up @@ -107,10 +115,10 @@ protected void onDisable()
coordinator.reset();
forkJoinPool.shutdownNow();

// if(vertexBuffer != null)
// vertexBuffer.close();
// vertexBuffer = null;
// bufferRegion = null;
if(vertexBuffer != null)
vertexBuffer.close();
vertexBuffer = null;
bufferRegion = null;
}

@Override
Expand Down Expand Up @@ -165,33 +173,20 @@ public void onUpdate()
@Override
public void onRender(MatrixStack matrixStack, float partialTicks)
{
// if(vertexBuffer == null || bufferRegion == null)
// return;
//
// // GL settings
// GL11.glEnable(GL11.GL_BLEND);
// GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
// GL11.glEnable(GL11.GL_CULL_FACE);
// GL11.glDisable(GL11.GL_DEPTH_TEST);
//
// matrixStack.push();
// RenderUtils.applyRegionalRenderOffset(matrixStack, bufferRegion);
//
// float[] rainbow = RenderUtils.getRainbowColor();
// RenderUtils.setShaderColor(rainbow, 0.5F);
//
// // RenderSystem.setShader(ShaderProgramKeys.POSITION);
//
// vertexBuffer.bind();
// vertexBuffer.draw(RenderLayer.getDebugQuads());
// VertexBuffer.unbind();
//
// matrixStack.pop();
//
// // GL resets
// RenderSystem.setShaderColor(1, 1, 1, 1);
// GL11.glEnable(GL11.GL_DEPTH_TEST);
// GL11.glDisable(GL11.GL_BLEND);
if(vertexBuffer == null || bufferRegion == null)
return;

float[] rainbow = RenderUtils.getRainbowColor();
RenderUtils.setShaderColor(rainbow, 0.5F);

matrixStack.push();
RenderUtils.applyRegionalRenderOffset(matrixStack, bufferRegion);

vertexBuffer.draw(matrixStack, WurstRenderLayers.ESP_QUADS);

matrixStack.pop();

RenderSystem.setShaderColor(1, 1, 1, 1);
}

private void stopBuildingBuffer()
Expand Down Expand Up @@ -239,33 +234,20 @@ else if(notify)

private void setBufferFromTask()
{
// ArrayList<int[]> vertices = compileVerticesTask.join();
// RegionPos region = RenderUtils.getCameraRegion();
// if(vertexBuffer != null)
// {
// vertexBuffer.close();
// vertexBuffer = null;
// }
//
// if(!vertices.isEmpty())
// {
// Tessellator tessellator = Tessellator.getInstance();
// BufferBuilder bufferBuilder = tessellator
// .begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION);
//
// for(int[] vertex : vertices)
// bufferBuilder.vertex(vertex[0] - region.x(), vertex[1],
// vertex[2] - region.z());
//
// BuiltBuffer buffer = bufferBuilder.endNullable();
//
// vertexBuffer = new VertexBuffer(GlUsage.STATIC_WRITE);
// vertexBuffer.bind();
// vertexBuffer.upload(buffer);
// VertexBuffer.unbind();
// }
ArrayList<int[]> vertices = compileVerticesTask.join();
RegionPos region = RenderUtils.getCameraRegion();

if(vertexBuffer != null)
vertexBuffer.close();

vertexBuffer = EasyVertexBuffer.createAndUpload(DrawMode.QUADS,
VertexFormats.POSITION_COLOR, buffer -> {
for(int[] vertex : vertices)
buffer.vertex(vertex[0] - region.x(), vertex[1],
vertex[2] - region.z()).color(0xFFFFFFFF);
});

bufferUpToDate = true;
// bufferRegion = region;
bufferRegion = region;
}
}

0 comments on commit 6542cbd

Please sign in to comment.