Исходник Expensive 4.0 | Killaura FIX

Начинающий
Статус
Оффлайн
Регистрация
8 Май 2023
Сообщения
407
Реакции[?]
5
Поинты[?]
6K
Фикс киллауры экспенсив 4.0, пишите если есть ошибки, я недавно начал кодить.

AuraModule:
package ru.expensive.implement.features.modules.combat;

import lombok.AccessLevel;
import lombok.Getter;
import lombok.experimental.FieldDefaults;
import lombok.experimental.NonFinal;
import net.minecraft.entity.LivingEntity;
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
import net.minecraft.util.math.Vec3d;
import ru.expensive.api.event.EventHandler;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.*;
import ru.expensive.common.util.task.TaskPriority;
import ru.expensive.core.Expensive;
import ru.expensive.implement.events.player.PostRotationMovementInputEvent;
import ru.expensive.implement.events.player.TickEvent;
import ru.expensive.implement.features.commands.defaults.DebugCommand;
import ru.expensive.implement.features.modules.combat.killaura.attack.AttackHandler;
import ru.expensive.implement.features.modules.combat.killaura.attack.AttackPerpetrator;
import ru.expensive.implement.features.modules.combat.killaura.attack.ClickScheduler;
import ru.expensive.implement.features.modules.combat.killaura.attack.SprintManager;
import ru.expensive.implement.features.modules.combat.killaura.rotation.*;
import ru.expensive.implement.features.modules.combat.killaura.rotation.angle.*;
import ru.expensive.implement.features.modules.combat.killaura.target.TargetSelector;
import ru.expensive.implement.screens.menu.components.implement.window.implement.module.InfoWindow;

[USER=270918]@Getter[/USER]
@FieldDefaults(level = AccessLevel.PRIVATE, makeFinal = true)
public class AuraModule extends Module {
    TargetSelector targetSelector = new TargetSelector();
    PointFinder pointFinder = new PointFinder();

    @NonFinal
    LivingEntity target = null;
    ValueSetting maxDistanceSetting = new ValueSetting("Макс. расстояние", "Устанавливает значение максимального расстояния поиска целей")
            .setValue(3.0F).range(1.0F, 6.0F);

    MultiSelectSetting targetTypeSetting = new MultiSelectSetting("Тип цели", "Фильтрует список целей по типу")
            .value("Игроки", "Мобы", "Животные", "Друзья");

    MultiSelectSetting attackSetting = new MultiSelectSetting("Настройка атаки", "Позволяет настроить атаку")
            .value("Только критические", "Проверка трассировки", "Динамический откат", "Разбить щит", "Отжать щит");

    SelectSetting correctionType = new SelectSetting("Тип коррекции", "Выбирает тип коррекции")
            .value("Свободный", "Фокусированный");

    GroupSetting correctionGroupSetting = new GroupSetting("Коррекция движения", "Предотвращает обнаружение античитами, чувствительными к движению.")
            .settings(correctionType);

    SelectSetting sprintMode = new SelectSetting("Режим бега", "Позволяет выбрать режим бега")
            .value("Обход", "По умолчанию", "Нет");

    SelectSetting aimMode = new SelectSetting("Время прицеливания", "Позволяет выбрать время вращения")
            .value("Нормальный", "Резкий", "Один тик");

    AttackPerpetrator attackPerpetrator = new AttackPerpetrator();

    public AuraModule() {
        super("Аура", ModuleCategory.COMBAT);
        setup(maxDistanceSetting, targetTypeSetting, attackSetting, correctionGroupSetting, sprintMode, aimMode);
    }

    @Override
    public void deactivate() {
        targetSelector.releaseTarget();
        target = null;
        super.deactivate();
    }

    @EventHandler
    public void onPostRotationMovementInput(PostRotationMovementInputEvent postRotationMovementInputEvent) {
        target = updateTarget();
        if (target != null) {
            RotationController rotationController = RotationController.INSTANCE;
            Vec3d attackVector = pointFinder.computeVector(target, maxDistanceSetting.getValue(), rotationController.getRotation(),
                    getSmoothMode().randomValue());
            Angle angle = AngleUtil.fromVec3d(attackVector.subtract(mc.player.getEyePos()));
            rotateToTarget(target, new Angle.VecRotation(angle, attackVector), rotationController);
        }
    }

