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

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

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

Часть функционала Exp 3.1 trigger bot

  • Автор темы Автор темы mihaq7
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
27 Июн 2024
Сообщения
38
Реакции
0
Выберите загрузчик игры
  1. Прочие моды
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
 
это ужастно, это дефолт тригер бот с каким то нахуй перегоном
 
Последнее редактирование:
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
не мучай больше ии, плюсом вроде твой обгончик не будет воркать с аимассистом потому ша бить не будет когда перегонять будет он же бьет когда на хитбокс наведен или как ты сделал
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
стоп, а при чем тут ваще помощь прицеливания если оно не аимиться никак что ты сделал и зачем ваще это выложил
 
Последнее редактирование:
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
Это ужасно. Зачем?

Оно же перестанет работать после первого обновления модели, да и сильного преимущества дать не сможет.

Ауру не сложно написать, каждый может.
 
Зачем такое постить?
Это же просто позор не более,ты бы лучше уж килку сделал, чем пытался сделать какую то легит килку что-ли >_<
 
КАВО НАХУЙ КАКОЙ ТРИГЕР БОТ ПО SLOTH ТЫ ЧО КУРИШЬ НАХУЙ? ПХПХПХПХХ
Это ужасно парень


/dell хуйня полная
 
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
триггер по sloth.. ок ок
 
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
Что блять тригер с элитра таргетом, и перегоном? Ты под чем делал его?
 
Для чего делать "обход" того, чего в античите нет впринципе?

В Sloth только Aim чек.

Мы на самом деле TriggerBot даже за чит не считаем, сильного преимущества оно все равно не даст.

Данный "обход" чем то похож на "неуловимого" Джо - его никто не ищет, но он прячется.
 
Последнее редактирование:
Дай килку под Sloth AI под твою базу позязя
 
всем привет сливаю триггер бот - аимассист. Обходит Античит Sloth AI

TriggerBot:
Expand Collapse Copy
import expensive.events.EventTarget;
import expensive.events.EventUpdate;
import expensive.events.EventDisplay;
import expensive.functions.api.Category;
import expensive.functions.api.Function;
import expensive.functions.api.FunctionRegister;
import expensive.functions.settings.Setting;
import expensive.functions.settings.impl.BooleanSetting;
import expensive.functions.settings.impl.ModeSetting;
import expensive.functions.settings.impl.SliderSetting;
import expensive.utils.drag.Dragging;
import expensive.Dick;
import com.mojang.blaze3d.matrix.MatrixStack;
import expensive.utils.render.DisplayUtils;
import expensive.utils.render.ColorUtils;
import expensive.utils.render.font.Fonts;
import expensive.utils.math.StopWatch;
import expensive.utils.player.AttackUtil;
import expensive.utils.player.InventoryUtil;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.EntityRayTraceResult;
import net.minecraft.util.math.RayTraceContext;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;


@FunctionRegister(
        name = "TriggerBot",
        description = "TriggerBot",
        type = Category.Combat
)
public class TriggerBot extends Function {
   private final BooleanSetting players = new BooleanSetting("Игроки", true);
   private final BooleanSetting mobs = new BooleanSetting("Мобы", true);
   private final BooleanSetting animals = new BooleanSetting("Животные", true);
   private final BooleanSetting onlyCrit = new BooleanSetting("Только криты", true);
   private final BooleanSetting shieldBreak = new BooleanSetting("Ломать щит", false);
   private final BooleanSetting wallHit = new BooleanSetting("Удары через стены", false);
   private final BooleanSetting correciaebat = new BooleanSetting("Корректировать удары", false);
   private final BooleanSetting elytraTarget = new BooleanSetting("Элитра таргет", false);
   private final ModeSetting elytraMode = new ModeSetting("Режим элитры", "Авто", new String[]{"Авто", "Кастом"});
   private final SliderSetting elytraDistance = new SliderSetting("Доп. дистанция", 1.5F, 1.0F, 5.0F, 0.1F);
   private final ModeSetting elytraOvertake = new ModeSetting("Выбор обгона", "Новый", new String[]{"Старый", "Новый"});
   private final BooleanSetting elytraEatChorus = new BooleanSetting("Кушать хорус", true);
   private final StopWatch stopWatch = new StopWatch();
   private static LivingEntity currentTarget;
   private boolean isEatingChorus = false;
   private int lastSlot = 0;

