Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Часть функционала Eclip

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
20 Июн 2022
Сообщения
120
Реакции
0
Выберите загрузчик игры
  1. Vanilla
  2. OptiFine
хз зачем хз почему
1773504011119.png


1773503862806.png
туски обещанную сабку так и не выдал :FeelsBadMan:

eclip:
Expand Collapse Copy
package shk.fuck.commands.impl;

import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CPlayerPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import org.apache.commons.lang3.math.NumberUtils;
import shk.fuck.client.utils.ClientUtil;
import shk.fuck.commands.Command;
import shk.fuck.commands.CommandInfo;
import shk.fuck.client.utils.IMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.block.Blocks;

@CommandInfo(name = "eclip", description = "Телепортирует вас вертикально (нужны элитры в инвентаре)")
public class EClipCommand extends Command {

    private int getSlotIDFromItem(net.minecraft.item.Item item) {
        if (Minecraft.getInstance().player == null) return -1;

        if (Minecraft.getInstance().player.inventory.armorItemInSlot(2).getItem() == Items.ELYTRA) {
            return -2;
        }

        for (int i = 0; i < 36; i++) {
            if (Minecraft.getInstance().player.inventory.getStackInSlot(i).getItem() == Items.ELYTRA) {
                if (i < 9) {
                    return 36 + i;
                } else {
                    return i;
                }
            }
        }
        return -1;
    }

    private void teleportSafely(double deltaY) {
        double startY = IMinecraft.mc.player.getPosY();
        double targetY = startY + deltaY;
        int direction = deltaY > 0 ? 1 : -1;

        double step = direction * 8.0;
        double currentY = startY;
        int steps = 0;
        int maxSteps = 15;

        while (steps < maxSteps && Math.abs(currentY - targetY) > Math.abs(step)) {
            currentY += step;
            sendTeleportPacket(currentY);
            steps++;
        }

        if (Math.abs(currentY - targetY) > 0.1) {
            sendTeleportPacket(targetY);
        }

        IMinecraft.mc.player.setPosition(IMinecraft.mc.player.getPosX(), targetY, IMinecraft.mc.player.getPosZ());
    }

    private void sendTeleportPacket(double y) {
        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                y,
                IMinecraft.mc.player.getPosZ(),
                false
        ));
    }

    public void sendMessage(String message) {
        IMinecraft.mc.player.sendMessage(new StringTextComponent(message), null);
    }

    @Override
    public void run(String[] args) throws Exception {
        if (args.length < 2) {
            error();
            return;
        }

        double y = 0;

        if (args[1].equalsIgnoreCase("bd")) {
            y = -IMinecraft.mc.player.getPosY() - 5;
        }

        else if (args[1].equalsIgnoreCase("down")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 1; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, -i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = -i;
                    foundAir = true;
                    break;
                }
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.BEDROCK && !foundAir) {
                    return;
                }
            }
            if (!foundAir) {
                y = -50;
            }
        }

        else if (args[1].equalsIgnoreCase("up")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 4; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = i;
                    foundAir = true;
                    break;
                }
            }
            if (!foundAir) {
                y = 50;
            }
        }

        else if (NumberUtils.isCreatable(args[1])) {
            y = Double.parseDouble(args[1]);
        } else {
            return;
        }

        double maxDistance = 150;
        if (Math.abs(y) > maxDistance) {
            y = y > 0 ? maxDistance : -maxDistance;
        }

        int elytra = getSlotIDFromItem(Items.ELYTRA);
        if (elytra == -1) {
            ClientUtil.sendMessage(TextFormatting.RED + "У вас нет элитры!");
            return;
        }

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        teleportSafely(y);

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }
    }

    @Override
    public void error() {
    }
}
 
Последнее редактирование:
туски обещанную сабку так и не выдал :FeelsBadMan:

eclip:
Expand Collapse Copy
package shk.fuck.commands.impl;

import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CPlayerPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import org.apache.commons.lang3.math.NumberUtils;
import shk.fuck.client.utils.ClientUtil;
import shk.fuck.commands.Command;
import shk.fuck.commands.CommandInfo;
import shk.fuck.client.utils.IMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.block.Blocks;

@CommandInfo(name = "eclip", description = "Телепортирует вас вертикально (нужны элитры в инвентаре)")
public class EClipCommand extends Command {

    private int getSlotIDFromItem(net.minecraft.item.Item item) {
        if (Minecraft.getInstance().player == null) return -1;

        if (Minecraft.getInstance().player.inventory.armorItemInSlot(2).getItem() == Items.ELYTRA) {
            return -2;
        }

        for (int i = 0; i < 36; i++) {
            if (Minecraft.getInstance().player.inventory.getStackInSlot(i).getItem() == Items.ELYTRA) {
                if (i < 9) {
                    return 36 + i;
                } else {
                    return i;
                }
            }
        }
        return -1;
    }

