Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

AutoTransfer elysium

  • Автор темы Автор темы zMazix
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
26 Мар 2021
Сообщения
82
Реакции
3
Если че обычный декомпил, работает нормально, тестил.
Expensive Ready.
Работает только на втором виде Gui(Beta)
захотите переделаете



AutoTransfer.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screen.inventory.ContainerScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import ru.elysium.events.Event;
import ru.elysium.modules.Function;
import ru.elysium.modules.FunctionAnnotation;
import ru.elysium.modules.Type;
import ru.elysium.modules.impl.player.Multithreading;
import ru.elysium.modules.settings.imp.SliderSetting;
import ru.elysium.modules.settings.imp.TextSetting;
import ru.elysium.util.ClientUtil;
import ru.elysium.util.math.MathUtil;

@FunctionAnnotation(name="AutoTransfer", type=Type.Player)
public class AutoTransfer
extends Function {
    public TextSetting anarchy = new TextSetting("Анархия", "101");
    private final SliderSetting itemCount = new SliderSetting("Кол-во предметов", 1.0f, 3.0f, 10.0f, 1.0f);
    private final SliderSetting coldown = new SliderSetting("Кулдаун", 500.0f, 10.0f, 1000.0f, 10.0f);
    public TextSetting sellCommand = new TextSetting("Команда для продажи", "/ah dsell 10");
    private boolean buyAction = false;
    private boolean isClicking = false;
    private long lastTransferTime = 0L;
    private final ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();

    public AutoTransfer() {
        this.addSettings(this.anarchy, this.itemCount, this.sellCommand, this.coldown);
    }

    @Override
    public void onEnable() {
        if (Minecraft.player != null && AutoTransfer.mc.world != null) {
            if (Minecraft.player.ticksExisted < 500) {
                float f = (float)(500 - Minecraft.player.ticksExisted) / 20.0f;
                ClientUtil.sendMesage("Подождите " + MathUtil.round(f, 2) + " секунд");
                super.onEnable();
            } else {
                String string = this.anarchy.get();
                if (!this.isNumbers(string)) {
                    ClientUtil.sendMesage("AutoTransfer - Введите номер анархии! (Только числа).");
                    super.onEnable();
                } else {
                    int n = Integer.parseInt(this.anarchy.get());
                    if (n >= 0 && n <= 600) {
                        this.transfer(n);
                        super.onEnable();
                    } else {
                        ClientUtil.sendMesage("AutoTransfer - Введите номер анархии от 0 до 600!");
                        super.onEnable();
                    }
                }
            }
        } else {
            super.onEnable();
        }
    }

    @Override
    public void onEvent(Event event) {
    }

    public void onEvent(org.w3c.dom.events.Event event) {
        this.onMotion();
    }

    private boolean isNumbers(String string) {
        return string.matches("\\d+");
    }

    private void transfer(int n) {
        Multithreading.runAsync(this::lambda$transfer$0);
    }

    private void lambda$transfer$0() {
    }

    private void onMotion() {
        if (this.buyAction && AutoTransfer.mc.currentScreen instanceof ContainerScreen) {
            ContainerScreen containerScreen = (ContainerScreen)AutoTransfer.mc.currentScreen;
            int n = this.itemCount.getValue().intValue();
            int n2 = 0;
            for (Slot slot : ((Container)containerScreen.getContainer()).inventorySlots) {
                if (slot.getStack().isEmpty() || System.currentTimeMillis() - this.lastTransferTime < this.coldown.getValue().longValue()) continue;
                if (!this.isClicking) {
                    this.isClicking = true;
                    AutoTransfer.mc.playerController.windowClick(((Container)containerScreen.getContainer()).windowId, slot.slotNumber, 0, ClickType.QUICK_MOVE, Minecraft.player);
                    ++n2;
                    this.lastTransferTime = System.currentTimeMillis();
                    CompletableFuture.runAsync(this::lambda$onMotion$1);
                    this.executor.schedule(AutoTransfer::lambda$onMotion$2, this.coldown.getValue().longValue(), TimeUnit.MILLISECONDS);
                }
                if (n2 < n) continue;
                Minecraft.player.closeScreen();
                break;
            }
        }
    }

    @Override
    public void onDisable() {
        super.onDisable();
    }

    private static void lambda$onMotion$2() {
    }

    private void lambda$onMotion$1() {
        try {
            Thread.sleep(500L);
        }
        catch (InterruptedException interruptedException) {
            interruptedException.printStackTrace();
        }
        finally {
            this.isClicking = false;
        }
    }

    private void lambda$transfer$0(int n) {
        Minecraft.player.inventory.currentItem = 0;
        int n2 = 0;
        for (Slot slot : Minecraft.player.container.inventorySlots) {
            if (slot.getStack().isEmpty()) continue;
            if (n2 >= this.itemCount.getValue().intValue()) break;
            if (Minecraft.player.inventory.getStackInSlot(0).isEmpty() && slot.slotNumber != 0) {
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, slot.slotNumber, 0, ClickType.PICKUP, Minecraft.player);
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, 36, 0, ClickType.PICKUP, Minecraft.player);
            }
            Multithreading.awaitMillis(100L);
            if (!Minecraft.player.inventory.getStackInSlot(0).isEmpty()) {
                Minecraft.player.sendChatMessage(this.sellCommand.get());
                ++n2;
                Multithreading.awaitMillis(250L);
            }
            Multithreading.awaitMillis(100L);
        }
        Minecraft.player.sendChatMessage("/an" + n);
        Multithreading.awaitMillis(400L);
        Minecraft.player.sendChatMessage("/ah " + mc.getSession().getUsername());
        Multithreading.awaitMillis(200L);
        int n3 = 0;
        do {
            if (Minecraft.player.openContainer instanceof ChestContainer) break;
            Multithreading.awaitMillis(50L);
        } while (++n3 <= 100);
        Multithreading.awaitMillis(150L);
        this.buyAction = true;
    }
}
там ещё утилка нужна типо, вот она