    @EventHandler
    public void onTick(TickEvent tickEvent) {
        if (target != null) {
            attackTarget(target, RotationController.INSTANCE.getCurrentAngle());
            TargetSelector.EntityFilter filter = new TargetSelector.EntityFilter(targetTypeSetting.getSelected());

            targetSelector.searchTargets(mc.world.getEntities(), maxDistanceSetting.getValue());
            targetSelector.validateTarget(filter::isValid);
        }
    }

    private LivingEntity updateTarget() {
        TargetSelector.EntityFilter filter = new TargetSelector.EntityFilter(targetTypeSetting.getSelected());

        targetSelector.searchTargets(mc.world.getEntities(), maxDistanceSetting.getValue());
        targetSelector.validateTarget(filter::isValid);

        return targetSelector.getCurrentTarget();
    }

    private void attackTarget(LivingEntity target, Angle angle) {
        AttackPerpetrator attackPerpetrator = Expensive.getInstance().getAttackPerpetrator();

        AttackPerpetrator.AttackPerpetratorConfigurable configurable = new AttackPerpetrator.AttackPerpetratorConfigurable(
                target,
                RotationController.INSTANCE.getServerAngle(),
                maxDistanceSetting.getValue(),
                attackSetting.getSelected(),
                getSprintMode()
        );
        if (angle != null && aimMode.isSelected("Один тик")) {
            mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(),
                    angle.getYaw(), angle.getPitch(), mc.player.isOnGround()));
        }

        attackPerpetrator.performAttack(configurable);

        if (angle != null && aimMode.isSelected("Один тик")) {
            mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(),
                    mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround()));
        }
    }

    private void rotateToTarget(LivingEntity target, Angle.VecRotation rotation, RotationController rotationController) {
        RotationConfig configurable = new RotationConfig(getSmoothMode(),
                DebugCommand.debug,
                correctionGroupSetting.isValue(),
                ((SelectSetting) correctionGroupSetting.getSubSetting("Тип коррекции")).isSelected("Свободный")
        );

        AttackHandler attackHandler = Expensive.getInstance().getAttackPerpetrator().getAttackHandler();
        ClickScheduler clickScheduler = attackHandler.getClickScheduler();

        if (aimMode.isSelected("Резкий") && clickScheduler.hasTicksElapsedSinceLastClick(2)) {
            return;
        }

        if (aimMode.isSelected("Один тик")) {
            return;
        }

        rotationController.rotateTo(rotation, target, configurable, TaskPriority.HIGH_IMPORTANCE_1, this);
    }

    public SprintManager.Mode getSprintMode() {
        switch (sprintMode.getSelected()) {
            case "Обход" -> {
                return SprintManager.Mode.BYPASS;
            }
            case "По умолчанию" -> {
                return SprintManager.Mode.DEFAULT;
            }
        }
        return SprintManager.Mode.NONE;
    }

    public AngleSmoothMode getSmoothMode() {
        if (!aimMode.isSelected("Резкий")) {
            switch (InfoWindow.selectSetting.getSelected()) {
                case "FunTime" -> {
                    return new FunTimeSmoothMode();
                }
                case "ReallyWorld" -> {
                    return new ReallyWorldSmoothMode();
                }
                case "HolyWorld Classic" -> {
                    return new HolyWorldClassicSmoothMode();
                }
                case "HolyWorld Lite" -> {
                    return new HolyWorldLiteSmoothMode();
                }
            }
        } else {
            return new LinearSmoothMode();
        }
        return new ReallyWorldSmoothMode();
    }
}
Ахахах нечего себе, античиты начали обходится текстом Аххахаха
 
Начинающий
Статус
Онлайн
Регистрация
10 Июл 2023
Сообщения
108
Реакции[?]
0
Поинты[?]
0
Начинающий
Статус
Онлайн
Регистрация
10 Июл 2023
Сообщения
108
Реакции[?]
0
Поинты[?]
0
Фикс киллауры экспенсив 4.0, пишите если есть ошибки, я недавно начал кодить.

AuraModule:
package ru.expensive.implement.features.modules.combat;

