Исходник ChinaHat Rainbow | Exp 3.1

Начинающий
Статус
Онлайн
Регистрация
17 Июн 2024
Сообщения
147
Реакции[?]
0
Поинты[?]
0

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

Ну пытался тужился и вот высрал /
Пожалуйста, авторизуйтесь для просмотра ссылки.

Java:
package fun.astral.modules.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import com.mojang.blaze3d.systems.RenderSystem;
import fun.astral.client.events.WorldEvent;
import fun.astral.modules.api.Category;
import fun.astral.modules.api.Module;
import fun.astral.modules.api.ModuleAnnotation;
import fun.astral.system.math.MathUtil;
import fun.astral.system.render.color.ColorUtils;
import net.minecraft.client.renderer.BufferBuilder;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.client.settings.PointOfView;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.vector.Vector3d;
import org.lwjgl.opengl.GL11;

@ModuleAnnotation(name = "ChinaHat", category = Category.Render)
public class ChinaHat extends Module {
    private final Tessellator tessellator = Tessellator.getInstance();
    private final BufferBuilder buffer = tessellator.getBuffer();
    private float hue = 0f;

    @Subscribe
    private void onRender(WorldEvent e) {
        if (mc.gameSettings.getPointOfView() == PointOfView.FIRST_PERSON) return;
        float radius = 0.6f;

        hue += 0.005f;
        if (hue > 1.0f) hue = 0f;

        GlStateManager.pushMatrix();

        RenderSystem.translated(-mc.getRenderManager().info.getProjectedView().x, -mc.getRenderManager().info.getProjectedView().y + 0.01, -mc.getRenderManager().info.getProjectedView().z);
        Vector3d interpolated = MathUtil.interpolate(mc.player.getPositionVec(), new Vector3d(mc.player.lastTickPosX, mc.player.lastTickPosY, mc.player.lastTickPosZ), e.getPartialTicks());
        interpolated.y -= 0.05f;
        RenderSystem.translated(interpolated.x, interpolated.y + mc.player.getHeight(), interpolated.z);
        final double yaw = mc.getRenderManager().info.getYaw();

        GL11.glRotatef((float) -yaw, 0f, 1f, 0f);

        RenderSystem.translated(-interpolated.x, -(interpolated.y + mc.player.getHeight()), -interpolated.z);

        RenderSystem.enableBlend();
        RenderSystem.depthMask(false);
        RenderSystem.disableTexture();
        RenderSystem.disableCull();
        RenderSystem.blendFunc(770, 771);
        RenderSystem.shadeModel(7425);
        RenderSystem.lineWidth(3);

        GL11.glEnable(GL11.GL_LINE_SMOOTH);
        GL11.glHint(GL11.GL_LINE_SMOOTH_HINT, GL11.GL_NICEST);
        buffer.begin(GL11.GL_TRIANGLE_FAN, DefaultVertexFormats.POSITION_COLOR);

        float dynamicYPos = (float) (mc.player.getHeight() + 0.3);
        float dynamicYPosRound = (float) (mc.player.getHeight());
        float margin = 0.1F;

        if (WorldTweaks.child) {
            if (!mc.player.isSneaking()) {
                margin = 0;
            }
            radius = 0.4f;
            dynamicYPos = (float) ((mc.player.getHeight() / 2) + 0.4) - margin;
            dynamicYPosRound = (float) ((mc.player.getHeight() / 2) + 0.1) - margin;
        }

        int centerColor = ColorUtils.HSBtoRGB(hue, 0.8f, 1.0f);
        buffer.pos(interpolated.x, interpolated.y + dynamicYPos, interpolated.z)
                .color((centerColor >> 16) & 0xFF, (centerColor >> 8) & 0xFF, centerColor & 0xFF, 128)
                .endVertex();

        for (int i = 0; i <= 360; i++) {
            float x = (float) (interpolated.x + MathHelper.sin((float) Math.toRadians(i)) * radius);
            float z = (float) (interpolated.z + -MathHelper.cos((float) Math.toRadians(i)) * radius);

            float individualHue = (hue + (i / 360f)) % 1.0f;
            int color = ColorUtils.HSBtoRGB(individualHue, 0.8f, 1.0f);

            buffer.pos(x, interpolated.y + dynamicYPosRound, z)
                    .color((color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, 128)
                    .endVertex();
        }
        tessellator.draw();

        buffer.begin(GL11.GL_LINE_LOOP, DefaultVertexFormats.POSITION_COLOR);
        for (int i = 0; i <= 360; i++) {
            float x = (float) (interpolated.x + MathHelper.sin((float) Math.toRadians(i)) * radius);
            float z = (float) (interpolated.z + -MathHelper.cos((float) Math.toRadians(i)) * radius);

            float individualHue = (hue + (i / 360f)) % 1.0f;
            int color = ColorUtils.HSBtoRGB(individualHue, 0.8f, 1.0f);

            buffer.pos(x, interpolated.y + dynamicYPosRound, z)
                    .color((color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, 255)
                    .endVertex();
        }
        tessellator.draw();

        GL11.glHint(GL11.GL_LINE_SMOOTH_HINT, GL11.GL_DONT_CARE);
        GL11.glDisable(GL11.GL_LINE_SMOOTH);
        RenderSystem.enableTexture();
        RenderSystem.disableBlend();
        RenderSystem.enableCull();
        RenderSystem.depthMask(true);
        RenderSystem.shadeModel(7424);
        GlStateManager.popMatrix();
    }
}
Java:
 public static int HSBtoRGB(float hue, float saturation, float brightness) {
        int r = 0, g = 0, b = 0;
        if (saturation == 0) {
            r = g = b = (int) (brightness * 255.0f + 0.5f);
        } else {
            float h = (hue - (float)Math.floor(hue)) * 6.0f;
            float f = h - (float)Math.floor(h);
            float p = brightness * (1.0f - saturation);
            float q = brightness * (1.0f - saturation * f);
            float t = brightness * (1.0f - (saturation * (1.0f - f)));
            switch ((int) h) {
                case 0:
                    r = (int) (brightness * 255.0f + 0.5f);
                    g = (int) (t * 255.0f + 0.5f);
                    b = (int) (p * 255.0f + 0.5f);
                    break;
                case 1:
                    r = (int) (q * 255.0f + 0.5f);
                    g = (int) (brightness * 255.0f + 0.5f);
                    b = (int) (p * 255.0f + 0.5f);
                    break;
                case 2:
                    r = (int) (p * 255.0f + 0.5f);
                    g = (int) (brightness * 255.0f + 0.5f);
                    b = (int) (t * 255.0f + 0.5f);
                    break;
                case 3:
                    r = (int) (p * 255.0f + 0.5f);
                    g = (int) (q * 255.0f + 0.5f);
                    b = (int) (brightness * 255.0f + 0.5f);
                    break;
                case 4:
                    r = (int) (t * 255.0f + 0.5f);
                    g = (int) (p * 255.0f + 0.5f);
                    b = (int) (brightness * 255.0f + 0.5f);
                    break;
                case 5:
                    r = (int) (brightness * 255.0f + 0.5f);
                    g = (int) (p * 255.0f + 0.5f);
                    b = (int) (q * 255.0f + 0.5f);
                    break;
            }
        }
        return 0xff000000 | (r << 16) | (g << 8) | b;
    }
 
Начинающий
Статус
Онлайн
Регистрация
8 Мар 2024
Сообщения
635
Реакции[?]
2
Поинты[?]
2K
Java:
 public static int HSBtoRGB(float hue, float saturation, float brightness) {
        int r = 0, g = 0, b = 0;
        if (saturation == 0) {
            r = g = b = (int) (brightness * 255.0f + 0.5f);
        } else {
            float h = (hue - (float)Math.floor(hue)) * 6.0f;
            float f = h - (float)Math.floor(h);
            float p = brightness * (1.0f - saturation);
            float q = brightness * (1.0f - saturation * f);
            float t = brightness * (1.0f - (saturation * (1.0f - f)));
            switch ((int) h) {
                case 0:
                    r = (int) (brightness * 255.0f + 0.5f);
                    g = (int) (t * 255.0f + 0.5f);
                    b = (int) (p * 255.0f + 0.5f);
                    break;
                case 1:
                    r = (int) (q * 255.0f + 0.5f);
                    g = (int) (brightness * 255.0f + 0.5f);
                    b = (int) (p * 255.0f + 0.5f);
                    break;
                case 2:
                    r = (int) (p * 255.0f + 0.5f);
                    g = (int) (brightness * 255.0f + 0.5f);
                    b = (int) (t * 255.0f + 0.5f);
                    break;
                case 3:
                    r = (int) (p * 255.0f + 0.5f);
                    g = (int) (q * 255.0f + 0.5f);
                    b = (int) (brightness * 255.0f + 0.5f);
                    break;
                case 4:
                    r = (int) (t * 255.0f + 0.5f);
                    g = (int) (p * 255.0f + 0.5f);
                    b = (int) (brightness * 255.0f + 0.5f);
                    break;
                case 5:
                    r = (int) (brightness * 255.0f + 0.5f);
                    g = (int) (p * 255.0f + 0.5f);
                    b = (int) (q * 255.0f + 0.5f);
                    break;
            }
        }
        return 0xff000000 | (r << 16) | (g << 8) | b;
    }
это не спасти
 
Сверху Снизу