Исходник Хороший AutoExplosion | Exp 3.1

Начинающий
Статус
Оффлайн
Регистрация
20 Мар 2024
Сообщения
21
Реакции[?]
0
Поинты[?]
0

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

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

Спасибо!

Java:
package im.furious.functions.impl.combat;

import com.google.common.collect.Lists;
import java.util.Iterator;
import java.util.List;

import com.google.common.eventbus.Subscribe;
import im.furious.events.EventUpdate;
import im.furious.functions.api.Category;
import im.furious.functions.api.Function;
import im.furious.functions.api.FunctionRegister;
import im.furious.functions.settings.impl.BooleanSetting;
import im.furious.functions.settings.impl.ModeListSetting;
import net.minecraft.block.RespawnAnchorBlock;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EnderCrystalEntity;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.network.play.client.CUseEntityPacket;
import net.minecraft.util.Direction;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.BlockRayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(name = "AutoExplosion", type = Category.Combat)
public class AutoExplosion extends Function {
    private int lastSlot = -1;
    private final List<BlockPos> anchors = Lists.newArrayList();
    private final List<EnderCrystalEntity> crystals = Lists.newArrayList();
    private final ModeListSetting elements = new ModeListSetting("Элементы",
            new BooleanSetting("Якорь возрождения", true),
            new BooleanSetting("Crystal", true));
    private final BooleanSetting silent = new BooleanSetting("Silent", true);
    private final BooleanSetting secure = new BooleanSetting("Secure", true);

    @Subscribe
    private void onEventUpdate(EventUpdate event) {
        Iterator var2;
        if ((this.elements.getValueByName("Якорь возрождения").get())) {
            this.anchors.clear();
            this.find(6);
            var2 = this.anchors.iterator();

            while(var2.hasNext()) {
                BlockPos p = (BlockPos)var2.next();
                if (mc.player.inventory.getStackInSlot(mc.player.inventory.currentItem).getItem() != Items.GLOWSTONE) {
                    this.lastSlot = mc.player.inventory.currentItem;
                }

                int i;
                for(i = 0; i < 9; ++i) {
                    if (mc.player.inventory.getStackInSlot(i).getItem() == Items.GLOWSTONE) {
                        if ((Boolean)this.silent.getValue()) {
                            mc.getConnection().sendPacket(new CHeldItemChangePacket(i));
                        } else {
                            mc.player.inventory.currentItem = i;
                        }
                    }
                }

                i = (Integer)mc.world.getBlockState(p).get(RespawnAnchorBlock.CHARGES);
                if (i <= 3) {
                    if ((Boolean)this.secure.getValue()) {
                        if ((double)p.getY() >= mc.player.getPosY() + 1.0) {
                            mc.playerController.rightClickBlock(mc.player, mc.world, Hand.MAIN_HAND, new BlockRayTraceResult(new Vector3d((double)p.getX(), (double)p.getY(), (double)p.getZ()), Direction.DOWN, p, false));
                        }
                    } else {
                        mc.playerController.rightClickBlock(mc.player, mc.world, Hand.MAIN_HAND, new BlockRayTraceResult(new Vector3d((double)p.getX(), (double)p.getY(), (double)p.getZ()), Direction.DOWN, p, false));
                    }
                }

                if (i >= 3) {
                    if ((Boolean)this.silent.getValue()) {
                        mc.getConnection().sendPacket(new CHeldItemChangePacket(this.lastSlot));
                    } else {
                        mc.player.inventory.currentItem = this.lastSlot;
                    }
                }
            }
        }

        if (this.elements.getValueByName("Crystal").get()) {
            this.crystals.clear();
            var2 = mc.world.getAllEntities().iterator();

            while(var2.hasNext()) {
                Entity entity = (Entity)var2.next();
                if (entity instanceof EnderCrystalEntity) {
                    EnderCrystalEntity crystalx = (EnderCrystalEntity)entity;
                    if (mc.player.getDistance(crystalx) <= 6.0F && crystalx.isAlive()) {
                        this.crystals.add(crystalx);
                    }
                }
            }

            var2 = this.crystals.iterator();

            while(var2.hasNext()) {
                EnderCrystalEntity crystal = (EnderCrystalEntity)var2.next();
                if ((Boolean)this.secure.getValue()) {
                    if (crystal.getPosY() >= mc.player.getPosY() + 1.0) {
                        mc.getConnection().sendPacket(new CUseEntityPacket(crystal, true));
                    }
                } else {
                    mc.getConnection().sendPacket(new CUseEntityPacket(crystal, true));
                }
            }
        }
    }

