Визуальная часть Target esp | exp 3.1

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
26 Авг 2025
Сообщения
9
Реакции
0
Выберите загрузчик игры
  1. Прочие моды
даров yougame первый пост надеюсь кому то зайдет чат гптшник
Код:
Expand Collapse Copy
package im.expensive.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.vector.Vector2f;
import net.minecraft.util.math.vector.Vector3d;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventDisplay.Type;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.impl.combat.KillAura;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.Vector4i;
import im.expensive.utils.projections.ProjectionUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;

@FunctionRegister(
        name = "TargetESP",
        type = Category.Render
)
public class TargetESP extends Function {
    private final KillAura killAura;
    public ModeSetting mod = new ModeSetting("Мод", "Демон", new String[]{"Демон", "Души", "Вихрь"});
    public SliderSetting speed = new SliderSetting("Скорость", 3.0F, 0.7F, 9.0F, 1.0F);
    public SliderSetting size = new SliderSetting("Размер", 30.0F, 5.0F, 140.0F, 1.0F);
    public SliderSetting bright = new SliderSetting("Яркость", 255.0F, 1.0F, 255.0F, 1.0F);

    public TargetESP(KillAura killAura) {
        this.killAura = killAura;
        this.addSettings(new Setting[]{this.mod, this.speed, this.size, this.bright});
    }