Multithreading.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import lombok.NonNull;

public class Multithreading {
    private static final ScheduledExecutorService RUNNABLE_EXECUTOR = Executors.newScheduledThreadPool(20, new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });
    public static ExecutorService EXECUTOR = Executors.newCachedThreadPool(new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });

    public static void awaitMillis(long l) {
        try {
            EXECUTOR.awaitTermination(l, TimeUnit.MILLISECONDS);
        }
        catch (Exception exception) {
            // empty catch block
        }
    }

    public static void schedule(Runnable runnable, long l, long l2, TimeUnit timeUnit) {
        RUNNABLE_EXECUTOR.scheduleAtFixedRate(runnable, l, l2, timeUnit);
    }

    public static ScheduledFuture<?> schedule(Runnable runnable, long l, TimeUnit timeUnit) {
        return RUNNABLE_EXECUTOR.schedule(runnable, l, timeUnit);
    }

    public static int getTotal() {
        return ((ThreadPoolExecutor)EXECUTOR).getActiveCount();
    }

    public static void runAsync(Runnable runnable) {
        EXECUTOR.execute(runnable);
    }
}
 
Бро он ваще не вокрк
 
Bro on ne work at xddd
 
Это умный auto transfer?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Если че обычный декомпил, работает нормально, тестил.
Expensive Ready.
Работает только на втором виде Gui(Beta)
захотите переделаете



AutoTransfer.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screen.inventory.ContainerScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import ru.elysium.events.Event;
import ru.elysium.modules.Function;
import ru.elysium.modules.FunctionAnnotation;
import ru.elysium.modules.Type;
import ru.elysium.modules.impl.player.Multithreading;
import ru.elysium.modules.settings.imp.SliderSetting;
import ru.elysium.modules.settings.imp.TextSetting;
import ru.elysium.util.ClientUtil;
import ru.elysium.util.math.MathUtil;

