Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Визуальная часть BlockHighLight evaware v3 1.21.4

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
6 Июн 2024
Сообщения
39
Реакции
0
Выберите загрузчик игры
  1. Прочие моды
BlockHighLight:
Expand Collapse Copy
package killse.dest.client.features.modules.render;

import killse.dest.api.utils.render.display.BoxRender;
import lombok.Getter;
import net.minecraft.util.hit.BlockHitResult;
import net.minecraft.util.hit.HitResult;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.shape.VoxelShape;
import killse.dest.api.event.EventListener;
import killse.dest.api.event.Listener;
import killse.dest.api.event.events.render.Render3DEvent;
import killse.dest.api.module.Module;
import killse.dest.api.module.ModuleRegister;
import killse.dest.api.module.Category;
import killse.dest.api.module.setting.ModeSetting;
import killse.dest.api.module.setting.BooleanSetting;
import killse.dest.api.utils.render.RenderUtil;
import killse.dest.api.utils.color.UIColors;

import java.awt.*;

@ModuleRegister(name = "BlockHighLight", category = Category.RENDER)
public class BlockHighLight extends Module {
@Getter private static final BlockHighLight instance = new BlockHighLight();

    private final ModeSetting colorMode = new ModeSetting("Цвет").value("Тема").values("Тема");
    private final BooleanSetting filled = new BooleanSetting("Заливка").value(true);

    public BlockHighLight() {
addSettings(colorMode, filled);
    }

@Override
    public void onEvent() {
EventListener render3DEvent = Render3DEvent.getInstance().subscribe(new Listener<>(event -> {
if (!(mc.crosshairTarget instanceof BlockHitResult result)) return;
            if (result.getType() != HitResult.Type.BLOCK) return;
           
            BlockPos pos = result.getBlockPos();
            if (pos == null) return;
           
            Color awtColor;
            if (colorMode.getValue().equals("Тема")) {
awtColor = UIColors.primary();
            } else {
awtColor = Color.BLACK;
            }
           
VoxelShape shape = mc.world.getBlockState(pos).getOutlineShape(mc.world, pos);
            Box box = shape.isEmpty() ? new Box(pos) : shape.getBoundingBox().offset(pos);
           
            if (filled.getValue()) {
Color fillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 50);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, fillColor, BoxRender.Render.FILL, 0.0f);

                float topEpsilon = 0.002f;
                float topThickness = 0.035f;
                float topMinY = (float) box.maxY + topEpsilon;
                float topMaxY = topMinY + topThickness;
                Color topFillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 220);
                RenderUtil.BOX.drawBox((float) box.minX, topMinY, (float) box.minZ, (float) box.maxX, topMaxY, (float) box.maxZ, 1.0f, topFillColor, BoxRender.Render.FILL, 0.0f);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            } else {
RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            }
}));
        addEvents(render3DEvent);
    }

public static BlockHighLight getInstance() {
return instance;
    }
}

BoxRender:
Expand Collapse Copy
// IntelliJ API Decompiler stub source generated from a class file
  // Implementation of methods is not available

package killse.dest.api.utils.render.display;

public class BoxRender implements killse.dest.api.system.interfaces.QuickImports {
private final java.util.List<killse.dest.api.utils.render.display.BoxRender.OutlinedBox> outlinedBoxes;
    private final java.util.List<killse.dest.api.utils.render.display.BoxRender.FilledBox> filledBoxes;
    private final java.util.List<killse.dest.api.utils.render.display.BoxRender.StripedBox> stripedBoxes;

    public BoxRender() { /* compiled code */ }

public void setup3DRender(net.minecraft.client.util.math.MatrixStack matrixStack) { /* compiled code */ }

private void renderFilledBoxes(java.util.List<killse.dest.api.utils.render.display.BoxRender.FilledBox> boxes, net.minecraft.client.render.Frustum frustum) { /* compiled code */ }

private void renderStripedBoxes(java.util.List<killse.dest.api.utils.render.display.BoxRender.StripedBox> boxes, net.minecraft.client.render.Frustum frustum) { /* compiled code */ }

private void renderOutlinedBoxes(java.util.List<killse.dest.api.utils.render.display.BoxRender.OutlinedBox> boxes, net.minecraft.client.render.Frustum frustum) { /* compiled code */ }

private void renderFilled(java.util.List<killse.dest.api.utils.render.display.BoxRender.FilledBox> boxes, net.minecraft.client.render.Frustum frustum) { /* compiled code */ }

private void renderOutlined(java.util.List<killse.dest.api.utils.render.display.BoxRender.OutlinedBox> boxes, net.minecraft.client.render.Frustum frustum) { /* compiled code */ }

private void renderDashedOutlinedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.BufferBuilder buffer, java.awt.Color color, float gapDistance) { /* compiled code */ }