    @Subscribe
    private void onDisplay(EventDisplay e) {
        if (this.mod.is("Демон")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                double time = (double)System.currentTimeMillis() / 1000.0;
                float targetSize = 80.0F;
                Vector3d interpolated = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector2f targetPos = ProjectionUtil.project(interpolated.x, interpolated.y + (double)(this.killAura.getTarget().getHeight() / 2.0F), interpolated.z);

                ResourceLocation demonImage = new ResourceLocation("expensive/images/hud/glow.png");
                int redColor = ColorUtils.rgb(255, 50, 50);
                int darkRedColor = ColorUtils.rgb(150, 0, 0);

                // Основной демонический круг
                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)time * 180.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - targetSize / 2.0F, targetPos.y - targetSize / 2.0F, targetSize, targetSize,
                        new Vector4i(ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200),
                                ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200)));
                GlStateManager.popMatrix();

                // Вращающиеся шипы
                for(int i = 0; i < 6; i++) {
                    double spikeAngle = (Math.PI * 2 / 6) * i + time * 2;
                    float spikeSize = 40.0F;

                    Vector2f spikePos = new Vector2f(
                            targetPos.x + (float)Math.cos(spikeAngle) * (targetSize/2 + 10),
                            targetPos.y + (float)Math.sin(spikeAngle) * (targetSize/2 + 10)
                    );

                    GlStateManager.pushMatrix();
                    GlStateManager.translatef(spikePos.x, spikePos.y, 0.0F);
                    GlStateManager.rotatef((float)(time * 360 + i * 60), 0.0F, 0.0F, 1.0F);
                    GlStateManager.translatef(-spikePos.x, -spikePos.y, 0.0F);
                    DisplayUtils.drawImage(demonImage, spikePos.x - spikeSize / 2.0F, spikePos.y - spikeSize / 2.0F, spikeSize, spikeSize,
                            new Vector4i(ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180),
                                    ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180)));
                    GlStateManager.popMatrix();
                }

                // Пульсирующее ядро
                float pulseSize = 20.0F + (float)Math.sin(time * 5) * 5.0F;
                int pulseAlpha = 150 + (int)(Math.sin(time * 8) * 50);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)-time * 120.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - pulseSize / 2.0F, targetPos.y - pulseSize / 2.0F, pulseSize, pulseSize,
                        new Vector4i(ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Души")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                float size = sizik;
                int brightness = yarkost;

                Vector3d basePos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                float height = this.killAura.getTarget().getHeight();

                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");
                int whiteColor = ColorUtils.rgb(255, 255, 255);
                int blueColor = ColorUtils.rgb(100, 200, 255);

                // 8 душ вокруг цели
                for(int i = 0; i < 8; i++) {
                    double angle = (Math.PI * 2 / 8) * i + time;
                    double radius = 1.2;

                    Vector3d ghostPos = basePos.add(
                            Math.cos(angle) * radius,
                            height * 0.7 + Math.sin(time * 2 + i) * 0.3,
                            Math.sin(angle) * radius
                    );

                    Vector2f screenPos = ProjectionUtil.project(ghostPos.x, ghostPos.y, ghostPos.z);

                    // Траил эффект для каждой души
                    for(int j = 0; j < 15; j++) {
                        float alpha = (float)(brightness - j * 15);
                        if (alpha < 0.0F) alpha = 0.0F;

                        float trailSize = size * (1.0F - (float)j * 0.05F);
                        double trailOffset = j * 0.1;

                        Vector3d trailPos = basePos.add(
                                Math.cos(angle - trailOffset) * (radius - j * 0.05),
                                height * 0.7 + Math.sin((time - trailOffset) * 2 + i) * 0.3,
                                Math.sin(angle - trailOffset) * (radius - j * 0.05)
                        );

                        Vector2f trailScreenPos = ProjectionUtil.project(trailPos.x, trailPos.y, trailPos.z);

                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(trailScreenPos.x, trailScreenPos.y, 0.0F);
                        GlStateManager.rotatef((float)(time * 100 + i * 45), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-trailScreenPos.x, -trailScreenPos.y, 0.0F);
                        DisplayUtils.drawImage(image, trailScreenPos.x - trailSize / 2.0F, trailScreenPos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha),
                                        ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }

                // Центральная душа
                Vector3d centerPos = basePos.add(0, height * 0.5, 0);
                Vector2f centerScreenPos = ProjectionUtil.project(centerPos.x, centerPos.y, centerPos.z);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(centerScreenPos.x, centerScreenPos.y, 0.0F);
                GlStateManager.rotatef((float)(time * 200), 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-centerScreenPos.x, -centerScreenPos.y, 0.0F);
                DisplayUtils.drawImage(image, centerScreenPos.x - size / 2.0F, centerScreenPos.y - size / 2.0F, size, size,
                        new Vector4i(ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness),
                                ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Вихрь")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                double sin = Math.sin(time);
                double cos = Math.cos(time);
                float size = sizik;
                int brightness = yarkost;
                Vector3d headPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)this.killAura.getTarget().getHeight(), 0.0);
                Vector3d bodyPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)(this.killAura.getTarget().getHeight() / 2.0F), 0.0);
                Vector3d legPos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector3d[] upperPositions = new Vector3d[]{bodyPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions = new Vector3d[]{legPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions2 = new Vector3d[]{headPos.add(0.0, 0.5, 0.0)};
                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");

                for(int j = 0; j < 40; ++j) {
                    float alpha = (float)(brightness - j * 5);
                    if (alpha < 0.0F) {
                        alpha = 0.0F;
                    }

                    float trailSize = size * (1.0F - (float)j * 0.02F);
                    double trailTime = time - (double)j * 0.1;
                    double trailSin = Math.sin(trailTime);
                    double trailCos = Math.cos(trailTime);
                    float angleOffset = (float)j * 7.2F;

                    int i;
                    Vector3d pos3d;
                    Vector2f pos;

                    // Средний уровень
                    for(i = 0; i < upperPositions.length; ++i) {
                        pos3d = upperPositions[i].add(0.0, -1.5 * 0.26, 0.0);
                        pos = ProjectionUtil.project(pos3d.x + trailCos * 0.5, pos3d.y, pos3d.z + trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Высокий уровень
                    for(i = 0; i < lowerPositions.length; ++i) {
                        pos3d = lowerPositions[i].add(0.0, 3.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Нижний уровень
                    for(i = 0; i < lowerPositions2.length; ++i) {
                        pos3d = lowerPositions2[i].add(0.0, -6.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }
            }
        }
    }
}

ss:
ad)
БЛЯТЬ ЭТО (NO AD)
 

Вложения

  • glow.png
    glow.png
    27.3 KB · Просмотры: 84
даров yougame первый пост надеюсь кому то зайдет чат гптшник
Код:
Expand Collapse Copy
package im.expensive.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.vector.Vector2f;
import net.minecraft.util.math.vector.Vector3d;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventDisplay.Type;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.impl.combat.KillAura;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.Vector4i;
import im.expensive.utils.projections.ProjectionUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;

@FunctionRegister(
        name = "TargetESP",
        type = Category.Render
)
public class TargetESP extends Function {
    private final KillAura killAura;
    public ModeSetting mod = new ModeSetting("Мод", "Демон", new String[]{"Демон", "Души", "Вихрь"});
    public SliderSetting speed = new SliderSetting("Скорость", 3.0F, 0.7F, 9.0F, 1.0F);
    public SliderSetting size = new SliderSetting("Размер", 30.0F, 5.0F, 140.0F, 1.0F);
    public SliderSetting bright = new SliderSetting("Яркость", 255.0F, 1.0F, 255.0F, 1.0F);

    public TargetESP(KillAura killAura) {
        this.killAura = killAura;
        this.addSettings(new Setting[]{this.mod, this.speed, this.size, this.bright});
    }

    @Subscribe
    private void onDisplay(EventDisplay e) {
        if (this.mod.is("Демон")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                double time = (double)System.currentTimeMillis() / 1000.0;
                float targetSize = 80.0F;
                Vector3d interpolated = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector2f targetPos = ProjectionUtil.project(interpolated.x, interpolated.y + (double)(this.killAura.getTarget().getHeight() / 2.0F), interpolated.z);

                ResourceLocation demonImage = new ResourceLocation("expensive/images/hud/glow.png");
                int redColor = ColorUtils.rgb(255, 50, 50);
                int darkRedColor = ColorUtils.rgb(150, 0, 0);

                // Основной демонический круг
                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)time * 180.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - targetSize / 2.0F, targetPos.y - targetSize / 2.0F, targetSize, targetSize,
                        new Vector4i(ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200),
                                ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200)));
                GlStateManager.popMatrix();

                // Вращающиеся шипы
                for(int i = 0; i < 6; i++) {
                    double spikeAngle = (Math.PI * 2 / 6) * i + time * 2;
                    float spikeSize = 40.0F;

                    Vector2f spikePos = new Vector2f(
                            targetPos.x + (float)Math.cos(spikeAngle) * (targetSize/2 + 10),
                            targetPos.y + (float)Math.sin(spikeAngle) * (targetSize/2 + 10)
                    );

                    GlStateManager.pushMatrix();
                    GlStateManager.translatef(spikePos.x, spikePos.y, 0.0F);
                    GlStateManager.rotatef((float)(time * 360 + i * 60), 0.0F, 0.0F, 1.0F);
                    GlStateManager.translatef(-spikePos.x, -spikePos.y, 0.0F);
                    DisplayUtils.drawImage(demonImage, spikePos.x - spikeSize / 2.0F, spikePos.y - spikeSize / 2.0F, spikeSize, spikeSize,
                            new Vector4i(ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180),
                                    ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180)));
                    GlStateManager.popMatrix();
                }

                // Пульсирующее ядро
                float pulseSize = 20.0F + (float)Math.sin(time * 5) * 5.0F;
                int pulseAlpha = 150 + (int)(Math.sin(time * 8) * 50);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)-time * 120.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - pulseSize / 2.0F, targetPos.y - pulseSize / 2.0F, pulseSize, pulseSize,
                        new Vector4i(ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Души")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                float size = sizik;
                int brightness = yarkost;

                Vector3d basePos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                float height = this.killAura.getTarget().getHeight();

                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");
                int whiteColor = ColorUtils.rgb(255, 255, 255);
                int blueColor = ColorUtils.rgb(100, 200, 255);

                // 8 душ вокруг цели
                for(int i = 0; i < 8; i++) {
                    double angle = (Math.PI * 2 / 8) * i + time;
                    double radius = 1.2;

                    Vector3d ghostPos = basePos.add(
                            Math.cos(angle) * radius,
                            height * 0.7 + Math.sin(time * 2 + i) * 0.3,
                            Math.sin(angle) * radius
                    );

                    Vector2f screenPos = ProjectionUtil.project(ghostPos.x, ghostPos.y, ghostPos.z);

                    // Траил эффект для каждой души
                    for(int j = 0; j < 15; j++) {
                        float alpha = (float)(brightness - j * 15);
                        if (alpha < 0.0F) alpha = 0.0F;

                        float trailSize = size * (1.0F - (float)j * 0.05F);
                        double trailOffset = j * 0.1;

                        Vector3d trailPos = basePos.add(
                                Math.cos(angle - trailOffset) * (radius - j * 0.05),
                                height * 0.7 + Math.sin((time - trailOffset) * 2 + i) * 0.3,
                                Math.sin(angle - trailOffset) * (radius - j * 0.05)
                        );

                        Vector2f trailScreenPos = ProjectionUtil.project(trailPos.x, trailPos.y, trailPos.z);

                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(trailScreenPos.x, trailScreenPos.y, 0.0F);
                        GlStateManager.rotatef((float)(time * 100 + i * 45), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-trailScreenPos.x, -trailScreenPos.y, 0.0F);
                        DisplayUtils.drawImage(image, trailScreenPos.x - trailSize / 2.0F, trailScreenPos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha),
                                        ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }

                // Центральная душа
                Vector3d centerPos = basePos.add(0, height * 0.5, 0);
                Vector2f centerScreenPos = ProjectionUtil.project(centerPos.x, centerPos.y, centerPos.z);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(centerScreenPos.x, centerScreenPos.y, 0.0F);
                GlStateManager.rotatef((float)(time * 200), 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-centerScreenPos.x, -centerScreenPos.y, 0.0F);
                DisplayUtils.drawImage(image, centerScreenPos.x - size / 2.0F, centerScreenPos.y - size / 2.0F, size, size,
                        new Vector4i(ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness),
                                ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Вихрь")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                double sin = Math.sin(time);
                double cos = Math.cos(time);
                float size = sizik;
                int brightness = yarkost;
                Vector3d headPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)this.killAura.getTarget().getHeight(), 0.0);
                Vector3d bodyPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)(this.killAura.getTarget().getHeight() / 2.0F), 0.0);
                Vector3d legPos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector3d[] upperPositions = new Vector3d[]{bodyPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions = new Vector3d[]{legPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions2 = new Vector3d[]{headPos.add(0.0, 0.5, 0.0)};
                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");

                for(int j = 0; j < 40; ++j) {
                    float alpha = (float)(brightness - j * 5);
                    if (alpha < 0.0F) {
                        alpha = 0.0F;
                    }

                    float trailSize = size * (1.0F - (float)j * 0.02F);
                    double trailTime = time - (double)j * 0.1;
                    double trailSin = Math.sin(trailTime);
                    double trailCos = Math.cos(trailTime);
                    float angleOffset = (float)j * 7.2F;

                    int i;
                    Vector3d pos3d;
                    Vector2f pos;

                    // Средний уровень
                    for(i = 0; i < upperPositions.length; ++i) {
                        pos3d = upperPositions[i].add(0.0, -1.5 * 0.26, 0.0);
                        pos = ProjectionUtil.project(pos3d.x + trailCos * 0.5, pos3d.y, pos3d.z + trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Высокий уровень
                    for(i = 0; i < lowerPositions.length; ++i) {
                        pos3d = lowerPositions[i].add(0.0, 3.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Нижний уровень
                    for(i = 0; i < lowerPositions2.length; ++i) {
                        pos3d = lowerPositions2[i].add(0.0, -6.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }
            }
        }
    }
}

ss:
ad)
БЛЯТЬ ЭТО (NO AD)
щя чекним эту херню
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
даров yougame первый пост надеюсь кому то зайдет чат гптшник
Код:
Expand Collapse Copy
package im.expensive.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.vector.Vector2f;
import net.minecraft.util.math.vector.Vector3d;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventDisplay.Type;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.impl.combat.KillAura;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.Vector4i;
import im.expensive.utils.projections.ProjectionUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;

@FunctionRegister(
        name = "TargetESP",
        type = Category.Render
)
public class TargetESP extends Function {
    private final KillAura killAura;
    public ModeSetting mod = new ModeSetting("Мод", "Демон", new String[]{"Демон", "Души", "Вихрь"});
    public SliderSetting speed = new SliderSetting("Скорость", 3.0F, 0.7F, 9.0F, 1.0F);
    public SliderSetting size = new SliderSetting("Размер", 30.0F, 5.0F, 140.0F, 1.0F);
    public SliderSetting bright = new SliderSetting("Яркость", 255.0F, 1.0F, 255.0F, 1.0F);

    public TargetESP(KillAura killAura) {
        this.killAura = killAura;
        this.addSettings(new Setting[]{this.mod, this.speed, this.size, this.bright});
    }

    @Subscribe
    private void onDisplay(EventDisplay e) {
        if (this.mod.is("Демон")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                double time = (double)System.currentTimeMillis() / 1000.0;
                float targetSize = 80.0F;
                Vector3d interpolated = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector2f targetPos = ProjectionUtil.project(interpolated.x, interpolated.y + (double)(this.killAura.getTarget().getHeight() / 2.0F), interpolated.z);

                ResourceLocation demonImage = new ResourceLocation("expensive/images/hud/glow.png");
                int redColor = ColorUtils.rgb(255, 50, 50);
                int darkRedColor = ColorUtils.rgb(150, 0, 0);

                // Основной демонический круг
                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)time * 180.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - targetSize / 2.0F, targetPos.y - targetSize / 2.0F, targetSize, targetSize,
                        new Vector4i(ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200),
                                ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200)));
                GlStateManager.popMatrix();

                // Вращающиеся шипы
                for(int i = 0; i < 6; i++) {
                    double spikeAngle = (Math.PI * 2 / 6) * i + time * 2;
                    float spikeSize = 40.0F;

                    Vector2f spikePos = new Vector2f(
                            targetPos.x + (float)Math.cos(spikeAngle) * (targetSize/2 + 10),
                            targetPos.y + (float)Math.sin(spikeAngle) * (targetSize/2 + 10)
                    );

                    GlStateManager.pushMatrix();
                    GlStateManager.translatef(spikePos.x, spikePos.y, 0.0F);
                    GlStateManager.rotatef((float)(time * 360 + i * 60), 0.0F, 0.0F, 1.0F);
                    GlStateManager.translatef(-spikePos.x, -spikePos.y, 0.0F);
                    DisplayUtils.drawImage(demonImage, spikePos.x - spikeSize / 2.0F, spikePos.y - spikeSize / 2.0F, spikeSize, spikeSize,
                            new Vector4i(ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180),
                                    ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180)));
                    GlStateManager.popMatrix();
                }

                // Пульсирующее ядро
                float pulseSize = 20.0F + (float)Math.sin(time * 5) * 5.0F;
                int pulseAlpha = 150 + (int)(Math.sin(time * 8) * 50);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)-time * 120.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - pulseSize / 2.0F, targetPos.y - pulseSize / 2.0F, pulseSize, pulseSize,
                        new Vector4i(ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Души")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                float size = sizik;
                int brightness = yarkost;

                Vector3d basePos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                float height = this.killAura.getTarget().getHeight();

                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");
                int whiteColor = ColorUtils.rgb(255, 255, 255);
                int blueColor = ColorUtils.rgb(100, 200, 255);

                // 8 душ вокруг цели
                for(int i = 0; i < 8; i++) {
                    double angle = (Math.PI * 2 / 8) * i + time;
                    double radius = 1.2;

                    Vector3d ghostPos = basePos.add(
                            Math.cos(angle) * radius,
                            height * 0.7 + Math.sin(time * 2 + i) * 0.3,
                            Math.sin(angle) * radius
                    );

                    Vector2f screenPos = ProjectionUtil.project(ghostPos.x, ghostPos.y, ghostPos.z);

                    // Траил эффект для каждой души
                    for(int j = 0; j < 15; j++) {
                        float alpha = (float)(brightness - j * 15);
                        if (alpha < 0.0F) alpha = 0.0F;

                        float trailSize = size * (1.0F - (float)j * 0.05F);
                        double trailOffset = j * 0.1;

                        Vector3d trailPos = basePos.add(
                                Math.cos(angle - trailOffset) * (radius - j * 0.05),
                                height * 0.7 + Math.sin((time - trailOffset) * 2 + i) * 0.3,
                                Math.sin(angle - trailOffset) * (radius - j * 0.05)
                        );

                        Vector2f trailScreenPos = ProjectionUtil.project(trailPos.x, trailPos.y, trailPos.z);

                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(trailScreenPos.x, trailScreenPos.y, 0.0F);
                        GlStateManager.rotatef((float)(time * 100 + i * 45), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-trailScreenPos.x, -trailScreenPos.y, 0.0F);
                        DisplayUtils.drawImage(image, trailScreenPos.x - trailSize / 2.0F, trailScreenPos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha),
                                        ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }

                // Центральная душа
                Vector3d centerPos = basePos.add(0, height * 0.5, 0);
                Vector2f centerScreenPos = ProjectionUtil.project(centerPos.x, centerPos.y, centerPos.z);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(centerScreenPos.x, centerScreenPos.y, 0.0F);
                GlStateManager.rotatef((float)(time * 200), 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-centerScreenPos.x, -centerScreenPos.y, 0.0F);
                DisplayUtils.drawImage(image, centerScreenPos.x - size / 2.0F, centerScreenPos.y - size / 2.0F, size, size,
                        new Vector4i(ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness),
                                ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Вихрь")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                double sin = Math.sin(time);
                double cos = Math.cos(time);
                float size = sizik;
                int brightness = yarkost;
                Vector3d headPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)this.killAura.getTarget().getHeight(), 0.0);
                Vector3d bodyPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)(this.killAura.getTarget().getHeight() / 2.0F), 0.0);
                Vector3d legPos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector3d[] upperPositions = new Vector3d[]{bodyPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions = new Vector3d[]{legPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions2 = new Vector3d[]{headPos.add(0.0, 0.5, 0.0)};
                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");

                for(int j = 0; j < 40; ++j) {
                    float alpha = (float)(brightness - j * 5);
                    if (alpha < 0.0F) {
                        alpha = 0.0F;
                    }

                    float trailSize = size * (1.0F - (float)j * 0.02F);
                    double trailTime = time - (double)j * 0.1;
                    double trailSin = Math.sin(trailTime);
                    double trailCos = Math.cos(trailTime);
                    float angleOffset = (float)j * 7.2F;

                    int i;
                    Vector3d pos3d;
                    Vector2f pos;

                    // Средний уровень
                    for(i = 0; i < upperPositions.length; ++i) {
                        pos3d = upperPositions[i].add(0.0, -1.5 * 0.26, 0.0);
                        pos = ProjectionUtil.project(pos3d.x + trailCos * 0.5, pos3d.y, pos3d.z + trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Высокий уровень
                    for(i = 0; i < lowerPositions.length; ++i) {
                        pos3d = lowerPositions[i].add(0.0, 3.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Нижний уровень
                    for(i = 0; i < lowerPositions2.length; ++i) {
                        pos3d = lowerPositions2[i].add(0.0, -6.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }
            }
        }
    }
}

ss:
ad)
БЛЯТЬ ЭТО (NO AD)
фу блять, /del
 
даров yougame первый пост надеюсь кому то зайдет чат гптшник
Код:
Expand Collapse Copy
package im.expensive.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.vector.Vector2f;
import net.minecraft.util.math.vector.Vector3d;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventDisplay.Type;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.impl.combat.KillAura;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.Vector4i;
import im.expensive.utils.projections.ProjectionUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;

@FunctionRegister(
        name = "TargetESP",
        type = Category.Render
)
public class TargetESP extends Function {
    private final KillAura killAura;
    public ModeSetting mod = new ModeSetting("Мод", "Демон", new String[]{"Демон", "Души", "Вихрь"});
    public SliderSetting speed = new SliderSetting("Скорость", 3.0F, 0.7F, 9.0F, 1.0F);
    public SliderSetting size = new SliderSetting("Размер", 30.0F, 5.0F, 140.0F, 1.0F);
    public SliderSetting bright = new SliderSetting("Яркость", 255.0F, 1.0F, 255.0F, 1.0F);

    public TargetESP(KillAura killAura) {
        this.killAura = killAura;
        this.addSettings(new Setting[]{this.mod, this.speed, this.size, this.bright});
    }

    @Subscribe
    private void onDisplay(EventDisplay e) {
        if (this.mod.is("Демон")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                double time = (double)System.currentTimeMillis() / 1000.0;
                float targetSize = 80.0F;
                Vector3d interpolated = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector2f targetPos = ProjectionUtil.project(interpolated.x, interpolated.y + (double)(this.killAura.getTarget().getHeight() / 2.0F), interpolated.z);

                ResourceLocation demonImage = new ResourceLocation("expensive/images/hud/glow.png");
                int redColor = ColorUtils.rgb(255, 50, 50);
                int darkRedColor = ColorUtils.rgb(150, 0, 0);

                // Основной демонический круг
                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)time * 180.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - targetSize / 2.0F, targetPos.y - targetSize / 2.0F, targetSize, targetSize,
                        new Vector4i(ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200),
                                ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200)));
                GlStateManager.popMatrix();

                // Вращающиеся шипы
                for(int i = 0; i < 6; i++) {
                    double spikeAngle = (Math.PI * 2 / 6) * i + time * 2;
                    float spikeSize = 40.0F;

                    Vector2f spikePos = new Vector2f(
                            targetPos.x + (float)Math.cos(spikeAngle) * (targetSize/2 + 10),
                            targetPos.y + (float)Math.sin(spikeAngle) * (targetSize/2 + 10)
                    );

                    GlStateManager.pushMatrix();
                    GlStateManager.translatef(spikePos.x, spikePos.y, 0.0F);
                    GlStateManager.rotatef((float)(time * 360 + i * 60), 0.0F, 0.0F, 1.0F);
                    GlStateManager.translatef(-spikePos.x, -spikePos.y, 0.0F);
                    DisplayUtils.drawImage(demonImage, spikePos.x - spikeSize / 2.0F, spikePos.y - spikeSize / 2.0F, spikeSize, spikeSize,
                            new Vector4i(ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180),
                                    ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180)));
                    GlStateManager.popMatrix();
                }

                // Пульсирующее ядро
                float pulseSize = 20.0F + (float)Math.sin(time * 5) * 5.0F;
                int pulseAlpha = 150 + (int)(Math.sin(time * 8) * 50);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)-time * 120.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - pulseSize / 2.0F, targetPos.y - pulseSize / 2.0F, pulseSize, pulseSize,
                        new Vector4i(ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Души")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                float size = sizik;
                int brightness = yarkost;

                Vector3d basePos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                float height = this.killAura.getTarget().getHeight();

                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");
                int whiteColor = ColorUtils.rgb(255, 255, 255);
                int blueColor = ColorUtils.rgb(100, 200, 255);

                // 8 душ вокруг цели
                for(int i = 0; i < 8; i++) {
                    double angle = (Math.PI * 2 / 8) * i + time;
                    double radius = 1.2;

                    Vector3d ghostPos = basePos.add(
                            Math.cos(angle) * radius,
                            height * 0.7 + Math.sin(time * 2 + i) * 0.3,
                            Math.sin(angle) * radius
                    );

                    Vector2f screenPos = ProjectionUtil.project(ghostPos.x, ghostPos.y, ghostPos.z);

                    // Траил эффект для каждой души
                    for(int j = 0; j < 15; j++) {
                        float alpha = (float)(brightness - j * 15);
                        if (alpha < 0.0F) alpha = 0.0F;

                        float trailSize = size * (1.0F - (float)j * 0.05F);
                        double trailOffset = j * 0.1;

                        Vector3d trailPos = basePos.add(
                                Math.cos(angle - trailOffset) * (radius - j * 0.05),
                                height * 0.7 + Math.sin((time - trailOffset) * 2 + i) * 0.3,
                                Math.sin(angle - trailOffset) * (radius - j * 0.05)
                        );

                        Vector2f trailScreenPos = ProjectionUtil.project(trailPos.x, trailPos.y, trailPos.z);

                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(trailScreenPos.x, trailScreenPos.y, 0.0F);
                        GlStateManager.rotatef((float)(time * 100 + i * 45), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-trailScreenPos.x, -trailScreenPos.y, 0.0F);
                        DisplayUtils.drawImage(image, trailScreenPos.x - trailSize / 2.0F, trailScreenPos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha),
                                        ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }

                // Центральная душа
                Vector3d centerPos = basePos.add(0, height * 0.5, 0);
                Vector2f centerScreenPos = ProjectionUtil.project(centerPos.x, centerPos.y, centerPos.z);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(centerScreenPos.x, centerScreenPos.y, 0.0F);
                GlStateManager.rotatef((float)(time * 200), 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-centerScreenPos.x, -centerScreenPos.y, 0.0F);
                DisplayUtils.drawImage(image, centerScreenPos.x - size / 2.0F, centerScreenPos.y - size / 2.0F, size, size,
                        new Vector4i(ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness),
                                ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Вихрь")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                double sin = Math.sin(time);
                double cos = Math.cos(time);
                float size = sizik;
                int brightness = yarkost;
                Vector3d headPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)this.killAura.getTarget().getHeight(), 0.0);
                Vector3d bodyPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)(this.killAura.getTarget().getHeight() / 2.0F), 0.0);
                Vector3d legPos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector3d[] upperPositions = new Vector3d[]{bodyPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions = new Vector3d[]{legPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions2 = new Vector3d[]{headPos.add(0.0, 0.5, 0.0)};
                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");

                for(int j = 0; j < 40; ++j) {
                    float alpha = (float)(brightness - j * 5);
                    if (alpha < 0.0F) {
                        alpha = 0.0F;
                    }

                    float trailSize = size * (1.0F - (float)j * 0.02F);
                    double trailTime = time - (double)j * 0.1;
                    double trailSin = Math.sin(trailTime);
                    double trailCos = Math.cos(trailTime);
                    float angleOffset = (float)j * 7.2F;

                    int i;
                    Vector3d pos3d;
                    Vector2f pos;

                    // Средний уровень
                    for(i = 0; i < upperPositions.length; ++i) {
                        pos3d = upperPositions[i].add(0.0, -1.5 * 0.26, 0.0);
                        pos = ProjectionUtil.project(pos3d.x + trailCos * 0.5, pos3d.y, pos3d.z + trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Высокий уровень
                    for(i = 0; i < lowerPositions.length; ++i) {
                        pos3d = lowerPositions[i].add(0.0, 3.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Нижний уровень
                    for(i = 0; i < lowerPositions2.length; ++i) {
                        pos3d = lowerPositions2[i].add(0.0, -6.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }
            }
        }
    }
}

ss: ad)
БЛЯТЬ ЭТО (NO AD)

даров yougame первый пост надеюсь кому то зайдет чат гптшник
Код:
Expand Collapse Copy
package im.expensive.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.vector.Vector2f;
import net.minecraft.util.math.vector.Vector3d;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventDisplay.Type;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.impl.combat.KillAura;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.Vector4i;
import im.expensive.utils.projections.ProjectionUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;

@FunctionRegister(
        name = "TargetESP",
        type = Category.Render
)
public class TargetESP extends Function {
    private final KillAura killAura;
    public ModeSetting mod = new ModeSetting("Мод", "Демон", new String[]{"Демон", "Души", "Вихрь"});
    public SliderSetting speed = new SliderSetting("Скорость", 3.0F, 0.7F, 9.0F, 1.0F);
    public SliderSetting size = new SliderSetting("Размер", 30.0F, 5.0F, 140.0F, 1.0F);
    public SliderSetting bright = new SliderSetting("Яркость", 255.0F, 1.0F, 255.0F, 1.0F);

    public TargetESP(KillAura killAura) {
        this.killAura = killAura;
        this.addSettings(new Setting[]{this.mod, this.speed, this.size, this.bright});
    }

    @Subscribe
    private void onDisplay(EventDisplay e) {
        if (this.mod.is("Демон")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                double time = (double)System.currentTimeMillis() / 1000.0;
                float targetSize = 80.0F;
                Vector3d interpolated = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector2f targetPos = ProjectionUtil.project(interpolated.x, interpolated.y + (double)(this.killAura.getTarget().getHeight() / 2.0F), interpolated.z);

                ResourceLocation demonImage = new ResourceLocation("expensive/images/hud/glow.png");
                int redColor = ColorUtils.rgb(255, 50, 50);
                int darkRedColor = ColorUtils.rgb(150, 0, 0);

                // Основной демонический круг
                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)time * 180.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - targetSize / 2.0F, targetPos.y - targetSize / 2.0F, targetSize, targetSize,
                        new Vector4i(ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200),
                                ColorUtils.setAlpha(redColor, 200),
                                ColorUtils.setAlpha(darkRedColor, 200)));
                GlStateManager.popMatrix();

                // Вращающиеся шипы
                for(int i = 0; i < 6; i++) {
                    double spikeAngle = (Math.PI * 2 / 6) * i + time * 2;
                    float spikeSize = 40.0F;

                    Vector2f spikePos = new Vector2f(
                            targetPos.x + (float)Math.cos(spikeAngle) * (targetSize/2 + 10),
                            targetPos.y + (float)Math.sin(spikeAngle) * (targetSize/2 + 10)
                    );

                    GlStateManager.pushMatrix();
                    GlStateManager.translatef(spikePos.x, spikePos.y, 0.0F);
                    GlStateManager.rotatef((float)(time * 360 + i * 60), 0.0F, 0.0F, 1.0F);
                    GlStateManager.translatef(-spikePos.x, -spikePos.y, 0.0F);
                    DisplayUtils.drawImage(demonImage, spikePos.x - spikeSize / 2.0F, spikePos.y - spikeSize / 2.0F, spikeSize, spikeSize,
                            new Vector4i(ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180),
                                    ColorUtils.setAlpha(redColor, 180),
                                    ColorUtils.setAlpha(darkRedColor, 180)));
                    GlStateManager.popMatrix();
                }

                // Пульсирующее ядро
                float pulseSize = 20.0F + (float)Math.sin(time * 5) * 5.0F;
                int pulseAlpha = 150 + (int)(Math.sin(time * 8) * 50);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(targetPos.x, targetPos.y, 0.0F);
                GlStateManager.rotatef((float)-time * 120.0F, 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-targetPos.x, -targetPos.y, 0.0F);
                DisplayUtils.drawImage(demonImage, targetPos.x - pulseSize / 2.0F, targetPos.y - pulseSize / 2.0F, pulseSize, pulseSize,
                        new Vector4i(ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(255, 100, 100), pulseAlpha),
                                ColorUtils.setAlpha(ColorUtils.rgb(200, 0, 0), pulseAlpha)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Души")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                float size = sizik;
                int brightness = yarkost;

                Vector3d basePos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                float height = this.killAura.getTarget().getHeight();

                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");
                int whiteColor = ColorUtils.rgb(255, 255, 255);
                int blueColor = ColorUtils.rgb(100, 200, 255);

                // 8 душ вокруг цели
                for(int i = 0; i < 8; i++) {
                    double angle = (Math.PI * 2 / 8) * i + time;
                    double radius = 1.2;

                    Vector3d ghostPos = basePos.add(
                            Math.cos(angle) * radius,
                            height * 0.7 + Math.sin(time * 2 + i) * 0.3,
                            Math.sin(angle) * radius
                    );

                    Vector2f screenPos = ProjectionUtil.project(ghostPos.x, ghostPos.y, ghostPos.z);

                    // Траил эффект для каждой души
                    for(int j = 0; j < 15; j++) {
                        float alpha = (float)(brightness - j * 15);
                        if (alpha < 0.0F) alpha = 0.0F;

                        float trailSize = size * (1.0F - (float)j * 0.05F);
                        double trailOffset = j * 0.1;

                        Vector3d trailPos = basePos.add(
                                Math.cos(angle - trailOffset) * (radius - j * 0.05),
                                height * 0.7 + Math.sin((time - trailOffset) * 2 + i) * 0.3,
                                Math.sin(angle - trailOffset) * (radius - j * 0.05)
                        );

                        Vector2f trailScreenPos = ProjectionUtil.project(trailPos.x, trailPos.y, trailPos.z);

                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(trailScreenPos.x, trailScreenPos.y, 0.0F);
                        GlStateManager.rotatef((float)(time * 100 + i * 45), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-trailScreenPos.x, -trailScreenPos.y, 0.0F);
                        DisplayUtils.drawImage(image, trailScreenPos.x - trailSize / 2.0F, trailScreenPos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha),
                                        ColorUtils.setAlpha(whiteColor, (int)alpha),
                                        ColorUtils.setAlpha(blueColor, (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }

                // Центральная душа
                Vector3d centerPos = basePos.add(0, height * 0.5, 0);
                Vector2f centerScreenPos = ProjectionUtil.project(centerPos.x, centerPos.y, centerPos.z);

                GlStateManager.pushMatrix();
                GlStateManager.translatef(centerScreenPos.x, centerScreenPos.y, 0.0F);
                GlStateManager.rotatef((float)(time * 200), 0.0F, 0.0F, 1.0F);
                GlStateManager.translatef(-centerScreenPos.x, -centerScreenPos.y, 0.0F);
                DisplayUtils.drawImage(image, centerScreenPos.x - size / 2.0F, centerScreenPos.y - size / 2.0F, size, size,
                        new Vector4i(ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness),
                                ColorUtils.setAlpha(whiteColor, brightness),
                                ColorUtils.setAlpha(blueColor, brightness)));
                GlStateManager.popMatrix();
            }
        }

        if (this.mod.is("Вихрь")) {
            if (e.getType() != Type.PRE) {
                return;
            }

            if (this.killAura.isState() && this.killAura.getTarget() != null) {
                float speedi = (Float)this.speed.get();
                float sizik = (Float)this.size.get();
                int yarkost = ((Float)this.bright.get()).intValue();
                double speed = (double)speedi;
                double time = (double)System.currentTimeMillis() / (500.0 / speed);
                double sin = Math.sin(time);
                double cos = Math.cos(time);
                float size = sizik;
                int brightness = yarkost;
                Vector3d headPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)this.killAura.getTarget().getHeight(), 0.0);
                Vector3d bodyPos = this.killAura.getTarget().getPositon(e.getPartialTicks()).add(0.0, (double)(this.killAura.getTarget().getHeight() / 2.0F), 0.0);
                Vector3d legPos = this.killAura.getTarget().getPositon(e.getPartialTicks());
                Vector3d[] upperPositions = new Vector3d[]{bodyPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions = new Vector3d[]{legPos.add(0.0, 0.5, 0.0)};
                Vector3d[] lowerPositions2 = new Vector3d[]{headPos.add(0.0, 0.5, 0.0)};
                ResourceLocation image = new ResourceLocation("expensive/images/hud/glow.png");

                for(int j = 0; j < 40; ++j) {
                    float alpha = (float)(brightness - j * 5);
                    if (alpha < 0.0F) {
                        alpha = 0.0F;
                    }

                    float trailSize = size * (1.0F - (float)j * 0.02F);
                    double trailTime = time - (double)j * 0.1;
                    double trailSin = Math.sin(trailTime);
                    double trailCos = Math.cos(trailTime);
                    float angleOffset = (float)j * 7.2F;

                    int i;
                    Vector3d pos3d;
                    Vector2f pos;

                    // Средний уровень
                    for(i = 0; i < upperPositions.length; ++i) {
                        pos3d = upperPositions[i].add(0.0, -1.5 * 0.26, 0.0);
                        pos = ProjectionUtil.project(pos3d.x + trailCos * 0.5, pos3d.y, pos3d.z + trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Высокий уровень
                    for(i = 0; i < lowerPositions.length; ++i) {
                        pos3d = lowerPositions[i].add(0.0, 3.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }

                    // Нижний уровень
                    for(i = 0; i < lowerPositions2.length; ++i) {
                        pos3d = lowerPositions2[i].add(0.0, -6.0 * 0.36, 0.0);
                        pos = ProjectionUtil.project(pos3d.x - trailCos * 0.5, pos3d.y, pos3d.z - trailSin * 0.5);
                        GlStateManager.pushMatrix();
                        GlStateManager.translatef(pos.x, pos.y, 0.0F);
                        GlStateManager.rotatef((float)(-trailSin * 360.0 + (double)(i * 180) + (double)angleOffset), 0.0F, 0.0F, 1.0F);
                        GlStateManager.translatef(-pos.x, -pos.y, 0.0F);
                        DisplayUtils.drawImage(image, pos.x - trailSize / 2.0F, pos.y - trailSize / 2.0F, trailSize, trailSize,
                                new Vector4i(ColorUtils.setAlpha(HUD.getColor(0, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(90, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(180, 1.0F), (int)alpha),
                                        ColorUtils.setAlpha(HUD.getColor(270, 1.0F), (int)alpha)));
                        GlStateManager.popMatrix();
                    }
                }
            }
        }
    }
}

ss:
ad)
БЛЯТЬ ЭТО (NO AD)
знал что первый пост будет хуевым
 
Не пастер прикинь, максимум что я спастил это немного с ньюкода, остальное мое - селфкод
у тебя чит на блядском экспенсив апгрейде,о каком селфкоде речь идёт
 
у тебя чит на блядском экспенсив апгрейде,о каком селфкоде речь идёт
В каком смысле, у меня чит на 2.0, как и все новые "маладежные" читы, я не понимаю в чем проблема
 
Назад
Сверху Снизу