    private void teleportSafely(double deltaY) {
        double startY = IMinecraft.mc.player.getPosY();
        double targetY = startY + deltaY;
        int direction = deltaY > 0 ? 1 : -1;

        double step = direction * 8.0;
        double currentY = startY;
        int steps = 0;
        int maxSteps = 15;

        while (steps < maxSteps && Math.abs(currentY - targetY) > Math.abs(step)) {
            currentY += step;
            sendTeleportPacket(currentY);
            steps++;
        }

        if (Math.abs(currentY - targetY) > 0.1) {
            sendTeleportPacket(targetY);
        }

        IMinecraft.mc.player.setPosition(IMinecraft.mc.player.getPosX(), targetY, IMinecraft.mc.player.getPosZ());
    }

    private void sendTeleportPacket(double y) {
        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                y,
                IMinecraft.mc.player.getPosZ(),
                false
        ));
    }

    public void sendMessage(String message) {
        IMinecraft.mc.player.sendMessage(new StringTextComponent(message), null);
    }

    @Override
    public void run(String[] args) throws Exception {
        if (args.length < 2) {
            error();
            return;
        }

        double y = 0;

        if (args[1].equalsIgnoreCase("bd")) {
            y = -IMinecraft.mc.player.getPosY() - 5;
        }

        else if (args[1].equalsIgnoreCase("down")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 1; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, -i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = -i;
                    foundAir = true;
                    break;
                }
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.BEDROCK && !foundAir) {
                    return;
                }
            }
            if (!foundAir) {
                y = -50;
            }
        }

        else if (args[1].equalsIgnoreCase("up")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 4; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = i;
                    foundAir = true;
                    break;
                }
            }
            if (!foundAir) {
                y = 50;
            }
        }

        else if (NumberUtils.isCreatable(args[1])) {
            y = Double.parseDouble(args[1]);
        } else {
            return;
        }

        double maxDistance = 150;
        if (Math.abs(y) > maxDistance) {
            y = y > 0 ? maxDistance : -maxDistance;
        }

        int elytra = getSlotIDFromItem(Items.ELYTRA);
        if (elytra == -1) {
            ClientUtil.sendMessage(TextFormatting.RED + "У вас нет элитры!");
            return;
        }

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        teleportSafely(y);

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }
    }

    @Override
    public void error() {
    }
}
Слушай, мне кажется что ты немного опоздал с темой, а ещё что за хуйню а не сс ты дал
 
как видно на рв, но только это hclip называется а не eclip
:pepepopcorn:
хз дефолт грим детектит
Слушай, мне кажется что ты немного опоздал с темой, а ещё что за хуйню а не сс ты дал
крутой сс че не нравится и на кой тебе ваще сс на еклип?
 
Последнее редактирование:
туски обещанную сабку так и не выдал :FeelsBadMan:

eclip:
Expand Collapse Copy
package shk.fuck.commands.impl;

import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CPlayerPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import org.apache.commons.lang3.math.NumberUtils;
import shk.fuck.client.utils.ClientUtil;
import shk.fuck.commands.Command;
import shk.fuck.commands.CommandInfo;
import shk.fuck.client.utils.IMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.block.Blocks;

@CommandInfo(name = "eclip", description = "Телепортирует вас вертикально (нужны элитры в инвентаре)")
public class EClipCommand extends Command {

    private int getSlotIDFromItem(net.minecraft.item.Item item) {
        if (Minecraft.getInstance().player == null) return -1;

        if (Minecraft.getInstance().player.inventory.armorItemInSlot(2).getItem() == Items.ELYTRA) {
            return -2;
        }

        for (int i = 0; i < 36; i++) {
            if (Minecraft.getInstance().player.inventory.getStackInSlot(i).getItem() == Items.ELYTRA) {
                if (i < 9) {
                    return 36 + i;
                } else {
                    return i;
                }
            }
        }
        return -1;
    }

    private void teleportSafely(double deltaY) {
        double startY = IMinecraft.mc.player.getPosY();
        double targetY = startY + deltaY;
        int direction = deltaY > 0 ? 1 : -1;

        double step = direction * 8.0;
        double currentY = startY;
        int steps = 0;
        int maxSteps = 15;

        while (steps < maxSteps && Math.abs(currentY - targetY) > Math.abs(step)) {
            currentY += step;
            sendTeleportPacket(currentY);
            steps++;
        }

        if (Math.abs(currentY - targetY) > 0.1) {
            sendTeleportPacket(targetY);
        }

        IMinecraft.mc.player.setPosition(IMinecraft.mc.player.getPosX(), targetY, IMinecraft.mc.player.getPosZ());
    }