import lombok.AccessLevel;
import lombok.Getter;
import lombok.experimental.FieldDefaults;
import lombok.experimental.NonFinal;
import net.minecraft.entity.LivingEntity;
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
import net.minecraft.util.math.Vec3d;
import ru.expensive.api.event.EventHandler;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.*;
import ru.expensive.common.util.task.TaskPriority;
import ru.expensive.core.Expensive;
import ru.expensive.implement.events.player.PostRotationMovementInputEvent;
import ru.expensive.implement.events.player.TickEvent;
import ru.expensive.implement.features.commands.defaults.DebugCommand;
import ru.expensive.implement.features.modules.combat.killaura.attack.AttackHandler;
import ru.expensive.implement.features.modules.combat.killaura.attack.AttackPerpetrator;
import ru.expensive.implement.features.modules.combat.killaura.attack.ClickScheduler;
import ru.expensive.implement.features.modules.combat.killaura.attack.SprintManager;
import ru.expensive.implement.features.modules.combat.killaura.rotation.*;
import ru.expensive.implement.features.modules.combat.killaura.rotation.angle.*;
import ru.expensive.implement.features.modules.combat.killaura.target.TargetSelector;
import ru.expensive.implement.screens.menu.components.implement.window.implement.module.InfoWindow;

[USER=270918]@Getter[/USER]
@FieldDefaults(level = AccessLevel.PRIVATE, makeFinal = true)
public class AuraModule extends Module {
    TargetSelector targetSelector = new TargetSelector();
    PointFinder pointFinder = new PointFinder();

    @NonFinal
    LivingEntity target = null;
    ValueSetting maxDistanceSetting = new ValueSetting("Макс. расстояние", "Устанавливает значение максимального расстояния поиска целей")
            .setValue(3.0F).range(1.0F, 6.0F);

    MultiSelectSetting targetTypeSetting = new MultiSelectSetting("Тип цели", "Фильтрует список целей по типу")
            .value("Игроки", "Мобы", "Животные", "Друзья");

    MultiSelectSetting attackSetting = new MultiSelectSetting("Настройка атаки", "Позволяет настроить атаку")
            .value("Только критические", "Проверка трассировки", "Динамический откат", "Разбить щит", "Отжать щит");

    SelectSetting correctionType = new SelectSetting("Тип коррекции", "Выбирает тип коррекции")
            .value("Свободный", "Фокусированный");

    GroupSetting correctionGroupSetting = new GroupSetting("Коррекция движения", "Предотвращает обнаружение античитами, чувствительными к движению.")
            .settings(correctionType);

    SelectSetting sprintMode = new SelectSetting("Режим бега", "Позволяет выбрать режим бега")
            .value("Обход", "По умолчанию", "Нет");

    SelectSetting aimMode = new SelectSetting("Время прицеливания", "Позволяет выбрать время вращения")
            .value("Нормальный", "Резкий", "Один тик");

    AttackPerpetrator attackPerpetrator = new AttackPerpetrator();

    public AuraModule() {
        super("Аура", ModuleCategory.COMBAT);
        setup(maxDistanceSetting, targetTypeSetting, attackSetting, correctionGroupSetting, sprintMode, aimMode);
    }

    @Override
    public void deactivate() {
        targetSelector.releaseTarget();
        target = null;
        super.deactivate();
    }

    @EventHandler
    public void onPostRotationMovementInput(PostRotationMovementInputEvent postRotationMovementInputEvent) {
        target = updateTarget();
        if (target != null) {
            RotationController rotationController = RotationController.INSTANCE;
            Vec3d attackVector = pointFinder.computeVector(target, maxDistanceSetting.getValue(), rotationController.getRotation(),
                    getSmoothMode().randomValue());
            Angle angle = AngleUtil.fromVec3d(attackVector.subtract(mc.player.getEyePos()));
            rotateToTarget(target, new Angle.VecRotation(angle, attackVector), rotationController);
        }
    }

    @EventHandler
    public void onTick(TickEvent tickEvent) {
        if (target != null) {
            attackTarget(target, RotationController.INSTANCE.getCurrentAngle());
            TargetSelector.EntityFilter filter = new TargetSelector.EntityFilter(targetTypeSetting.getSelected());

            targetSelector.searchTargets(mc.world.getEntities(), maxDistanceSetting.getValue());
            targetSelector.validateTarget(filter::isValid);
        }
    }