   public TriggerBot() {
      this.addSettings(new Setting[]{this.wallHit, this.onlyCrit, this.players, this.animals, this.shieldBreak, this.correciaebat, this.elytraTarget, this.elytraMode, this.elytraDistance, this.elytraOvertake, this.elytraEatChorus});
   }

   @EventTarget
   public void onUpdate(EventUpdate e) {
      this.handleElytraChorus();
      Entity entity = this.getValidEntity();
      if (entity != null && mc.player != null) {
         currentTarget = (LivingEntity)entity;
         if (this.shouldAttack()) {
            this.stopWatch.setLastMS(450L);
            this.attackEntity(entity);
         }
      } else {
         currentTarget = null;
      }

   }

   public static LivingEntity getCurrentTarget() {
      return currentTarget;
   }

   private boolean shouldAttack() {
      return AttackUtil.isPlayerFalling((Boolean)this.onlyCrit.get(), true, false) && this.stopWatch.hasTimeElapsed();
   }

   private void attackEntity(Entity entity) {
      boolean shouldStopSprinting = false;
      if ((Boolean)this.onlyCrit.get() && CEntityActionPacket.lastUpdatedSprint) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.STOP_SPRINTING));
         shouldStopSprinting = true;
      }

      if ((Boolean)this.wallHit.get() || this.canSeeEntity(entity)) {
         mc.playerController.attackEntity(mc.player, entity);
         mc.player.swingArm(Hand.MAIN_HAND);
         if ((Boolean)this.shieldBreak.get() && entity instanceof PlayerEntity) {
            breakShieldPlayer(entity);
         }
      }

      if (shouldStopSprinting) {
         mc.player.connection.sendPacket(new CEntityActionPacket(mc.player, CEntityActionPacket.Action.START_SPRINTING));
      }

   }

   private boolean canSeeEntity(Entity entity) {
      if (entity == null) {
         return false;
      } else {
         Vector3d eyesPos = mc.player.getEyePosition(1.0F);
         Vector3d targetPos = entity.getBoundingBox().getCenter();
         RayTraceResult result = mc.world.rayTraceBlocks(new RayTraceContext(eyesPos, targetPos, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, mc.player));
         return result.getType() == RayTraceResult.Type.MISS;
      }
   }

   private Entity getValidEntity() {
      if ((Boolean)this.elytraTarget.get() && mc.player.isElytraFlying()) {
         return this.findElytraTarget();
      } else if ((Boolean)this.wallHit.get()) {
         return this.findTargetThroughWalls();
      } else {
         if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY) {
            Entity entity = ((EntityRayTraceResult)mc.objectMouseOver).getEntity();
            if (this.checkEntity((LivingEntity)entity)) {
               return entity;
            }
         }

         return null;
      }
   }

   private Entity findElytraTarget() {
      if (mc.player != null && mc.world != null) {
         double range = (double)12.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).filter((entity) -> entity.isElytraFlying()).min(Comparator.comparingDouble((entity) -> {
            double baseDistance = mc.player.getDistanceSq(entity);
            return this.elytraMode.is("Кастом") ? baseDistance + (double)(Float)this.elytraDistance.get() : baseDistance;
         })).orElse(null);
      } else {
         return null;
      }
   }

   private Entity findTargetThroughWalls() {
      if (mc.player != null && mc.world != null) {
         double range = (double)6.0F;
         AxisAlignedBB searchBox = mc.player.getBoundingBox().grow(range);
         List<Entity> entities = mc.world.getEntitiesWithinAABBExcludingEntity(mc.player, searchBox);
         return (Entity)entities.stream().filter((entity) -> entity instanceof LivingEntity).map((entity) -> (LivingEntity)entity).filter(this::checkEntity).filter((entity) -> entity.isAlive()).min(Comparator.comparingDouble((entity) -> mc.player.getDistanceSq(entity))).orElse(null);
      } else {
         return null;
      }
   }

   private void handleElytraChorus() {
      if ((Boolean)this.elytraTarget.get() && (Boolean)this.elytraEatChorus.get() && mc.player.isElytraFlying()) {
         if (currentTarget != null && currentTarget.getHeldItemMainhand().getItem() == Items.CHORUS_FRUIT && currentTarget.isHandActive() && this.doesHotbarHaveItem(Items.CHORUS_FRUIT)) {
            if (!this.isEatingChorus) {
               this.lastSlot = mc.player.inventory.currentItem;
               this.useChorusFruit();
               this.isEatingChorus = true;
            }
         } else if (this.isEatingChorus) {
            this.stopEatingChorus();
            this.isEatingChorus = false;
         }

      }
   }

   private boolean doesHotbarHaveItem(Item item) {
      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == item) {
            return true;
         }
      }

      return false;
   }

   private void useChorusFruit() {
      int chorusSlot = -1;

      for(int i = 0; i < 9; ++i) {
         if (mc.player.inventory.getStackInSlot(i).getItem() == Items.CHORUS_FRUIT) {
            chorusSlot = i;
            break;
         }
      }

      if (chorusSlot != -1) {
         mc.player.inventory.currentItem = chorusSlot;
         mc.gameSettings.keyBindUseItem.setPressed(true);
      }

   }

   private void stopEatingChorus() {
      mc.gameSettings.keyBindUseItem.setPressed(false);
      mc.player.inventory.currentItem = this.lastSlot;
   }

   public static void breakShieldPlayer(Entity entity) {
      if (((LivingEntity)entity).isBlocking()) {
         int invSlot = InventoryUtil.getInstance().getAxeInInventory(false);
         int hotBarSlot = InventoryUtil.getInstance().getAxeInInventory(true);
         if (hotBarSlot == -1 && invSlot != -1) {
            int bestSlot = InventoryUtil.getInstance().findBestSlotInHotBar();
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(bestSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
            mc.playerController.windowClick(0, bestSlot + 36, 0, ClickType.PICKUP, mc.player);
            mc.playerController.windowClick(0, invSlot, 0, ClickType.PICKUP, mc.player);
         }

         if (hotBarSlot != -1) {
            mc.player.connection.sendPacket(new CHeldItemChangePacket(hotBarSlot));
            mc.playerController.attackEntity(mc.player, entity);
            mc.player.swingArm(Hand.MAIN_HAND);
            mc.player.connection.sendPacket(new CHeldItemChangePacket(mc.player.inventory.currentItem));
         }
      }

   }

   private boolean checkEntity(LivingEntity entity) {
      AttackUtil entitySelector = new AttackUtil();
      if ((Boolean)this.players.get()) {
         entitySelector.apply(AttackUtil.EntityType.PLAYERS);
      }

      if ((Boolean)this.mobs.get()) {
         entitySelector.apply(AttackUtil.EntityType.MOBS);
      }

      if ((Boolean)this.animals.get()) {
         entitySelector.apply(AttackUtil.EntityType.ANIMALS);
      }

      return entitySelector.ofType(entity, entitySelector.build()) != null && entity.isAlive();
   }

   public void onDisable() {
      currentTarget = null;
      this.stopWatch.reset();
      if (this.isEatingChorus) {
         this.stopEatingChorus();
         this.isEatingChorus = false;
      }

      super.onDisable();
   }
}
Пошел ка ты нахуй друже. Если че там чеки онли аим ебанный
 
Для чего делать "обход" того, чего в античите нет впринципе?

В Sloth только Aim чек.

Мы на самом деле TriggerBot даже за чит не считаем, сильного преимущества оно все равно не даст.

Данный "обход" чем то похож на "неуловимого" Джо - его никто не ищет, но он прячется.
triggerbot дает сильное преимущество
 
ебать долбаеб высказался
ты не базарь так ты в день по 5 тем постишь с вопросом по типу какой ач на лонигрифе? какой чит работает на сервере где Sloth AI? какой чит обходит CakeWorld и потом ты постишь такое говно которое даже не аимитса
 

Похожие темы

Назад
Сверху Снизу