private void renderDashedLine(net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.BufferBuilder buffer, java.awt.Color color, float x1, float y1, float z1, float x2, float y2, float z2, float dashLength, float gapDistance) { /* compiled code */ }

private void renderFilledBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.BufferBuilder buffer, java.awt.Color color) { /* compiled code */ }

private void renderOutlinedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.BufferBuilder buffer, java.awt.Color color) { /* compiled code */ }

private void vertexLine(net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.VertexConsumer buffer, float x1, float y1, float z1, float x2, float y2, float z2, java.awt.Color lineColor) { /* compiled code */ }

private org.joml.Vector3f getNormalVec(float x1, float y1, float z1, float x2, float y2, float z2) { /* compiled code */ }

private net.minecraft.client.util.math.MatrixStack matrixFrom(double x, double y, double z) { /* compiled code */ }

private void vertexQuad(net.minecraft.client.util.math.MatrixStack matrices, net.minecraft.client.render.BufferBuilder buffer, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4, java.awt.Color color) { /* compiled code */ }

public void drawBox(float x1, float y1, float z1, float x2, float y2, float z2, float lineWidth, java.awt.Color color, killse.dest.api.utils.render.display.BoxRender.Render renderMode, float gapDistance) { /* compiled code */ }

public static final record StripedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, float lineWidth, java.awt.Color color, float gapDistance) {
public StripedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, float lineWidth, java.awt.Color color, float gapDistance) { /* compiled code */ }

public net.minecraft.util.math.Vec3d pos() { /* compiled code */ }

public net.minecraft.util.math.Vec3d params() { /* compiled code */ }

public float lineWidth() { /* compiled code */ }

public java.awt.Color color() { /* compiled code */ }

public float gapDistance() { /* compiled code */ }
    }

public static final record FilledBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, java.awt.Color color) {
public FilledBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, java.awt.Color color) { /* compiled code */ }

public net.minecraft.util.math.Vec3d pos() { /* compiled code */ }

public net.minecraft.util.math.Vec3d params() { /* compiled code */ }

public java.awt.Color color() { /* compiled code */ }
    }

public static final record OutlinedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, float lineWidth, java.awt.Color color) {
public OutlinedBox(net.minecraft.util.math.Vec3d pos, net.minecraft.util.math.Vec3d params, float lineWidth, java.awt.Color color) { /* compiled code */ }

public net.minecraft.util.math.Vec3d pos() { /* compiled code */ }

public net.minecraft.util.math.Vec3d params() { /* compiled code */ }

public float lineWidth() { /* compiled code */ }

public java.awt.Color color() { /* compiled code */ }
    }

public static enum Render {
FILL, OUTLINE, STRIPED;

        private Render() { /* compiled code */ }
    }
}
 

Вложения

  • 2026-01-19_15.13.59.png
    2026-01-19_15.13.59.png
    694.4 KB · Просмотры: 240
Последнее редактирование:
BlockHighLight:
Expand Collapse Copy
package killse.dest.client.features.modules.render;

import killse.dest.api.utils.render.display.BoxRender;
import lombok.Getter;
import net.minecraft.util.hit.BlockHitResult;
import net.minecraft.util.hit.HitResult;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.shape.VoxelShape;
import killse.dest.api.event.EventListener;
import killse.dest.api.event.Listener;
import killse.dest.api.event.events.render.Render3DEvent;
import killse.dest.api.module.Module;
import killse.dest.api.module.ModuleRegister;
import killse.dest.api.module.Category;
import killse.dest.api.module.setting.ModeSetting;
import killse.dest.api.module.setting.BooleanSetting;
import killse.dest.api.utils.render.RenderUtil;
import killse.dest.api.utils.color.UIColors;

import java.awt.*;

@ModuleRegister(name = "BlockHighLight", category = Category.RENDER)
public class BlockHighLight extends Module {
    @Getter private static final BlockHighLight instance = new BlockHighLight();

    private final ModeSetting colorMode = new ModeSetting("Цвет").value("Тема").values("Тема");
    private final BooleanSetting filled = new BooleanSetting("Заливка").value(true);

    public BlockHighLight() {
        addSettings(colorMode, filled);
    }