    private LivingEntity updateTarget() {
        TargetSelector.EntityFilter filter = new TargetSelector.EntityFilter(targetTypeSetting.getSelected());

        targetSelector.searchTargets(mc.world.getEntities(), maxDistanceSetting.getValue());
        targetSelector.validateTarget(filter::isValid);

        return targetSelector.getCurrentTarget();
    }

    private void attackTarget(LivingEntity target, Angle angle) {
        AttackPerpetrator attackPerpetrator = Expensive.getInstance().getAttackPerpetrator();

        AttackPerpetrator.AttackPerpetratorConfigurable configurable = new AttackPerpetrator.AttackPerpetratorConfigurable(
                target,
                RotationController.INSTANCE.getServerAngle(),
                maxDistanceSetting.getValue(),
                attackSetting.getSelected(),
                getSprintMode()
        );
        if (angle != null && aimMode.isSelected("Один тик")) {
            mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(),
                    angle.getYaw(), angle.getPitch(), mc.player.isOnGround()));
        }

        attackPerpetrator.performAttack(configurable);

        if (angle != null && aimMode.isSelected("Один тик")) {
            mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(),
                    mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround()));
        }
    }

    private void rotateToTarget(LivingEntity target, Angle.VecRotation rotation, RotationController rotationController) {
        RotationConfig configurable = new RotationConfig(getSmoothMode(),
                DebugCommand.debug,
                correctionGroupSetting.isValue(),
                ((SelectSetting) correctionGroupSetting.getSubSetting("Тип коррекции")).isSelected("Свободный")
        );

        AttackHandler attackHandler = Expensive.getInstance().getAttackPerpetrator().getAttackHandler();
        ClickScheduler clickScheduler = attackHandler.getClickScheduler();

        if (aimMode.isSelected("Резкий") && clickScheduler.hasTicksElapsedSinceLastClick(2)) {
            return;
        }

        if (aimMode.isSelected("Один тик")) {
            return;
        }

        rotationController.rotateTo(rotation, target, configurable, TaskPriority.HIGH_IMPORTANCE_1, this);
    }

    public SprintManager.Mode getSprintMode() {
        switch (sprintMode.getSelected()) {
            case "Обход" -> {
                return SprintManager.Mode.BYPASS;
            }
            case "По умолчанию" -> {
                return SprintManager.Mode.DEFAULT;
            }
        }
        return SprintManager.Mode.NONE;
    }

    public AngleSmoothMode getSmoothMode() {
        if (!aimMode.isSelected("Резкий")) {
            switch (InfoWindow.selectSetting.getSelected()) {
                case "FunTime" -> {
                    return new FunTimeSmoothMode();
                }
                case "ReallyWorld" -> {
                    return new ReallyWorldSmoothMode();
                }
                case "HolyWorld Classic" -> {
                    return new HolyWorldClassicSmoothMode();
                }
                case "HolyWorld Lite" -> {
                    return new HolyWorldLiteSmoothMode();
                }
            }
        } else {
            return new LinearSmoothMode();
        }
        return new ReallyWorldSmoothMode();
    }
}
/del Так ты просто поменял язык какой ты кодер из тебя кодер хуже моего кота
Попкорн.png
 
Начинающий
Статус
Оффлайн
Регистрация
11 Дек 2022
Сообщения
10
Реакции[?]
0
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
11 Июл 2024
Сообщения
81
Реакции[?]
3
Поинты[?]
3K
Начинающий
Статус
Онлайн
Регистрация
10 Июл 2023
Сообщения
108
Реакции[?]
0
Поинты[?]
0
твоя субъективщина)
Так а вопрос зачем ты это залил? так ещё и написал " Фикс киллауры экспенсив 4.0 " Если ты ничего в коде фактически не поменял кроме языка она же все равно не будет работать зачем это постить куда модераторы смотрят когда одобряют такое?
Ищу кодера на свой чит.Зп 10 рублей))) Xddddd
Могу сделать тебе за бесплатно пасту за 10 рублей никто ничего кодить не будет
 
Последнее редактирование:
Сверху Снизу