    public AutoExplosion() {
        addSettings(elements, silent, secure);
    }

    private void find(int range) {
        BlockPos player = mc.player.getPosition();

        for(int y = (int)(-Math.min((double)range, mc.player.getPosY())); (double)y < Math.min((double)range, 255.0 - mc.player.getPosY()); ++y) {
            for(int x = -range; x < range; ++x) {
                for(int z = -range; z < range; ++z) {
                    BlockPos pos = player.add(x, y, z);
                    if (mc.world.getBlockState(pos).getBlock().getDefaultState().toString().equals("Block{minecraft:respawn_anchor}[charges=0]")) {
                        this.anchors.add(pos);
                    }
                }
            }
        }

    }
}
 
Начинающий
Статус
Оффлайн
Регистрация
20 Апр 2021
Сообщения
1,157
Реакции[?]
23
Поинты[?]
33K
Java:
package im.furious.functions.impl.combat;

import com.google.common.collect.Lists;
import java.util.Iterator;
import java.util.List;

import com.google.common.eventbus.Subscribe;
import im.furious.events.EventUpdate;
import im.furious.functions.api.Category;
import im.furious.functions.api.Function;
import im.furious.functions.api.FunctionRegister;
import im.furious.functions.settings.impl.BooleanSetting;
import im.furious.functions.settings.impl.ModeListSetting;
import net.minecraft.block.RespawnAnchorBlock;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EnderCrystalEntity;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.network.play.client.CUseEntityPacket;
import net.minecraft.util.Direction;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.BlockRayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(name = "AutoExplosion", type = Category.Combat)
public class AutoExplosion extends Function {
    private int lastSlot = -1;
    private final List<BlockPos> anchors = Lists.newArrayList();
    private final List<EnderCrystalEntity> crystals = Lists.newArrayList();
    private final ModeListSetting elements = new ModeListSetting("Элементы",
            new BooleanSetting("Якорь возрождения", true),
            new BooleanSetting("Crystal", true));
    private final BooleanSetting silent = new BooleanSetting("Silent", true);
    private final BooleanSetting secure = new BooleanSetting("Secure", true);

    @Subscribe
    private void onEventUpdate(EventUpdate event) {
        Iterator var2;
        if ((this.elements.getValueByName("Якорь возрождения").get())) {
            this.anchors.clear();
            this.find(6);
            var2 = this.anchors.iterator();

            while(var2.hasNext()) {
                BlockPos p = (BlockPos)var2.next();
                if (mc.player.inventory.getStackInSlot(mc.player.inventory.currentItem).getItem() != Items.GLOWSTONE) {
                    this.lastSlot = mc.player.inventory.currentItem;
                }

                int i;
                for(i = 0; i < 9; ++i) {
                    if (mc.player.inventory.getStackInSlot(i).getItem() == Items.GLOWSTONE) {
                        if ((Boolean)this.silent.getValue()) {
                            mc.getConnection().sendPacket(new CHeldItemChangePacket(i));
                        } else {
                            mc.player.inventory.currentItem = i;
                        }
                    }
                }

                i = (Integer)mc.world.getBlockState(p).get(RespawnAnchorBlock.CHARGES);
                if (i <= 3) {
                    if ((Boolean)this.secure.getValue()) {
                        if ((double)p.getY() >= mc.player.getPosY() + 1.0) {
                            mc.playerController.rightClickBlock(mc.player, mc.world, Hand.MAIN_HAND, new BlockRayTraceResult(new Vector3d((double)p.getX(), (double)p.getY(), (double)p.getZ()), Direction.DOWN, p, false));
                        }
                    } else {
                        mc.playerController.rightClickBlock(mc.player, mc.world, Hand.MAIN_HAND, new BlockRayTraceResult(new Vector3d((double)p.getX(), (double)p.getY(), (double)p.getZ()), Direction.DOWN, p, false));
                    }
                }

                if (i >= 3) {
                    if ((Boolean)this.silent.getValue()) {
                        mc.getConnection().sendPacket(new CHeldItemChangePacket(this.lastSlot));
                    } else {
                        mc.player.inventory.currentItem = this.lastSlot;
                    }
                }
            }
        }

        if (this.elements.getValueByName("Crystal").get()) {
            this.crystals.clear();
            var2 = mc.world.getAllEntities().iterator();

            while(var2.hasNext()) {
                Entity entity = (Entity)var2.next();
                if (entity instanceof EnderCrystalEntity) {
                    EnderCrystalEntity crystalx = (EnderCrystalEntity)entity;
                    if (mc.player.getDistance(crystalx) <= 6.0F && crystalx.isAlive()) {
                        this.crystals.add(crystalx);
                    }
                }
            }

            var2 = this.crystals.iterator();

            while(var2.hasNext()) {
                EnderCrystalEntity crystal = (EnderCrystalEntity)var2.next();
                if ((Boolean)this.secure.getValue()) {
                    if (crystal.getPosY() >= mc.player.getPosY() + 1.0) {
                        mc.getConnection().sendPacket(new CUseEntityPacket(crystal, true));
                    }
                } else {
                    mc.getConnection().sendPacket(new CUseEntityPacket(crystal, true));
                }
            }
        }
    }

