• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Исходник Phase RW (Relake Omni)

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Авг 2025
Сообщения
11
Реакции
0
Выберите загрузчик игры
  1. Прочие моды
Пожалуйста, авторизуйтесь для просмотра ссылки.


Код:
Expand Collapse Copy
public class PhaseModule extends Module {
    public PhaseModule() {
        super("Phase", "", "", ModuleCategory.Movement);
    }

    private final List<IPacket<?>> bufferedPackets = new ArrayList<>();

    private boolean semiPacketSent;
    private boolean skipReleaseOnDisable;

    @EventHandler
    public void onPacket(PacketEvent.Send packetEvent) {
        if (mc.player == null || mc.player.connection == null) return;

        IPacket<?> packet = packetEvent.getPacket();
        if (packet instanceof CPlayerPacket) {
            bufferedPackets.add(packet);
            packetEvent.setCancelled(true);
        }
    }

    @EventHandler
    public void onTick(TickEvent e) {
        if (mc.player == null || mc.world == null) return;
        boolean noSolidInAABB = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D))
                .noneMatch(BlockState::isSolid);
        long totalStates = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D)).count();
        long solidStates = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D)).filter(BlockState::isSolid).count();
        boolean semiInsideBlock = solidStates > 0 && solidStates < totalStates;

        if (!semiPacketSent && semiInsideBlock) {
            double x = mc.player.lastTickPosX;
            double y = mc.player.lastTickPosY;
            double z = mc.player.lastTickPosZ;
            float yaw = mc.player.rotationYaw;
            float pitch = mc.player.rotationPitch;
            for (int i = 0; i < 7; i++) {
                mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - mc.player.getPosX(), y, z - mc.player.getPosZ(), yaw, pitch, true));
            }
            semiPacketSent = true;
            return;
        }

        if (semiPacketSent && noSolidInAABB) {
            skipReleaseOnDisable = true;
        }
    }

    @Override
    public void onDisable() {
        mc.player.setPosition(mc.player.getPosX(), mc.player.getPosY(), mc.player.getPosZ());
        if (!skipReleaseOnDisable && semiPacketSent) {
            runReleaseSequence();
        }

        if (mc.player != null && mc.player.connection != null && !bufferedPackets.isEmpty()) {
            for (IPacket<?> packet : bufferedPackets) {
                mc.player.connection.sendPacketWOEvent(packet);
            }
            bufferedPackets.clear();
        }

        super.onDisable();
    }

    @Override
    public void onEnable() {
        bufferedPackets.clear();
        semiPacketSent = false;
        skipReleaseOnDisable = false;
        super.onEnable();
    }

    private void runReleaseSequence() {
        if (mc.player == null || mc.player.connection == null) return;

        double x = mc.player.getPosX();
        double y = mc.player.getPosY();
        double z = mc.player.getPosZ();
        float yaw = mc.player.rotationYaw;
        float pitch = mc.player.rotationPitch;

        mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - 5000 - mc.player.lastTickPosX, y, z - 5000 - mc.player.lastTickPosZ, yaw, pitch, false));
        mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - mc.player.lastTickPosX, y, z - mc.player.lastTickPosZ, yaw, pitch, true));
    }
}

VoxelShapeSpliterator - +-100 строка

Код:
Expand Collapse Copy
if (Client.instance.moduleManager.phaseModule.isEnabled()) {
int playerBlockY = Minecraft.getInstance().player.getPosition().getY();
if (this.mutablePos.toImmutable().getY() >= playerBlockY || Minecraft.getInstance().gameSettings.keyBindSneak.isKeyDown()) {
 continue;
    }
}
 
годно, на экспу 3.1 получится спастить?
 
Пожалуйста, авторизуйтесь для просмотра ссылки.


Код:
Expand Collapse Copy
public class PhaseModule extends Module {
    public PhaseModule() {
        super("Phase", "", "", ModuleCategory.Movement);
    }

    private final List<IPacket<?>> bufferedPackets = new ArrayList<>();

    private boolean semiPacketSent;
    private boolean skipReleaseOnDisable;

    @EventHandler
    public void onPacket(PacketEvent.Send packetEvent) {
        if (mc.player == null || mc.player.connection == null) return;

        IPacket<?> packet = packetEvent.getPacket();
        if (packet instanceof CPlayerPacket) {
            bufferedPackets.add(packet);
            packetEvent.setCancelled(true);
        }
    }

    @EventHandler
    public void onTick(TickEvent e) {
        if (mc.player == null || mc.world == null) return;
        boolean noSolidInAABB = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D))
                .noneMatch(BlockState::isSolid);
        long totalStates = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D)).count();
        long solidStates = mc.world.getStatesInArea(mc.player.getBoundingBox().shrink(0.01D)).filter(BlockState::isSolid).count();
        boolean semiInsideBlock = solidStates > 0 && solidStates < totalStates;

        if (!semiPacketSent && semiInsideBlock) {
            double x = mc.player.lastTickPosX;
            double y = mc.player.lastTickPosY;
            double z = mc.player.lastTickPosZ;
            float yaw = mc.player.rotationYaw;
            float pitch = mc.player.rotationPitch;
            for (int i = 0; i < 7; i++) {
                mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - mc.player.getPosX(), y, z - mc.player.getPosZ(), yaw, pitch, true));
            }
            semiPacketSent = true;
            return;
        }

        if (semiPacketSent && noSolidInAABB) {
            skipReleaseOnDisable = true;
        }
    }

    @Override
    public void onDisable() {
        mc.player.setPosition(mc.player.getPosX(), mc.player.getPosY(), mc.player.getPosZ());
        if (!skipReleaseOnDisable && semiPacketSent) {
            runReleaseSequence();
        }

        if (mc.player != null && mc.player.connection != null && !bufferedPackets.isEmpty()) {
            for (IPacket<?> packet : bufferedPackets) {
                mc.player.connection.sendPacketWOEvent(packet);
            }
            bufferedPackets.clear();
        }

        super.onDisable();
    }

    @Override
    public void onEnable() {
        bufferedPackets.clear();
        semiPacketSent = false;
        skipReleaseOnDisable = false;
        super.onEnable();
    }

    private void runReleaseSequence() {
        if (mc.player == null || mc.player.connection == null) return;

        double x = mc.player.getPosX();
        double y = mc.player.getPosY();
        double z = mc.player.getPosZ();
        float yaw = mc.player.rotationYaw;
        float pitch = mc.player.rotationPitch;

        mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - 5000 - mc.player.lastTickPosX, y, z - 5000 - mc.player.lastTickPosZ, yaw, pitch, false));
        mc.player.connection.sendPacket(new CPlayerPacket.PositionRotationPacket(x - mc.player.lastTickPosX, y, z - mc.player.lastTickPosZ, yaw, pitch, true));
    }
}

VoxelShapeSpliterator - +-100 строка

Код:
Expand Collapse Copy
if (Client.instance.moduleManager.phaseModule.isEnabled()) {
int playerBlockY = Minecraft.getInstance().player.getPosition().getY();
if (this.mutablePos.toImmutable().getY() >= playerBlockY || Minecraft.getInstance().gameSettings.keyBindSneak.isKeyDown()) {
 continue;
    }
}
/del было уже милион раз
 
Чтоб у тебя яйца отсохли от таких тем
 
есть релейк омни ?
 
Назад
Сверху Снизу