-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Вот сам код BlockESP, Xray без байпаса подойдет для серверов где нету AntiXray, так же Xray работает на автошахтах на большитсва серверах таких как FunTime, HolyWorld и т.д кому чего не хватает пишите коментарий и я обязательно изменю тему так же не кидайтесь тапками сделал для тех кому это нужно, так же для умников что в коде например:
просто делаем
вот BlockESP
вот сам EventRender
евент нужно захукать по пути net.minecraft.client.rendererв классе WorldRenderer в методе updateCameraAndRender
снизу этих строк "GlStateManager.setFogAllowed(true);
RenderSystem.pushMatrix();
RenderSystem.multMatrix(matrixStackIn.getLast().getMatrix());"
и сделать так
GlStateManager.setFogAllowed(true);
RenderSystem.pushMatrix();
RenderSystem.multMatrix(matrixStackIn.getLast().getMatrix())
MainWindow sr = mc.getMainWindow();
EventManager.call(new EventRender(partialTicks, matrixStackIn, sr, EventRender.Type.RENDER3D, matrix4f));
так же для тех у кого нету метода drawBlockBox
Пожалуйста, авторизуйтесь для просмотра ссылки.
просто делаем
Пожалуйста, авторизуйтесь для просмотра ссылки.
вот BlockESP
BlockESP:
package KwishClientzxc.modules.impl.render;
import KwishClientzxc.events.Event;
import KwishClientzxc.events.impl.render.EventRender;
import KwishClientzxc.modules.Function;
import KwishClientzxc.modules.FunctionAnnotation;
import KwishClientzxc.modules.Type;
import KwishClientzxc.modules.settings.imp.BooleanOption;
import KwishClientzxc.modules.settings.imp.ModeSetting;
import KwishClientzxc.modules.settings.imp.MultiBoxSetting;
import KwishClientzxc.util.render.RenderUtil;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.minecart.MinecartEntity;
import net.minecraft.tileentity.*;
import net.minecraft.util.math.BlockPos;
import java.awt.*;
@FunctionAnnotation(name = "BlockESP", type = Type.Render)
public class BlockESP extends Function {
public ModeSetting mode = new ModeSetting("Режим", "Дефолт", "Дефолт", "Xray");
private final MultiBoxSetting blocksSelection = new MultiBoxSetting("Выбрать блоки",
new BooleanOption("Сундуки", true),
new BooleanOption("Эндер Сундуки", true),
new BooleanOption("Спавнера", true),
new BooleanOption("Шалкера", true),
new BooleanOption("Кровати", true),
new BooleanOption("Вагонетка", true),
new BooleanOption("Бочки", true)).setVisible(() -> mode.is("Дефолт"));
public MultiBoxSetting ores = new MultiBoxSetting("Искать",
new BooleanOption("Уголь", false),
new BooleanOption("Железо", false),
new BooleanOption("Редстоун", false),
new BooleanOption("Золото", false),
new BooleanOption("Эмеральды", false),
new BooleanOption("Алмазы", false),
new BooleanOption("Незерит", false)).setVisible(() -> mode.is("Xray"));
public BlockESP() {
addSettings(mode, blocksSelection, ores);
}
@Override
public void onEvent(Event event) {
if (event instanceof EventRender e) {
if (mode.is("Xray")) {
if (e.isRender3D()) {
for (int x = -25; x <= 25; x++) {
for (int y = -25; y <= 25; y++) {
for (int z = -25; z <= 25; z++) {
BlockPos pos = new BlockPos(mc.player.getPosX() + x, mc.player.getPosY() + y, mc.player.getPosZ() + z);
BlockState state = mc.world.getBlockState(pos);
Block block = state.getBlock();
if (block == Blocks.COAL_ORE && ores.get(0)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(12, 12, 12, 255).getRGB());
}
if (block == Blocks.IRON_ORE && ores.get(1)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(122, 122, 122, 255).getRGB());
}
if (block == Blocks.REDSTONE_ORE && ores.get(2)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(255, 82, 82, 255).getRGB());
}
if (block == Blocks.GOLD_ORE && ores.get(3)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(247, 255, 102, 255).getRGB());
}
if (block == Blocks.NETHER_GOLD_ORE && ores.get(3)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(247, 255, 102, 255).getRGB());
}
if (block == Blocks.EMERALD_ORE && ores.get(4)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(116, 252, 101, 255).getRGB());
}
if (block == Blocks.DIAMOND_ORE && ores.get(5)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(77, 219, 255, 255).getRGB());
}
if (block == Blocks.ANCIENT_DEBRIS && ores.get(6)) {
RenderUtil.Render3D.drawBlockBox(pos, new Color(105, 60, 12, 255).getRGB());
}
}
}
}
}
}
else if (mode.is("Дефолт")) {
for (TileEntity t : mc.world.loadedTileEntityList) {
if (t instanceof ChestTileEntity && blocksSelection.get(0)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
if (t instanceof EnderChestTileEntity && blocksSelection.get(1)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
if (t instanceof MobSpawnerTileEntity && blocksSelection.get(2)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
if (t instanceof ShulkerBoxTileEntity && blocksSelection.get(3)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
if (t instanceof BedTileEntity && blocksSelection.get(4)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
if (t instanceof BarrelTileEntity && blocksSelection.get(6)) {
RenderUtil.Render3D.drawBlockBox(t.getPos(), -1);
}
}
for (Entity entity : mc.world.getAllEntities()) {
if (entity instanceof MinecartEntity && blocksSelection.get(5)) {
RenderUtil.Render3D.drawBlockBox(entity.getPosition(), -1);
}
}
}
}
}
}
EventRender:
package KwishClientzxc.events.impl.render;
import KwishClientzxc.events.Event;
import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;
import net.minecraft.client.MainWindow;
import net.minecraft.client.renderer.ActiveRenderInfo;
import net.minecraft.util.math.vector.Matrix4f;
[USER=54968]@data[/USER]
@FieldDefaults(level = AccessLevel.PRIVATE)
public class EventRender extends Event {
public float partialTicks;
public MainWindow scaledResolution;
public Type type;
public MatrixStack matrixStack;
public Matrix4f matrix;
public ActiveRenderInfo activeRenderInfo;
public EventRender(float partialTicks, MatrixStack stack, MainWindow scaledResolution, Type type,Matrix4f matrix) {
this.partialTicks = partialTicks;
this.scaledResolution = scaledResolution;
this.matrixStack = stack;
this.type = type;
this.matrix = matrix;
}
public boolean isRender3D() {
return this.type == Type.RENDER3D;
}
public boolean isRender2D() {
return this.type == Type.RENDER2D;
}
public MatrixStack getMatrixStack() {
return this.matrixStack;
}
public ActiveRenderInfo getActiveRenderInfo() {
return this.activeRenderInfo;
}
public float getPartialTicks() {
return this.partialTicks;
}
public enum Type {
RENDER3D, RENDER2D
}
}
снизу этих строк "GlStateManager.setFogAllowed(true);
RenderSystem.pushMatrix();
RenderSystem.multMatrix(matrixStackIn.getLast().getMatrix());"
и сделать так
GlStateManager.setFogAllowed(true);
RenderSystem.pushMatrix();
RenderSystem.multMatrix(matrixStackIn.getLast().getMatrix())
MainWindow sr = mc.getMainWindow();
EventManager.call(new EventRender(partialTicks, matrixStackIn, sr, EventRender.Type.RENDER3D, matrix4f));
так же для тех у кого нету метода drawBlockBox
drawBlockBox:
public static void drawBlockBox(BlockPos blockPos, int color) {
drawBox(new AxisAlignedBB(blockPos).offset(-mc.getRenderManager().info.getProjectedView().x, -mc.getRenderManager().info.getProjectedView().y, -mc.getRenderManager().info.getProjectedView().z), color);
}
public static void drawBox(AxisAlignedBB bb, int color) {
GL11.glPushMatrix();
GL11.glDisable(GL11.GL_TEXTURE_2D);
GL11.glDisable(GL_DEPTH_TEST);
GL11.glEnable(GL_LINE_SMOOTH);
GL11.glLineWidth(1);
float[] rgb = IntColor.rgb(color);
GlStateManager.color4f(rgb[0], rgb[1], rgb[2], rgb[3]);
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder vertexbuffer = tessellator.getBuffer();
vertexbuffer.begin(3, DefaultVertexFormats.POSITION);
vertexbuffer.pos(bb.minX, bb.minY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.minY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.minY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.minY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.minY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
tessellator.draw();
vertexbuffer.begin(3, DefaultVertexFormats.POSITION);
vertexbuffer.pos(bb.minX, bb.maxY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.maxY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.maxY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.maxY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.maxY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
tessellator.draw();
vertexbuffer.begin(1, DefaultVertexFormats.POSITION);
vertexbuffer.pos(bb.minX, bb.minY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.maxY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.minY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.maxY, bb.minZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.minY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.maxX, bb.maxY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.minY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
vertexbuffer.pos(bb.minX, bb.maxY, bb.maxZ).color(rgb[0], rgb[1], rgb[2], rgb[3]).endVertex();
tessellator.draw();
GlStateManager.color4f(rgb[0], rgb[1], rgb[2], rgb[3]);
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glEnable(GL_DEPTH_TEST);
GL11.glDisable(GL_LINE_SMOOTH);
GL11.glPopMatrix();
}
}
Последнее редактирование: