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

Начинающий
Статус
Оффлайн
Регистрация
11 Дек 2022
Сообщения
10
Реакции[?]
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();
    }
}
 
Начинающий
Статус
Оффлайн
Регистрация
27 Авг 2022
Сообщения
55
Реакции[?]
0
Поинты[?]
1K
Пиздец, Пастеры теперь такие?
сайт кишит пастерами, я сам не селф кодер но изменить код я могу, а по сообщениям этого типа думаю он способен только изменить цвет фона и то скорее всего нет :roflanBuldiga:
 
Начинающий
Статус
Оффлайн
Регистрация
9 Июл 2024
Сообщения
64
Реакции[?]
0
Поинты[?]
0
сайт кишит пастерами, я сам не селф кодер но изменить код я могу, а по сообщениям этого типа думаю он способен только изменить цвет фона и то скорее всего нет :roflanBuldiga:
окей кинь скрин если у тебя забилдилось модом и запустилось в лаунчере сын умника
 
Забаненный
Статус
Оффлайн
Регистрация
2 Фев 2024
Сообщения
852
Реакции[?]
7
Поинты[?]
4K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Фикс киллауры экспенсив 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();
    }
}
зачем рус мне щяс что делать замену языков и что тут изменено
окей кинь скрин если у тебя забилдилось модом и запустилось в лаунчере сын умника
скачай fabric 1.20.1 + fabric api 1.20.1 + твой билд и все
 
Начинающий
Статус
Оффлайн
Регистрация
9 Июл 2024
Сообщения
64
Реакции[?]
0
Поинты[?]
0
прости пожалуйста его рил можно забилдить но почему то мне все говорили что нельзя еще прошу прощения
1721303531404.png
скажите пожайлуста а это с старого модуля переносить?
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
11 Дек 2022
Сообщения
10
Реакции[?]
0
Поинты[?]
0
прости пожалуйста его рил можно забилдить но почему то мне все говорили что нельзя еще прошу прощения
Посмотреть вложение 281445
скажите пожайлуста а это с старого модуля переносить?
[/QUOTE

крутой
Для просмотра содержимого вам необходимо авторизоваться.
 
Сверху Снизу