@FunctionAnnotation(name="AutoTransfer", type=Type.Player)
public class AutoTransfer
extends Function {
    public TextSetting anarchy = new TextSetting("Анархия", "101");
    private final SliderSetting itemCount = new SliderSetting("Кол-во предметов", 1.0f, 3.0f, 10.0f, 1.0f);
    private final SliderSetting coldown = new SliderSetting("Кулдаун", 500.0f, 10.0f, 1000.0f, 10.0f);
    public TextSetting sellCommand = new TextSetting("Команда для продажи", "/ah dsell 10");
    private boolean buyAction = false;
    private boolean isClicking = false;
    private long lastTransferTime = 0L;
    private final ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();

    public AutoTransfer() {
        this.addSettings(this.anarchy, this.itemCount, this.sellCommand, this.coldown);
    }

    @Override
    public void onEnable() {
        if (Minecraft.player != null && AutoTransfer.mc.world != null) {
            if (Minecraft.player.ticksExisted < 500) {
                float f = (float)(500 - Minecraft.player.ticksExisted) / 20.0f;
                ClientUtil.sendMesage("Подождите " + MathUtil.round(f, 2) + " секунд");
                super.onEnable();
            } else {
                String string = this.anarchy.get();
                if (!this.isNumbers(string)) {
                    ClientUtil.sendMesage("AutoTransfer - Введите номер анархии! (Только числа).");
                    super.onEnable();
                } else {
                    int n = Integer.parseInt(this.anarchy.get());
                    if (n >= 0 && n <= 600) {
                        this.transfer(n);
                        super.onEnable();
                    } else {
                        ClientUtil.sendMesage("AutoTransfer - Введите номер анархии от 0 до 600!");
                        super.onEnable();
                    }
                }
            }
        } else {
            super.onEnable();
        }
    }

    @Override
    public void onEvent(Event event) {
    }

    public void onEvent(org.w3c.dom.events.Event event) {
        this.onMotion();
    }

    private boolean isNumbers(String string) {
        return string.matches("\\d+");
    }

    private void transfer(int n) {
        Multithreading.runAsync(this::lambda$transfer$0);
    }

    private void lambda$transfer$0() {
    }

    private void onMotion() {
        if (this.buyAction && AutoTransfer.mc.currentScreen instanceof ContainerScreen) {
            ContainerScreen containerScreen = (ContainerScreen)AutoTransfer.mc.currentScreen;
            int n = this.itemCount.getValue().intValue();
            int n2 = 0;
            for (Slot slot : ((Container)containerScreen.getContainer()).inventorySlots) {
                if (slot.getStack().isEmpty() || System.currentTimeMillis() - this.lastTransferTime < this.coldown.getValue().longValue()) continue;
                if (!this.isClicking) {
                    this.isClicking = true;
                    AutoTransfer.mc.playerController.windowClick(((Container)containerScreen.getContainer()).windowId, slot.slotNumber, 0, ClickType.QUICK_MOVE, Minecraft.player);
                    ++n2;
                    this.lastTransferTime = System.currentTimeMillis();
                    CompletableFuture.runAsync(this::lambda$onMotion$1);
                    this.executor.schedule(AutoTransfer::lambda$onMotion$2, this.coldown.getValue().longValue(), TimeUnit.MILLISECONDS);
                }
                if (n2 < n) continue;
                Minecraft.player.closeScreen();
                break;
            }
        }
    }

    @Override
    public void onDisable() {
        super.onDisable();
    }

    private static void lambda$onMotion$2() {
    }

    private void lambda$onMotion$1() {
        try {
            Thread.sleep(500L);
        }
        catch (InterruptedException interruptedException) {
            interruptedException.printStackTrace();
        }
        finally {
            this.isClicking = false;
        }
    }

    private void lambda$transfer$0(int n) {
        Minecraft.player.inventory.currentItem = 0;
        int n2 = 0;
        for (Slot slot : Minecraft.player.container.inventorySlots) {
            if (slot.getStack().isEmpty()) continue;
            if (n2 >= this.itemCount.getValue().intValue()) break;
            if (Minecraft.player.inventory.getStackInSlot(0).isEmpty() && slot.slotNumber != 0) {
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, slot.slotNumber, 0, ClickType.PICKUP, Minecraft.player);
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, 36, 0, ClickType.PICKUP, Minecraft.player);
            }
            Multithreading.awaitMillis(100L);
            if (!Minecraft.player.inventory.getStackInSlot(0).isEmpty()) {
                Minecraft.player.sendChatMessage(this.sellCommand.get());
                ++n2;
                Multithreading.awaitMillis(250L);
            }
            Multithreading.awaitMillis(100L);
        }
        Minecraft.player.sendChatMessage("/an" + n);
        Multithreading.awaitMillis(400L);
        Minecraft.player.sendChatMessage("/ah " + mc.getSession().getUsername());
        Multithreading.awaitMillis(200L);
        int n3 = 0;
        do {
            if (Minecraft.player.openContainer instanceof ChestContainer) break;
            Multithreading.awaitMillis(50L);
        } while (++n3 <= 100);
        Multithreading.awaitMillis(150L);
        this.buyAction = true;
    }
}
там ещё утилка нужна типо, вот она

