Исходник NoHitBoxes expensive 2.0 ready

Начинающий
Статус
Оффлайн
Регистрация
13 Дек 2023
Сообщения
40
Реакции[?]
0
Поинты[?]
0

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

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

Спасибо!

Функция позволяет лутать мистики и тд через игроков вот код:
если что делал за основой HitBox и это первая функция
NoHitBox:
package wtf.expensive.modules.impl.combat;

import net.minecraft.entity.Entity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.util.math.AxisAlignedBB;
import wtf.expensive.events.Event;
import wtf.expensive.events.impl.render.EventRender;
import wtf.expensive.modules.Function;
import wtf.expensive.modules.FunctionAnnotation;
import wtf.expensive.modules.Type;
import wtf.expensive.modules.settings.imp.BooleanOption;
import wtf.expensive.modules.settings.imp.SliderSetting;

/**
[LIST]
[*][USER=35246]@Author[/USER] va1dy
[*][USER=30931]@since[/USER] 21.02.2024
[/LIST]
*/
@FunctionAnnotation(name = "NoHitBox", type = Type.Combat)
public class NoHitBox extends Function {

    public final SliderSetting size = new SliderSetting("Размер", -1.0f, -1.f, -1.f, 0.00f);
    public final BooleanOption invisible = new BooleanOption("Невидимые", false);

    public NoHitBox() {
        addSettings(size, invisible);
    }

    @Override
    public void onEvent(final Event event) {
        handleEvent(event);
    }

    /**
     * Обрабатываем событие.
     */
    private void handleEvent(Event event) {
        // Проверка, является ли событие типом EventRender и включено ли 3D-отображение
        if (!(event instanceof EventRender && ((EventRender) event).isRender3D()))
            return;

        // Проверка, включен ли режим невидимости
        if (invisible.get())
            return;

        // Выполнение корректировки границ хитбокса для игроков
        adjustBoundingBoxesForPlayers();
    }

    /**
     * Настраиваем хитбокс игрока под кастомный размер.
     */
    private void adjustBoundingBoxesForPlayers() {
        // Перебор всех игроков в мире
        for (PlayerEntity player : mc.world.getPlayers()) {
            // Проверка, нужно ли пропустить данного игрока при корректировке хитбокса
            if (shouldSkipPlayer(player))
                continue;

            // Вычисление множителя размера и установка нового хитбокса для игрока
            float sizeMultiplier = this.size.getValue().floatValue() * 0.0F;
            setBoundingBox(player, sizeMultiplier);
        }
    }

    /**
     * Проверка на валидного игрока
     */
    private boolean shouldSkipPlayer(PlayerEntity player) {
        // Проверка, нужно ли пропустить данного игрока при корректировке хитбокса
        // Игрок пропускается, если это текущий игрок (mc.player) или если игрок мертв
        return player == mc.player || !player.isAlive();
    }

    /**
     * Устанавливаем новый размер для хитбокса
     */
    private void setBoundingBox(Entity entity, float size) {
        // Вычисление нового хитбокса для сущности и установка ее
        AxisAlignedBB newBoundingBox = calculateBoundingBox(entity, size);
        entity.setBoundingBox(newBoundingBox);
    }

    /**
     * Вычисление координат минимальной и максимальной точек хитбокса для сущности и создание
     * и возвращение нового хитбокса сущности
     */
    private AxisAlignedBB calculateBoundingBox(Entity entity, float size) {
        // Вычисление координат минимальной и максимальной точек хитбокса для сущности
        double minX = entity.getPosX() - size;
        double minY = entity.getBoundingBox().minY;
        double minZ = entity.getPosZ() - size;
        double maxX = entity.getPosX() + size;
        double maxY = entity.getBoundingBox().maxY;
        double maxZ = entity.getPosZ() + size;

        // Создание и возвращение нового хитбокса сущности
        return new AxisAlignedBB(minX, minY, minZ, maxX, maxY, maxZ);
    }
}
 
Начинающий
Статус
Оффлайн
Регистрация
24 Авг 2022
Сообщения
165
Реакции[?]
0
Поинты[?]
0
Тот самый NoPlayerTrace который слит вроде в прошлом году
 
Забаненный
Статус
Оффлайн
Регистрация
17 Фев 2024
Сообщения
21
Реакции[?]
0
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
1708546703314.png
 
Забаненный
Статус
Оффлайн
Регистрация
18 Фев 2023
Сообщения
23
Реакции[?]
3
Поинты[?]
8K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сверху Снизу