    @Override
    public void onEvent() {
        EventListener render3DEvent = Render3DEvent.getInstance().subscribe(new Listener<>(event -> {
            if (!(mc.crosshairTarget instanceof BlockHitResult result)) return;
            if (result.getType() != HitResult.Type.BLOCK) return;
           
            BlockPos pos = result.getBlockPos();
            if (pos == null) return;
           
            Color awtColor;
            if (colorMode.getValue().equals("Тема")) {
                awtColor = UIColors.primary();
            } else {
                awtColor = Color.BLACK;
            }
           
            VoxelShape shape = mc.world.getBlockState(pos).getOutlineShape(mc.world, pos);
            Box box = shape.isEmpty() ? new Box(pos) : shape.getBoundingBox().offset(pos);
           
            if (filled.getValue()) {
                Color fillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 50);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, fillColor, BoxRender.Render.FILL, 0.0f);

                float topEpsilon = 0.002f;
                float topThickness = 0.035f;
                float topMinY = (float) box.maxY + topEpsilon;
                float topMaxY = topMinY + topThickness;
                Color topFillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 220);
                RenderUtil.BOX.drawBox((float) box.minX, topMinY, (float) box.minZ, (float) box.maxX, topMaxY, (float) box.maxZ, 1.0f, topFillColor, BoxRender.Render.FILL, 0.0f);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            } else {
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            }
        }));
        addEvents(render3DEvent);
    }

    public static BlockHighLight getInstance() {
        return instance;
    }
}
говнище
 
у тебя или на скрине?
у меня
1768921648111.png
 
Последнее редактирование:
BlockHighLight:
Expand Collapse Copy
package killse.dest.client.features.modules.render;

import killse.dest.api.utils.render.display.BoxRender;
import lombok.Getter;
import net.minecraft.util.hit.BlockHitResult;
import net.minecraft.util.hit.HitResult;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.shape.VoxelShape;
import killse.dest.api.event.EventListener;
import killse.dest.api.event.Listener;
import killse.dest.api.event.events.render.Render3DEvent;
import killse.dest.api.module.Module;
import killse.dest.api.module.ModuleRegister;
import killse.dest.api.module.Category;
import killse.dest.api.module.setting.ModeSetting;
import killse.dest.api.module.setting.BooleanSetting;
import killse.dest.api.utils.render.RenderUtil;
import killse.dest.api.utils.color.UIColors;

import java.awt.*;

@ModuleRegister(name = "BlockHighLight", category = Category.RENDER)
public class BlockHighLight extends Module {
@Getter private static final BlockHighLight instance = new BlockHighLight();

    private final ModeSetting colorMode = new ModeSetting("Цвет").value("Тема").values("Тема");
    private final BooleanSetting filled = new BooleanSetting("Заливка").value(true);

    public BlockHighLight() {
addSettings(colorMode, filled);
    }

@Override
    public void onEvent() {
EventListener render3DEvent = Render3DEvent.getInstance().subscribe(new Listener<>(event -> {
if (!(mc.crosshairTarget instanceof BlockHitResult result)) return;
            if (result.getType() != HitResult.Type.BLOCK) return;
           
            BlockPos pos = result.getBlockPos();
            if (pos == null) return;
           
            Color awtColor;
            if (colorMode.getValue().equals("Тема")) {
awtColor = UIColors.primary();
            } else {
awtColor = Color.BLACK;
            }
           
VoxelShape shape = mc.world.getBlockState(pos).getOutlineShape(mc.world, pos);
            Box box = shape.isEmpty() ? new Box(pos) : shape.getBoundingBox().offset(pos);
           
            if (filled.getValue()) {
Color fillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 50);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, fillColor, BoxRender.Render.FILL, 0.0f);

                float topEpsilon = 0.002f;
                float topThickness = 0.035f;
                float topMinY = (float) box.maxY + topEpsilon;
                float topMaxY = topMinY + topThickness;
                Color topFillColor = new Color(awtColor.getRed(), awtColor.getGreen(), awtColor.getBlue(), 220);
                RenderUtil.BOX.drawBox((float) box.minX, topMinY, (float) box.minZ, (float) box.maxX, topMaxY, (float) box.maxZ, 1.0f, topFillColor, BoxRender.Render.FILL, 0.0f);
                RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            } else {
RenderUtil.BOX.drawBox((float) box.minX, (float) box.minY, (float) box.minZ, (float) box.maxX, (float) box.maxY, (float) box.maxZ, 1.5f, awtColor, BoxRender.Render.OUTLINE, 0.0f);
            }
}));
        addEvents(render3DEvent);
    }

public static BlockHighLight getInstance() {
return instance;
    }
}
бро
1768917761347.png
 
Назад
Сверху Снизу