Multithreading.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import lombok.NonNull;

public class Multithreading {
    private static final ScheduledExecutorService RUNNABLE_EXECUTOR = Executors.newScheduledThreadPool(20, new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });
    public static ExecutorService EXECUTOR = Executors.newCachedThreadPool(new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });

    public static void awaitMillis(long l) {
        try {
            EXECUTOR.awaitTermination(l, TimeUnit.MILLISECONDS);
        }
        catch (Exception exception) {
            // empty catch block
        }
    }

    public static void schedule(Runnable runnable, long l, long l2, TimeUnit timeUnit) {
        RUNNABLE_EXECUTOR.scheduleAtFixedRate(runnable, l, l2, timeUnit);
    }

    public static ScheduledFuture<?> schedule(Runnable runnable, long l, TimeUnit timeUnit) {
        return RUNNABLE_EXECUTOR.schedule(runnable, l, timeUnit);
    }

    public static int getTotal() {
        return ((ThreadPoolExecutor)EXECUTOR).getActiveCount();
    }

    public static void runAsync(Runnable runnable) {
        EXECUTOR.execute(runnable);
    }
}
Как же сложно с новы спастись да? 1 в 1 код. Не чего сложного...
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Если че обычный декомпил, работает нормально, тестил.
Expensive Ready.
Работает только на втором виде Gui(Beta)
захотите переделаете



AutoTransfer.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screen.inventory.ContainerScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import ru.elysium.events.Event;
import ru.elysium.modules.Function;
import ru.elysium.modules.FunctionAnnotation;
import ru.elysium.modules.Type;
import ru.elysium.modules.impl.player.Multithreading;
import ru.elysium.modules.settings.imp.SliderSetting;
import ru.elysium.modules.settings.imp.TextSetting;
import ru.elysium.util.ClientUtil;
import ru.elysium.util.math.MathUtil;