    private void sendTeleportPacket(double y) {
        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                y,
                IMinecraft.mc.player.getPosZ(),
                false
        ));
    }

    public void sendMessage(String message) {
        IMinecraft.mc.player.sendMessage(new StringTextComponent(message), null);
    }

    @Override
    public void run(String[] args) throws Exception {
        if (args.length < 2) {
            error();
            return;
        }

        double y = 0;

        if (args[1].equalsIgnoreCase("bd")) {
            y = -IMinecraft.mc.player.getPosY() - 5;
        }

        else if (args[1].equalsIgnoreCase("down")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 1; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, -i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = -i;
                    foundAir = true;
                    break;
                }
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.BEDROCK && !foundAir) {
                    return;
                }
            }
            if (!foundAir) {
                y = -50;
            }
        }

        else if (args[1].equalsIgnoreCase("up")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 4; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = i;
                    foundAir = true;
                    break;
                }
            }
            if (!foundAir) {
                y = 50;
            }
        }

        else if (NumberUtils.isCreatable(args[1])) {
            y = Double.parseDouble(args[1]);
        } else {
            return;
        }

        double maxDistance = 150;
        if (Math.abs(y) > maxDistance) {
            y = y > 0 ? maxDistance : -maxDistance;
        }

        int elytra = getSlotIDFromItem(Items.ELYTRA);
        if (elytra == -1) {
            ClientUtil.sendMessage(TextFormatting.RED + "У вас нет элитры!");
            return;
        }

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        teleportSafely(y);

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }
    }

    @Override
    public void error() {
    }
}
1.12.2....
 
туски обещанную сабку так и не выдал :FeelsBadMan:

eclip:
Expand Collapse Copy
package shk.fuck.commands.impl;

import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CPlayerPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import org.apache.commons.lang3.math.NumberUtils;
import shk.fuck.client.utils.ClientUtil;
import shk.fuck.commands.Command;
import shk.fuck.commands.CommandInfo;
import shk.fuck.client.utils.IMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.block.Blocks;

@CommandInfo(name = "eclip", description = "Телепортирует вас вертикально (нужны элитры в инвентаре)")
public class EClipCommand extends Command {

    private int getSlotIDFromItem(net.minecraft.item.Item item) {
        if (Minecraft.getInstance().player == null) return -1;

        if (Minecraft.getInstance().player.inventory.armorItemInSlot(2).getItem() == Items.ELYTRA) {
            return -2;
        }

        for (int i = 0; i < 36; i++) {
            if (Minecraft.getInstance().player.inventory.getStackInSlot(i).getItem() == Items.ELYTRA) {
                if (i < 9) {
                    return 36 + i;
                } else {
                    return i;
                }
            }
        }
        return -1;
    }

    private void teleportSafely(double deltaY) {
        double startY = IMinecraft.mc.player.getPosY();
        double targetY = startY + deltaY;
        int direction = deltaY > 0 ? 1 : -1;

        double step = direction * 8.0;
        double currentY = startY;
        int steps = 0;
        int maxSteps = 15;

        while (steps < maxSteps && Math.abs(currentY - targetY) > Math.abs(step)) {
            currentY += step;
            sendTeleportPacket(currentY);
            steps++;
        }

        if (Math.abs(currentY - targetY) > 0.1) {
            sendTeleportPacket(targetY);
        }

        IMinecraft.mc.player.setPosition(IMinecraft.mc.player.getPosX(), targetY, IMinecraft.mc.player.getPosZ());
    }

    private void sendTeleportPacket(double y) {
        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                y,
                IMinecraft.mc.player.getPosZ(),
                false
        ));
    }

    public void sendMessage(String message) {
        IMinecraft.mc.player.sendMessage(new StringTextComponent(message), null);
    }

    @Override
    public void run(String[] args) throws Exception {
        if (args.length < 2) {
            error();
            return;
        }

        double y = 0;

        if (args[1].equalsIgnoreCase("bd")) {
            y = -IMinecraft.mc.player.getPosY() - 5;
        }

        else if (args[1].equalsIgnoreCase("down")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 1; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, -i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = -i;
                    foundAir = true;
                    break;
                }
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.BEDROCK && !foundAir) {
                    return;
                }
            }
            if (!foundAir) {
                y = -50;
            }
        }

        else if (args[1].equalsIgnoreCase("up")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 4; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = i;
                    foundAir = true;
                    break;
                }
            }
            if (!foundAir) {
                y = 50;
            }
        }

        else if (NumberUtils.isCreatable(args[1])) {
            y = Double.parseDouble(args[1]);
        } else {
            return;
        }

        double maxDistance = 150;
        if (Math.abs(y) > maxDistance) {
            y = y > 0 ? maxDistance : -maxDistance;
        }

        int elytra = getSlotIDFromItem(Items.ELYTRA);
        if (elytra == -1) {
            ClientUtil.sendMessage(TextFormatting.RED + "У вас нет элитры!");
            return;
        }

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        teleportSafely(y);

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }
    }

    @Override
    public void error() {
    }
}
грузилось 3 года
 
