Исходник AuctionHelper FunTime exp 2.0 ready

Начинающий
Статус
Оффлайн
Регистрация
12 Фев 2023
Сообщения
25
Реакции[?]
0
Поинты[?]
1K

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

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

Спасибо!

Всех приветствую видел сливали под 3.1 ну, а кто все еще сидит на 2.0 держите


AuctionHelper:
package wtf.flash.modules.impl.util;

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.util.Iterator;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundNBT;
import net.minecraft.nbt.ListNBT;
import wtf.flash.events.Event;
import wtf.flash.modules.Function;
import wtf.flash.modules.FunctionAnnotation;
import wtf.flash.modules.Type;
import wtf.flash.modules.settings.Setting;
import wtf.flash.modules.settings.imp.BooleanOption;

@FunctionAnnotation(
        name = "AuctionHelper",
        type = Type.Util
)
public class AuctionHelper extends Function {
    public BooleanOption three = new BooleanOption("Подсвечивать слоты", false);
    float x = 0.0F;
    float y = 0.0F;
    float x2 = 0.0F;
    float y2 = 0.0F;
    float x3 = 0.0F;
    float y3 = 0.0F;

    public AuctionHelper() {
        this.addSettings(new Setting[]{this.three});
    }

    public boolean onEvent(Event event) {
        Screen var3 = mc.currentScreen;
        if (var3 instanceof ChestScreen e) {
            if (!e.getTitle().getString().contains("Аукцион") && !e.getTitle().getString().contains("Поиск:")) {
                this.setX(0.0F);
                this.setX2(0.0F);
                this.setX3(0.0F);
            } else {
                Container container = e.getContainer();
                Slot slot1 = null;
                Slot slot2 = null;
                Slot slot3 = null;
                int fsPrice = Integer.MAX_VALUE;
                int medPrice = Integer.MAX_VALUE;
                int thPrice = Integer.MAX_VALUE;
                boolean b = false;
                Iterator var11 = container.inventorySlots.iterator();

                while(var11.hasNext()) {
                    Slot slot = (Slot)var11.next();
                    if (slot.slotNumber <= 44) {
                        int currentPrice = this.extractPriceFromStack(slot.getStack());
                        if (currentPrice != -1 && currentPrice < fsPrice) {
                            fsPrice = currentPrice;
                            slot1 = slot;
                        }

                        if (this.three.get()) {
                            if (currentPrice != -1 && currentPrice < medPrice && currentPrice > fsPrice) {
                                medPrice = currentPrice;
                                slot2 = slot;
                            }

                            if (currentPrice != -1 && currentPrice < thPrice && currentPrice > medPrice) {
                                thPrice = currentPrice;
                                slot3 = slot;
                            }
                        } else {
                            this.setX2(0.0F);
                            this.setX3(0.0F);
                        }
                    }
                }

                if (slot1 != null) {
                    this.setX((float)slot1.xPos);
                    this.setY((float)slot1.yPos);
                }

                if (slot2 != null) {
                    this.setX2((float)slot2.xPos);
                    this.setY2((float)slot2.yPos);
                }

                if (slot3 != null) {
                    this.setX3((float)slot3.xPos);
                    this.setY3((float)slot3.yPos);
                }
            }
        } else {
            this.setX(0.0F);
            this.setX2(0.0F);
            this.setX3(0.0F);
        }

        return false;
    }

    protected int extractPriceFromStack(ItemStack stack) {
        CompoundNBT tag = stack.getTag();
        JsonParser pis = new JsonParser();
        if (tag != null && tag.contains("display", 10)) {
            CompoundNBT display = tag.getCompound("display");
            if (display.contains("Lore", 9)) {
                ListNBT lore = display.getList("Lore", 8);

                for(int j = 0; j < lore.size(); ++j) {
                    JsonObject object = pis.parse(lore.getString(j)).getAsJsonObject();
                    if (object.has("extra")) {
                        JsonArray array = object.getAsJsonArray("extra");
                        if (array.size() > 2) {
                            JsonObject title = array.get(1).getAsJsonObject();
                            if (title.get("text").getAsString().trim().toLowerCase().contains("ценa")) {
                                String line = array.get(2).getAsJsonObject().get("text").getAsString().trim().substring(1).replaceAll(" ", "");
                                return Integer.parseInt(line);
                            }
                        }
                    }
                }
            }
        }

        return -1;
    }

    public BooleanOption getThree() {
        return this.three;
    }

    public float getX() {
        return this.x;
    }

    public float getY() {
        return this.y;
    }

    public float getX2() {
        return this.x2;
    }

    public float getY2() {
        return this.y2;
    }