    public AutoExplosion() {
        addSettings(elements, silent, secure);
    }

    private void find(int range) {
        BlockPos player = mc.player.getPosition();

        for(int y = (int)(-Math.min((double)range, mc.player.getPosY())); (double)y < Math.min((double)range, 255.0 - mc.player.getPosY()); ++y) {
            for(int x = -range; x < range; ++x) {
                for(int z = -range; z < range; ++z) {
                    BlockPos pos = player.add(x, y, z);
                    if (mc.world.getBlockState(pos).getBlock().getDefaultState().toString().equals("Block{minecraft:respawn_anchor}[charges=0]")) {
                        this.anchors.add(pos);
                    }
                }
            }
        }

    }
}
пацани ета мой код вари проста защитаааа!!!!
 
Начинающий
Статус
Оффлайн
Регистрация
20 Мар 2024
Сообщения
21
Реакции[?]
0
Поинты[?]
0
Java:
    public ActionResultType rightClickBlock(ClientPlayerEntity p_217292_1_, ClientWorld p_217292_2_, Hand p_217292_3_, BlockRayTraceResult p_217292_4_) {
        this.syncCurrentPlayItem();
        BlockPos blockpos = p_217292_4_.getPos();
        if (!this.mc.world.getWorldBorder().contains(blockpos)) {
            return ActionResultType.FAIL;
        } else {
            ItemStack itemstack = p_217292_1_.getHeldItem(p_217292_3_);
            if (this.currentGameType == GameType.SPECTATOR) {
                this.connection.sendPacket(new CPlayerTryUseItemOnBlockPacket(p_217292_3_, p_217292_4_));
                return ActionResultType.SUCCESS;
            } else {
                boolean flag = !p_217292_1_.getHeldItemMainhand().isEmpty() || !p_217292_1_.getHeldItemOffhand().isEmpty();
                boolean flag1 = p_217292_1_.isSecondaryUseActive() && flag;
                if (!flag1) {
                    ActionResultType actionresulttype = p_217292_2_.getBlockState(blockpos).onBlockActivated(p_217292_2_, p_217292_1_, p_217292_3_, p_217292_4_);
                    if (actionresulttype.isSuccessOrConsume()) {
                        this.connection.sendPacket(new CPlayerTryUseItemOnBlockPacket(p_217292_3_, p_217292_4_));
                        return actionresulttype;
                    }
                }

                this.connection.sendPacket(new CPlayerTryUseItemOnBlockPacket(p_217292_3_, p_217292_4_));
                if (!itemstack.isEmpty() && !p_217292_1_.getCooldownTracker().hasCooldown(itemstack.getItem())) {
                    ItemUseContext itemusecontext = new ItemUseContext(p_217292_1_, p_217292_3_, p_217292_4_);
                    ActionResultType actionresulttype1;
                    if (this.currentGameType.isCreative()) {
                        int i = itemstack.getCount();
                        actionresulttype1 = itemstack.onItemUse(itemusecontext);
                        itemstack.setCount(i);
                    } else {
                        actionresulttype1 = itemstack.onItemUse(itemusecontext);
                    }

                    return actionresulttype1;
                } else {
                    return ActionResultType.PASS;
                }
            }
        }
    }
 
Сверху Снизу