@FunctionAnnotation(name="AutoTransfer", type=Type.Player)
public class AutoTransfer
extends Function {
    public TextSetting anarchy = new TextSetting("Анархия", "101");
    private final SliderSetting itemCount = new SliderSetting("Кол-во предметов", 1.0f, 3.0f, 10.0f, 1.0f);
    private final SliderSetting coldown = new SliderSetting("Кулдаун", 500.0f, 10.0f, 1000.0f, 10.0f);
    public TextSetting sellCommand = new TextSetting("Команда для продажи", "/ah dsell 10");
    private boolean buyAction = false;
    private boolean isClicking = false;
    private long lastTransferTime = 0L;
    private final ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();

    public AutoTransfer() {
        this.addSettings(this.anarchy, this.itemCount, this.sellCommand, this.coldown);
    }

    @Override
    public void onEnable() {
        if (Minecraft.player != null && AutoTransfer.mc.world != null) {
            if (Minecraft.player.ticksExisted < 500) {
                float f = (float)(500 - Minecraft.player.ticksExisted) / 20.0f;
                ClientUtil.sendMesage("Подождите " + MathUtil.round(f, 2) + " секунд");
                super.onEnable();
            } else {
                String string = this.anarchy.get();
                if (!this.isNumbers(string)) {
                    ClientUtil.sendMesage("AutoTransfer - Введите номер анархии! (Только числа).");
                    super.onEnable();
                } else {
                    int n = Integer.parseInt(this.anarchy.get());
                    if (n >= 0 && n <= 600) {
                        this.transfer(n);
                        super.onEnable();
                    } else {
                        ClientUtil.sendMesage("AutoTransfer - Введите номер анархии от 0 до 600!");
                        super.onEnable();
                    }
                }
            }
        } else {
            super.onEnable();
        }
    }

    @Override
    public void onEvent(Event event) {
    }

    public void onEvent(org.w3c.dom.events.Event event) {
        this.onMotion();
    }

    private boolean isNumbers(String string) {
        return string.matches("\\d+");
    }

    private void transfer(int n) {
        Multithreading.runAsync(this::lambda$transfer$0);
    }

    private void lambda$transfer$0() {
    }

    private void onMotion() {
        if (this.buyAction && AutoTransfer.mc.currentScreen instanceof ContainerScreen) {
            ContainerScreen containerScreen = (ContainerScreen)AutoTransfer.mc.currentScreen;
            int n = this.itemCount.getValue().intValue();
            int n2 = 0;
            for (Slot slot : ((Container)containerScreen.getContainer()).inventorySlots) {
                if (slot.getStack().isEmpty() || System.currentTimeMillis() - this.lastTransferTime < this.coldown.getValue().longValue()) continue;
                if (!this.isClicking) {
                    this.isClicking = true;
                    AutoTransfer.mc.playerController.windowClick(((Container)containerScreen.getContainer()).windowId, slot.slotNumber, 0, ClickType.QUICK_MOVE, Minecraft.player);
                    ++n2;
                    this.lastTransferTime = System.currentTimeMillis();
                    CompletableFuture.runAsync(this::lambda$onMotion$1);
                    this.executor.schedule(AutoTransfer::lambda$onMotion$2, this.coldown.getValue().longValue(), TimeUnit.MILLISECONDS);
                }
                if (n2 < n) continue;
                Minecraft.player.closeScreen();
                break;
            }
        }
    }

    @Override
    public void onDisable() {
        super.onDisable();
    }

    private static void lambda$onMotion$2() {
    }

    private void lambda$onMotion$1() {
        try {
            Thread.sleep(500L);
        }
        catch (InterruptedException interruptedException) {
            interruptedException.printStackTrace();
        }
        finally {
            this.isClicking = false;
        }
    }

    private void lambda$transfer$0(int n) {
        Minecraft.player.inventory.currentItem = 0;
        int n2 = 0;
        for (Slot slot : Minecraft.player.container.inventorySlots) {
            if (slot.getStack().isEmpty()) continue;
            if (n2 >= this.itemCount.getValue().intValue()) break;
            if (Minecraft.player.inventory.getStackInSlot(0).isEmpty() && slot.slotNumber != 0) {
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, slot.slotNumber, 0, ClickType.PICKUP, Minecraft.player);
                AutoTransfer.mc.playerController.windowClick(Minecraft.player.container.windowId, 36, 0, ClickType.PICKUP, Minecraft.player);
            }
            Multithreading.awaitMillis(100L);
            if (!Minecraft.player.inventory.getStackInSlot(0).isEmpty()) {
                Minecraft.player.sendChatMessage(this.sellCommand.get());
                ++n2;
                Multithreading.awaitMillis(250L);
            }
            Multithreading.awaitMillis(100L);
        }
        Minecraft.player.sendChatMessage("/an" + n);
        Multithreading.awaitMillis(400L);
        Minecraft.player.sendChatMessage("/ah " + mc.getSession().getUsername());
        Multithreading.awaitMillis(200L);
        int n3 = 0;
        do {
            if (Minecraft.player.openContainer instanceof ChestContainer) break;
            Multithreading.awaitMillis(50L);
        } while (++n3 <= 100);
        Multithreading.awaitMillis(150L);
        this.buyAction = true;
    }
}
там ещё утилка нужна типо, вот она

Multithreading.java:
Expand Collapse Copy
package ru.elysium.modules.impl.player;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import lombok.NonNull;