    public float getX3() {
        return this.x3;
    }

    public float getY3() {
        return this.y3;
    }

    public void setThree(BooleanOption three) {
        this.three = three;
    }

    public void setX(float x) {
        this.x = x;
    }

    public void setY(float y) {
        this.y = y;
    }

    public void setX2(float x2) {
        this.x2 = x2;
    }

    public void setY2(float y2) {
        this.y2 = y2;
    }

    public void setX3(float x3) {
        this.x3 = x3;
    }

    public void setY3(float y3) {
        this.y3 = y3;
    }
}
После этого кода нам надо добавить еще один в ContainerScreen по пути net.minecraft.client.gui.screen.inventory


ContainerScreen:
       AuctionHelper helper = Managment.FUNCTION_MANAGER.auctionHelper;
        if (helper.isState() && helper.three.get() && helper.getX() != 0.0F) {
            int x = (int)helper.getX();
            int y = (int)helper.getY();
            fill(matrixStack, x, y, x + 16, y + 16, ColorUtil.rgba(64, 255, 64, 3));
            int x3;
            int y3;
            if (helper.getX2() != 0.0F) {
                x3 = (int)helper.getX2();
                y3 = (int)helper.getY2();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 255, 64, 3));
            }

            if (helper.getX3() != 0.0F) {
                x3 = (int)helper.getX3();
                y3 = (int)helper.getY3();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 64, 64, 3));
            }
        }
Этот код вставляйте примерно на 260-270 строку
Как вы все сделали можете радоваться у вас в крутой пасте есть AuctionHelper
 
Начинающий
Статус
Оффлайн
Регистрация
25 Янв 2024
Сообщения
338
Реакции[?]
0
Поинты[?]
1K
Всех приветствую видел сливали под 3.1 ну, а кто все еще сидит на 2.0 держите


AuctionHelper:
package wtf.flash.modules.impl.util;

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.util.Iterator;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundNBT;
import net.minecraft.nbt.ListNBT;
import wtf.flash.events.Event;
import wtf.flash.modules.Function;
import wtf.flash.modules.FunctionAnnotation;
import wtf.flash.modules.Type;
import wtf.flash.modules.settings.Setting;
import wtf.flash.modules.settings.imp.BooleanOption;

@FunctionAnnotation(
        name = "AuctionHelper",
        type = Type.Util
)
public class AuctionHelper extends Function {
    public BooleanOption three = new BooleanOption("Подсвечивать слоты", false);
    float x = 0.0F;
    float y = 0.0F;
    float x2 = 0.0F;
    float y2 = 0.0F;
    float x3 = 0.0F;
    float y3 = 0.0F;

    public AuctionHelper() {
        this.addSettings(new Setting[]{this.three});
    }

    public boolean onEvent(Event event) {
        Screen var3 = mc.currentScreen;
        if (var3 instanceof ChestScreen e) {
            if (!e.getTitle().getString().contains("Аукцион") && !e.getTitle().getString().contains("Поиск:")) {
                this.setX(0.0F);
                this.setX2(0.0F);
                this.setX3(0.0F);
            } else {
                Container container = e.getContainer();
                Slot slot1 = null;
                Slot slot2 = null;
                Slot slot3 = null;
                int fsPrice = Integer.MAX_VALUE;
                int medPrice = Integer.MAX_VALUE;
                int thPrice = Integer.MAX_VALUE;
                boolean b = false;
                Iterator var11 = container.inventorySlots.iterator();

                while(var11.hasNext()) {
                    Slot slot = (Slot)var11.next();
                    if (slot.slotNumber <= 44) {
                        int currentPrice = this.extractPriceFromStack(slot.getStack());
                        if (currentPrice != -1 && currentPrice < fsPrice) {
                            fsPrice = currentPrice;
                            slot1 = slot;
                        }

                        if (this.three.get()) {
                            if (currentPrice != -1 && currentPrice < medPrice && currentPrice > fsPrice) {
                                medPrice = currentPrice;
                                slot2 = slot;
                            }

                            if (currentPrice != -1 && currentPrice < thPrice && currentPrice > medPrice) {
                                thPrice = currentPrice;
                                slot3 = slot;
                            }
                        } else {
                            this.setX2(0.0F);
                            this.setX3(0.0F);
                        }
                    }
                }

                if (slot1 != null) {
                    this.setX((float)slot1.xPos);
                    this.setY((float)slot1.yPos);
                }

                if (slot2 != null) {
                    this.setX2((float)slot2.xPos);
                    this.setY2((float)slot2.yPos);
                }

                if (slot3 != null) {
                    this.setX3((float)slot3.xPos);
                    this.setY3((float)slot3.yPos);
                }
            }
        } else {
            this.setX(0.0F);
            this.setX2(0.0F);
            this.setX3(0.0F);
        }

        return false;
    }

    protected int extractPriceFromStack(ItemStack stack) {
        CompoundNBT tag = stack.getTag();
        JsonParser pis = new JsonParser();
        if (tag != null && tag.contains("display", 10)) {
            CompoundNBT display = tag.getCompound("display");
            if (display.contains("Lore", 9)) {
                ListNBT lore = display.getList("Lore", 8);

                for(int j = 0; j < lore.size(); ++j) {
                    JsonObject object = pis.parse(lore.getString(j)).getAsJsonObject();
                    if (object.has("extra")) {
                        JsonArray array = object.getAsJsonArray("extra");
                        if (array.size() > 2) {
                            JsonObject title = array.get(1).getAsJsonObject();
                            if (title.get("text").getAsString().trim().toLowerCase().contains("ценa")) {
                                String line = array.get(2).getAsJsonObject().get("text").getAsString().trim().substring(1).replaceAll(" ", "");
                                return Integer.parseInt(line);
                            }
                        }
                    }
                }
            }
        }

        return -1;
    }

    public BooleanOption getThree() {
        return this.three;
    }

    public float getX() {
        return this.x;
    }

    public float getY() {
        return this.y;
    }

    public float getX2() {
        return this.x2;
    }

    public float getY2() {
        return this.y2;
    }

    public float getX3() {
        return this.x3;
    }

    public float getY3() {
        return this.y3;
    }

    public void setThree(BooleanOption three) {
        this.three = three;
    }

    public void setX(float x) {
        this.x = x;
    }

    public void setY(float y) {
        this.y = y;
    }

    public void setX2(float x2) {
        this.x2 = x2;
    }

    public void setY2(float y2) {
        this.y2 = y2;
    }

    public void setX3(float x3) {
        this.x3 = x3;
    }

    public void setY3(float y3) {
        this.y3 = y3;
    }
}
После этого кода нам надо добавить еще один в ContainerScreen по пути net.minecraft.client.gui.screen.inventory


ContainerScreen:
       AuctionHelper helper = Managment.FUNCTION_MANAGER.auctionHelper;
        if (helper.isState() && helper.three.get() && helper.getX() != 0.0F) {
            int x = (int)helper.getX();
            int y = (int)helper.getY();
            fill(matrixStack, x, y, x + 16, y + 16, ColorUtil.rgba(64, 255, 64, 3));
            int x3;
            int y3;
            if (helper.getX2() != 0.0F) {
                x3 = (int)helper.getX2();
                y3 = (int)helper.getY2();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 255, 64, 3));
            }

            if (helper.getX3() != 0.0F) {
                x3 = (int)helper.getX3();
                y3 = (int)helper.getY3();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 64, 64, 3));
            }
        }
Этот код вставляйте примерно на 260-270 строку
Как вы все сделали можете радоваться у вас в крутой пасте есть AuctionHelper
Смысл это перенсти 2 минуты
 
Забаненный
Статус
Оффлайн
Регистрация
2 Фев 2024
Сообщения
852
Реакции[?]
7
Поинты[?]
4K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Всех приветствую видел сливали под 3.1 ну, а кто все еще сидит на 2.0 держите


AuctionHelper:
package wtf.flash.modules.impl.util;

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.util.Iterator;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundNBT;
import net.minecraft.nbt.ListNBT;
import wtf.flash.events.Event;
import wtf.flash.modules.Function;
import wtf.flash.modules.FunctionAnnotation;
import wtf.flash.modules.Type;
import wtf.flash.modules.settings.Setting;
import wtf.flash.modules.settings.imp.BooleanOption;

@FunctionAnnotation(
        name = "AuctionHelper",
        type = Type.Util
)
public class AuctionHelper extends Function {
    public BooleanOption three = new BooleanOption("Подсвечивать слоты", false);
    float x = 0.0F;
    float y = 0.0F;
    float x2 = 0.0F;
    float y2 = 0.0F;
    float x3 = 0.0F;
    float y3 = 0.0F;

    public AuctionHelper() {
        this.addSettings(new Setting[]{this.three});
    }

    public boolean onEvent(Event event) {
        Screen var3 = mc.currentScreen;
        if (var3 instanceof ChestScreen e) {
            if (!e.getTitle().getString().contains("Аукцион") && !e.getTitle().getString().contains("Поиск:")) {
                this.setX(0.0F);
                this.setX2(0.0F);
                this.setX3(0.0F);
            } else {
                Container container = e.getContainer();
                Slot slot1 = null;
                Slot slot2 = null;
                Slot slot3 = null;
                int fsPrice = Integer.MAX_VALUE;
                int medPrice = Integer.MAX_VALUE;
                int thPrice = Integer.MAX_VALUE;
                boolean b = false;
                Iterator var11 = container.inventorySlots.iterator();

                while(var11.hasNext()) {
                    Slot slot = (Slot)var11.next();
                    if (slot.slotNumber <= 44) {
                        int currentPrice = this.extractPriceFromStack(slot.getStack());
                        if (currentPrice != -1 && currentPrice < fsPrice) {
                            fsPrice = currentPrice;
                            slot1 = slot;
                        }

                        if (this.three.get()) {
                            if (currentPrice != -1 && currentPrice < medPrice && currentPrice > fsPrice) {
                                medPrice = currentPrice;
                                slot2 = slot;
                            }

                            if (currentPrice != -1 && currentPrice < thPrice && currentPrice > medPrice) {
                                thPrice = currentPrice;
                                slot3 = slot;
                            }
                        } else {
                            this.setX2(0.0F);
                            this.setX3(0.0F);
                        }
                    }
                }

                if (slot1 != null) {
                    this.setX((float)slot1.xPos);
                    this.setY((float)slot1.yPos);
                }

                if (slot2 != null) {
                    this.setX2((float)slot2.xPos);
                    this.setY2((float)slot2.yPos);
                }

                if (slot3 != null) {
                    this.setX3((float)slot3.xPos);
                    this.setY3((float)slot3.yPos);
                }
            }
        } else {
            this.setX(0.0F);
            this.setX2(0.0F);
            this.setX3(0.0F);
        }

        return false;
    }

    protected int extractPriceFromStack(ItemStack stack) {
        CompoundNBT tag = stack.getTag();
        JsonParser pis = new JsonParser();
        if (tag != null && tag.contains("display", 10)) {
            CompoundNBT display = tag.getCompound("display");
            if (display.contains("Lore", 9)) {
                ListNBT lore = display.getList("Lore", 8);

                for(int j = 0; j < lore.size(); ++j) {
                    JsonObject object = pis.parse(lore.getString(j)).getAsJsonObject();
                    if (object.has("extra")) {
                        JsonArray array = object.getAsJsonArray("extra");
                        if (array.size() > 2) {
                            JsonObject title = array.get(1).getAsJsonObject();
                            if (title.get("text").getAsString().trim().toLowerCase().contains("ценa")) {
                                String line = array.get(2).getAsJsonObject().get("text").getAsString().trim().substring(1).replaceAll(" ", "");
                                return Integer.parseInt(line);
                            }
                        }
                    }
                }
            }
        }

        return -1;
    }

    public BooleanOption getThree() {
        return this.three;
    }

    public float getX() {
        return this.x;
    }

    public float getY() {
        return this.y;
    }

    public float getX2() {
        return this.x2;
    }

    public float getY2() {
        return this.y2;
    }

    public float getX3() {
        return this.x3;
    }

    public float getY3() {
        return this.y3;
    }

    public void setThree(BooleanOption three) {
        this.three = three;
    }

    public void setX(float x) {
        this.x = x;
    }

    public void setY(float y) {
        this.y = y;
    }

    public void setX2(float x2) {
        this.x2 = x2;
    }

    public void setY2(float y2) {
        this.y2 = y2;
    }

    public void setX3(float x3) {
        this.x3 = x3;
    }

    public void setY3(float y3) {
        this.y3 = y3;
    }
}
После этого кода нам надо добавить еще один в ContainerScreen по пути net.minecraft.client.gui.screen.inventory


ContainerScreen:
       AuctionHelper helper = Managment.FUNCTION_MANAGER.auctionHelper;
        if (helper.isState() && helper.three.get() && helper.getX() != 0.0F) {
            int x = (int)helper.getX();
            int y = (int)helper.getY();
            fill(matrixStack, x, y, x + 16, y + 16, ColorUtil.rgba(64, 255, 64, 3));
            int x3;
            int y3;
            if (helper.getX2() != 0.0F) {
                x3 = (int)helper.getX2();
                y3 = (int)helper.getY2();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 255, 64, 3));
            }

            if (helper.getX3() != 0.0F) {
                x3 = (int)helper.getX3();
                y3 = (int)helper.getY3();
                fill(matrixStack, x3, y3, x3 + 16, y3 + 16, ColorUtil.rgba(255, 64, 64, 3));
            }
        }
Этот код вставляйте примерно на 260-270 строку
Как вы все сделали можете радоваться у вас в крутой пасте есть AuctionHelper
на аве ты?
 
Сверху Снизу