туски обещанную сабку так и не выдал :FeelsBadMan:

eclip:
Expand Collapse Copy
package shk.fuck.commands.impl;

import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CPlayerPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import org.apache.commons.lang3.math.NumberUtils;
import shk.fuck.client.utils.ClientUtil;
import shk.fuck.commands.Command;
import shk.fuck.commands.CommandInfo;
import shk.fuck.client.utils.IMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.block.Blocks;

@CommandInfo(name = "eclip", description = "Телепортирует вас вертикально (нужны элитры в инвентаре)")
public class EClipCommand extends Command {

    private int getSlotIDFromItem(net.minecraft.item.Item item) {
        if (Minecraft.getInstance().player == null) return -1;

        if (Minecraft.getInstance().player.inventory.armorItemInSlot(2).getItem() == Items.ELYTRA) {
            return -2;
        }

        for (int i = 0; i < 36; i++) {
            if (Minecraft.getInstance().player.inventory.getStackInSlot(i).getItem() == Items.ELYTRA) {
                if (i < 9) {
                    return 36 + i;
                } else {
                    return i;
                }
            }
        }
        return -1;
    }

    private void teleportSafely(double deltaY) {
        double startY = IMinecraft.mc.player.getPosY();
        double targetY = startY + deltaY;
        int direction = deltaY > 0 ? 1 : -1;

        double step = direction * 8.0;
        double currentY = startY;
        int steps = 0;
        int maxSteps = 15;

        while (steps < maxSteps && Math.abs(currentY - targetY) > Math.abs(step)) {
            currentY += step;
            sendTeleportPacket(currentY);
            steps++;
        }

        if (Math.abs(currentY - targetY) > 0.1) {
            sendTeleportPacket(targetY);
        }

        IMinecraft.mc.player.setPosition(IMinecraft.mc.player.getPosX(), targetY, IMinecraft.mc.player.getPosZ());
    }

    private void sendTeleportPacket(double y) {
        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                y,
                IMinecraft.mc.player.getPosZ(),
                false
        ));
    }

    public void sendMessage(String message) {
        IMinecraft.mc.player.sendMessage(new StringTextComponent(message), null);
    }

    @Override
    public void run(String[] args) throws Exception {
        if (args.length < 2) {
            error();
            return;
        }

        double y = 0;

        if (args[1].equalsIgnoreCase("bd")) {
            y = -IMinecraft.mc.player.getPosY() - 5;
        }

        else if (args[1].equalsIgnoreCase("down")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 1; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, -i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = -i;
                    foundAir = true;
                    break;
                }
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.BEDROCK && !foundAir) {
                    return;
                }
            }
            if (!foundAir) {
                y = -50;
            }
        }

        else if (args[1].equalsIgnoreCase("up")) {
            boolean foundAir = false;
            BlockPos playerPos = new BlockPos(
                    IMinecraft.mc.player.getPosX(),
                    IMinecraft.mc.player.getPosY(),
                    IMinecraft.mc.player.getPosZ()
            );

            for (int i = 4; i < 256; i++) {
                BlockPos checkPos = playerPos.add(0, i, 0);
                if (IMinecraft.mc.world.getBlockState(checkPos).getBlock() == Blocks.AIR) {
                    y = i;
                    foundAir = true;
                    break;
                }
            }
            if (!foundAir) {
                y = 50;
            }
        }

        else if (NumberUtils.isCreatable(args[1])) {
            y = Double.parseDouble(args[1]);
        } else {
            return;
        }

        double maxDistance = 150;
        if (Math.abs(y) > maxDistance) {
            y = y > 0 ? maxDistance : -maxDistance;
        }

        int elytra = getSlotIDFromItem(Items.ELYTRA);
        if (elytra == -1) {
            ClientUtil.sendMessage(TextFormatting.RED + "У вас нет элитры!");
            return;
        }

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CPlayerPacket.PositionPacket(
                IMinecraft.mc.player.getPosX(),
                IMinecraft.mc.player.getPosY(),
                IMinecraft.mc.player.getPosZ(),
                false
        ));

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        teleportSafely(y);

        IMinecraft.mc.getConnection().sendPacket(new CEntityActionPacket(
                IMinecraft.mc.player,
                CEntityActionPacket.Action.START_FALL_FLYING
        ));

        if (elytra != -2) {
            IMinecraft.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, IMinecraft.mc.player);
            IMinecraft.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, IMinecraft.mc.player);
        }
    }

    @Override
    public void error() {
    }
}
с флаем?
 
Назад
Сверху Снизу