package ИМПОРТ.modules.impl.combat;
import ИМПОРТ.events.Event;
import ИМПОРТ.events.impl.player.EventUpdate;
import ИМПОРТ.modules.Function;
import ИМПОРТ.modules.FunctionAnnotation;
import ИМПОРТ.modules.Type;
import ИМПОРТ.modules.settings.Setting;
import ИМПОРТ.modules.settings.imp.ModeSetting;
import ИМПОРТ.util.misc.TimerUtil;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import static ИМПОРТ.util.IMinecraft.mc;
@FunctionAnnotation(
name = "AntiBot",
type = Type.Combat
)
public class AntiBot extends Function {
private final ModeSetting mode = new ModeSetting("Выбор режима", "RW", new String[]{"RW", "MatrixNew"});
private final TimerUtil timerUtil = new TimerUtil();
public static List<Entity> isBot = new ArrayList();
public AntiBot() {
this.addSettings(new Setting[]{this.mode});
}
public void onEvent(Event event) {
if (event instanceof EventUpdate) {
if (this.mode.is("MatrixNew")) {
this.newMatrix();
}
if (this.mode.is("RW")) {
this.oldMatrix();
}
}
}
public void oldMatrix() {
for(PlayerEntity entity : mc.world.getPlayers()) {
if (!entity.getUniqueID().equals(PlayerEntity.getOfflineUUID(entity.getName().getString())) && !isBot.contains(entity)) {
isBot.add(entity);
}
}
}
public void newMatrix() {
for(PlayerEntity entity : mc.world.getPlayers()) {
Minecraft var10000 = mc;
if (Minecraft.player != entity && ((ItemStack)entity.inventory.armorInventory.get(0)).getItem() != Items.AIR && ((ItemStack)entity.inventory.armorInventory.get(1)).getItem() != Items.AIR && ((ItemStack)entity.inventory.armorInventory.get(2)).getItem() != Items.AIR && ((ItemStack)entity.inventory.armorInventory.get(3)).getItem() != Items.AIR && ((ItemStack)entity.inventory.armorInventory.get(0)).isEnchantable() && ((ItemStack)entity.inventory.armorInventory.get(1)).isEnchantable() && ((ItemStack)entity.inventory.armorInventory.get(2)).isEnchantable() && ((ItemStack)entity.inventory.armorInventory.get(3)).isEnchantable() && entity.getHeldItemOffhand().getItem() == Items.AIR && (((ItemStack)entity.inventory.armorInventory.get(0)).getItem() == Items.LEATHER_BOOTS || ((ItemStack)entity.inventory.armorInventory.get(1)).getItem() == Items.LEATHER_LEGGINGS || ((ItemStack)entity.inventory.armorInventory.get(2)).getItem() == Items.LEATHER_CHESTPLATE || ((ItemStack)entity.inventory.armorInventory.get(3)).getItem() == Items.LEATHER_HELMET || ((ItemStack)entity.inventory.armorInventory.get(0)).getItem() == Items.IRON_BOOTS || ((ItemStack)entity.inventory.armorInventory.get(1)).getItem() == Items.IRON_LEGGINGS || ((ItemStack)entity.inventory.armorInventory.get(2)).getItem() == Items.IRON_CHESTPLATE || ((ItemStack)entity.inventory.armorInventory.get(3)).getItem() == Items.IRON_HELMET) && entity.getHeldItemMainhand().getItem() != Items.AIR && !((ItemStack)entity.inventory.armorInventory.get(0)).isDamaged() && !((ItemStack)entity.inventory.armorInventory.get(1)).isDamaged() && !((ItemStack)entity.inventory.armorInventory.get(2)).isDamaged() && !((ItemStack)entity.inventory.armorInventory.get(3)).isDamaged() && entity.getFoodStats().getFoodLevel() == 20) {
if (!isBot.contains(entity)) {
isBot.add(entity);
}
return;
}
if (isBot.contains(entity)) {
isBot.remove(entity);
}
}
}
public static boolean checkBot(LivingEntity entity) {
return entity instanceof PlayerEntity ? isBot.contains(entity) : false;
}
public void onDisable() {
super.onDisable();
isBot.clear();
}
}