public class Multithreading {
    private static final ScheduledExecutorService RUNNABLE_EXECUTOR = Executors.newScheduledThreadPool(20, new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });
    public static ExecutorService EXECUTOR = Executors.newCachedThreadPool(new ThreadFactory(){
        private final AtomicInteger COUNTER = new AtomicInteger(0);

        @Override
        public Thread newThread(@NonNull Runnable runnable) {
            if (runnable == null) {
                throw new NullPointerException("r is marked non-null but is null");
            }
            return new Thread(runnable, "Multithreading Thread " + this.COUNTER.incrementAndGet());
        }
    });

    public static void awaitMillis(long l) {
        try {
            EXECUTOR.awaitTermination(l, TimeUnit.MILLISECONDS);
        }
        catch (Exception exception) {
            // empty catch block
        }
    }

    public static void schedule(Runnable runnable, long l, long l2, TimeUnit timeUnit) {
        RUNNABLE_EXECUTOR.scheduleAtFixedRate(runnable, l, l2, timeUnit);
    }

    public static ScheduledFuture<?> schedule(Runnable runnable, long l, TimeUnit timeUnit) {
        return RUNNABLE_EXECUTOR.schedule(runnable, l, timeUnit);
    }

    public static int getTotal() {
        return ((ThreadPoolExecutor)EXECUTOR).getActiveCount();
    }

    public static void runAsync(Runnable runnable) {
        EXECUTOR.execute(runnable);
    }
}
все кто пишет что он не работает, даже если бы он работал, в этом вайпе после перезхода на анку кд 20 сек, тоесть вы сможите выстовить придметы а залуать из ток через 20 сек, за это время уже другие люди купят
 
объясните что такое AutoTransfer.
 
ну и говнище
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Если че обычный декомпил, работает нормально, тестил.
Expensive Ready.
Работает только на втором виде Gui(Beta)
захотите переделаете
бро Nova moment, какой элюзиум наху
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
да молчи пастер, видел бы народ твой клиент, я бы думал, что они бы уже все погибли??
Ты этот клиент и не видил,а вот на твой шедевро минсед я бы взглянул)
Даже лобок моего деда, которыц не брился с 74 года не выглядит так ужасно, как их клиент
Я думаю там все заросло к чертям,даже лицо и не видно,хахаааэ
 
Ты этот клиент и не видил,а вот на твой шедевро минсед я бы взглянул)

Я думаю там все заросло к чертям,даже лицо и не видно,хахаааэ
Так мой минцед в тысячу раз лучше, он породистый, чем тысячи паст безруких школьников, которые по x и y не могут адекватно поставить ничего
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Так мой минцед в тысячу раз лучше, он породистый, чем тысячи паст безруких школьников, которые по x и y не могут адекватно поставить ничего
Твой минсед онли под Санрайз и все,а дальше ты и новый ач фт 100% не обойдешь,по x и y там не че сложного в подборе координат нет)
 
Твой минсед онли под Санрайз и все,а дальше ты и новый ач фт 100% не обойдешь,по x и y там не че сложного в подборе координат нет)
Конечно) ты точно шаришь, что у меня есть и что нет) ну киллауры, рабочего InventoryWalk без бана, спидов, ну точно нет) пастер пон) молчи и ебалом не щелкай пастер)
Твой минсед онли под Санрайз и все,а дальше ты и новый ач фт 100% не обойдешь,по x и y там не че сложного в подборе координат нет)
ты бы на свой клиент посмотрел, и пиздел бы меньше, пока еще можешь
 
Конечно) ты точно шаришь, что у меня есть и что нет) ну киллауры, рабочего InventoryWalk без бана, спидов, ну точно нет) пастер пон) молчи и ебалом не щелкай пастер)

ты бы на свой клиент посмотрел, и пиздел бы меньше, пока еще можешь

Твой минсед онли под Санрайз и все,а дальше ты и новый ач фт 100% не обойдешь,по x и y там не че сложного в подборе координат нет)
ахха пастер ты ексленд ренеймишь
 
Назад
Сверху Снизу