Начинающий
			
			
				
					
				
			
		- Статус
- Оффлайн
- Регистрация
- 6 Окт 2024
- Сообщения
- 61
- Реакции
- 0
- Выберите загрузчик игры
- Прочие моды
 
Салэм YouGame сливаю вам авто тотем на элитры
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Не бейте(
				
			
			
				AutoTotem:
			
		
		
		//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package wtf.expensive.modules.impl.combat;
import wtf.expensive.events.Event;
import wtf.expensive.events.impl.player.EventUpdate;
import wtf.expensive.modules.Function;
import wtf.expensive.modules.FunctionAnnotation;
import wtf.expensive.modules.Type;
import wtf.expensive.modules.settings.Setting;
import wtf.expensive.modules.settings.imp.BooleanOption;
import wtf.expensive.modules.settings.imp.MultiBoxSetting;
import wtf.expensive.modules.settings.imp.SliderSetting;
import wtf.expensive.util.misc.TimerUtil;
import wtf.expensive.util.world.InventoryUtil;
import wtf.expensive.util.world.WorldUtil.TotemUtil;
import net.minecraft.block.Blocks;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EnderCrystalEntity;
import net.minecraft.entity.item.TNTEntity;
import net.minecraft.entity.item.minecart.TNTMinecartEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.AirItem;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.item.SkullItem;
import net.minecraft.potion.Effects;
@FunctionAnnotation(
        name = "AutoTotem",
        type = Type.Combat
)
  public class AutoTotemFunction extends Function {
    private final SliderSetting health = new SliderSetting("Здоровье", 4.0F, 0.5F, 20.0F, 0.1F);
    private final BooleanOption swapBack = new BooleanOption("Возвращать предмет", true);
    private final BooleanOption saveenchant = new BooleanOption("Сохранять зачарованные", false);
    private final BooleanOption noBallSwitch = new BooleanOption("Не брать если шар в руке", true);
    private final MultiBoxSetting mode = new MultiBoxSetting("Срабатывать", new BooleanOption[]{new BooleanOption("Золотые сердечки", false), new BooleanOption("Кристаллы", true), new BooleanOption("Обсидиан", false), new BooleanOption("Якорь", false), new BooleanOption("Падение", true), new BooleanOption("Кристалл в руке", true), new BooleanOption("Здоровье на элитре", true)});
    private final SliderSetting radiusExplosion = (new SliderSetting("Дистанция до кристала", 6.0F, 1.0F, 8.0F, 1.0F)).setVisible(() -> this.mode.get(1));
    private final SliderSetting radiusCris = (new SliderSetting("Дистанция до кристала в руке", 6.0F, 1.0F, 8.0F, 1.0F)).setVisible(() -> this.mode.get(5));
    private final SliderSetting radiusObs = (new SliderSetting("Дистанция до обсидиана", 6.0F, 1.0F, 8.0F, 1.0F)).setVisible(() -> this.mode.get("Обсидиан"));
    private final SliderSetting radiusAnch = (new SliderSetting("Дистанция до якоря", 6.0F, 1.0F, 8.0F, 1.0F)).setVisible(() -> this.mode.get("Якорь"));
    private final SliderSetting HPElytra = (new SliderSetting("Здоровью на элитре", 6.0F, 1.0F, 20.0F, 0.5F)).setVisible(() -> this.mode.get("Здоровье на элитре"));
    private final SliderSetting DistanceFall = (new SliderSetting("Дистанция падения", 20.0F, 3.0F, 100.0F, 1.0F)).setVisible(() -> this.mode.get("Падение"));
    private final BooleanOption matrix = new BooleanOption("Обход Matrix", false);
    int oldItem = -1;
    private long lastActionTime = 0L;
    private final long delay = 97L;
    private boolean wasHoldingItem = false;
    TimerUtil timerUtil = new TimerUtil();
    public AutoTotemFunction() {
        this.addSettings(new Setting[]{this.mode, this.health, this.radiusExplosion, this.radiusObs, this.radiusAnch, this.radiusCris, this.HPElytra, this.DistanceFall, this.swapBack, this.saveenchant, this.noBallSwitch, this.matrix});
    }
    public void onEvent(Event event) {
        if (event instanceof EventUpdate) {
            if (this.matrix.get()) {
                this.handleNewSwap((EventUpdate)event);
            } else {
                this.handleEventUpdate((EventUpdate)event);
            }
        }
    }
    private void handleEventUpdate(EventUpdate event) {
        int slot;
        boolean handNotNull;
        boolean var5;
        label42: {
            slot = InventoryUtil.getItemSlot(Items.TOTEM_OF_UNDYING);
            Minecraft var10000 = mc;
            handNotNull = !(Minecraft.player.getHeldItemOffhand().getItem() instanceof AirItem);
            var10000 = mc;
            if (Minecraft.player.getHeldItemOffhand().getItem() != Items.TOTEM_OF_UNDYING) {
                var10000 = mc;
                if (Minecraft.player.getHeldItemMainhand().getItem() != Items.TOTEM_OF_UNDYING) {
                    var5 = false;
                    break label42;
                }
            }
            var5 = true;
        }
        if (this.saveenchant.get()) {
            Minecraft var8 = mc;
            if (Minecraft.player.getHealth() < this.health.getValue().floatValue()) {
                var8 = mc;
                if (Minecraft.player.getHeldItemOffhand().isEnchanted()) {
                    Minecraft var10002 = mc;
                    Minecraft var11 = mc;
                    mc.playerController.windowClick(0, Minecraft.player.inventory.currentItem, 40, ClickType.SWAP, Minecraft.player);
                    return;
                }
            }
        }
        if (this.condition()) {
            if (slot >= 0 && !var5) {
                Minecraft var10005 = mc;
                mc.playerController.windowClick(0, slot, 40, ClickType.SWAP, Minecraft.player);
                if (handNotNull && this.oldItem == -1) {
                    this.oldItem = slot;
                }
            }
        } else if (this.oldItem != -1 && this.swapBack.get()) {
            Minecraft var10 = mc;
            mc.playerController.windowClick(0, this.oldItem, 40, ClickType.SWAP, Minecraft.player);
            this.oldItem = -1;
            this.timerUtil.hasTimeElapsed(100L);
        }
    }
    private void handleNewSwap(EventUpdate event) {
        int slot = InventoryUtil.getItemSlot(Items.TOTEM_OF_UNDYING);
        Minecraft var10000 = mc;
        boolean totemInHand = Minecraft.player.getHeldItemOffhand().getItem().equals(Items.TOTEM_OF_UNDYING);
        var10000 = mc;
        boolean handNotNull = !(Minecraft.player.getHeldItemOffhand().getItem() instanceof AirItem);
        if (this.condition()) {
            if (slot >= 0 && !totemInHand) {
                Minecraft var10005 = mc;
                mc.playerController.windowClick(0, slot, 1, ClickType.PICKUP, Minecraft.player);
                var10005 = mc;
                mc.playerController.windowClick(0, 45, 1, ClickType.PICKUP, Minecraft.player);
                if (handNotNull && this.swapBack.get()) {
                    var10005 = mc;
                    mc.playerController.windowClick(0, slot, 0, ClickType.PICKUP, Minecraft.player);
                    if (this.oldItem == -1) {
                        this.oldItem = slot;
                    }
                }
            }
        } else if (this.oldItem != -1) {
            Minecraft var8 = mc;
            mc.playerController.windowClick(0, this.oldItem, 0, ClickType.PICKUP, Minecraft.player);
            var8 = mc;
            mc.playerController.windowClick(0, 45, 0, ClickType.PICKUP, Minecraft.player);
            if (handNotNull && this.swapBack.get()) {
                var8 = mc;
                mc.playerController.windowClick(0, this.oldItem, 0, ClickType.PICKUP, Minecraft.player);
            }
            this.oldItem = -1;
        }
    }
    private boolean condition() {
        float var2;
        label39: {
            if (this.mode.get(0)) {
                Minecraft var10000 = mc;
                if (Minecraft.player.isPotionActive(Effects.ABSORPTION)) {
                    var10000 = mc;
                    var2 = Minecraft.player.getAbsorptionAmount();
                    break label39;
                }
            }
            var2 = 0.0F;
        }
        Minecraft var4 = mc;
        if (Minecraft.player.getHealth() + var2 <= this.health.getValue().floatValue()) {
            return true;
        } else {
            if (!this.isBall()) {
                if (this.checkCrystal()) {
                    return true;
                }
                if (this.checkObsidian()) {
                    return true;
                }
                if (this.checkAnchor()) {
                    return true;
                }
                if (this.checkPlayerItemCrystal()) {
                    return true;
                }
            }
            return this.checkHPElytra() ? true : this.checkFall();
        }
    }
    private boolean checkHPElytra() {
        if (!this.mode.get("Здоровье на элитре")) {
            return false;
        } else {
            Minecraft var10000 = mc;
            if (((ItemStack)Minecraft.player.inventory.armorInventory.get(2)).getItem() == Items.ELYTRA) {
                var10000 = mc;
                if (Minecraft.player.getHealth() <= this.HPElytra.getValue().floatValue()) {
                    boolean var1 = true;
                    return var1;
                }
            }
            boolean var1 = false;
            return var1;
        }
    }
    private boolean checkPlayerItemCrystal() {
        if (!this.mode.get("Кристалл в руке")) {
            return false;
        } else {
            for(PlayerEntity entity : mc.world.getPlayers()) {
                Minecraft var10000 = mc;
                if (Minecraft.player != entity && (entity.getHeldItemOffhand().getItem() == Items.END_CRYSTAL || entity.getHeldItemMainhand().getItem() == Items.END_CRYSTAL)) {
                    var10000 = mc;
                    if (!(Minecraft.player.getDistance(entity) >= this.radiusCris.getValue().floatValue())) {
                        return true;
                    }
                }
            }
            return false;
        }
    }
    private boolean checkFall() {
        if (!this.mode.get(4)) {
            return false;
        } else {
            Minecraft var10000 = mc;
            return Minecraft.player.fallDistance > this.DistanceFall.getValue().floatValue();
        }
    }
    private boolean isBall() {
        if (this.mode.get(3)) {
            Minecraft var10000 = mc;
            if (Minecraft.player.fallDistance > 5.0F) {
                return false;
            }
        }
        if (this.noBallSwitch.get()) {
            Minecraft var3 = mc;
            if (Minecraft.player.getHeldItemOffhand().getItem() instanceof SkullItem) {
                boolean var1 = true;
                return var1;
            }
        }
        boolean var1 = false;
        return var1;
    }
    private boolean checkObsidian() {
        if (!this.mode.get(2)) {
            return false;
        } else {
            return TotemUtil.getBlock(this.radiusObs.getValue().floatValue(), Blocks.OBSIDIAN) != null;
        }
    }
    private boolean checkAnchor() {
        if (!this.mode.get(3)) {
            return false;
        } else {
            return TotemUtil.getBlock(this.radiusAnch.getValue().floatValue(), Blocks.RESPAWN_ANCHOR) != null;
        }
    }
    private boolean checkCrystal() {
        if (!this.mode.get(1)) {
            return false;
        } else {
            for(Entity entity : mc.world.getAllEntities()) {
                if (entity instanceof EnderCrystalEntity) {
                    Minecraft var10000 = mc;
                    if (Minecraft.player.getDistance(entity) <= this.radiusExplosion.getValue().floatValue()) {
                        return true;
                    }
                }
                if (entity instanceof TNTEntity || entity instanceof TNTMinecartEntity) {
                    Minecraft var3 = mc;
                    if (!(Minecraft.player.getDistance(entity) > this.radiusExplosion.getValue().floatValue())) {
                        return true;
                    }
                }
            }
            return false;
        }
    }
    private void reset() {
        this.oldItem = -1;
    }
    protected void onEnable() {
        this.reset();
        super.onEnable();
    }
    protected void onDisable() {
        this.reset();
        super.onDisable();
    }
}Не бейте(
 
				 
	 
 
		 
 
		
 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		