• На форуме разыгрывается более 300 ключей на приватные читы! Для этого нужно всего-лишь нажать соответствующую кнопку в теме!

    Подробности по ссылке:
    https://t.me/yougame_official/66

Исходник AltManager | Expensive 3.1

Начинающий
Статус
Оффлайн
Регистрация
5 Дек 2024
Сообщения
3
Реакции[?]
0
Поинты[?]
0
в инцилизаторе (Expensive.java) зарегистрируй фонты, Font.init()
я уже до этого сделал это, но не пойму почему вылет

log:
[12:34:12] [main/FATAL]: Reported exception thrown!
net.minecraft.crash.ReportedException: Rendering screen
    at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:798) ~[client/:?]
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:979) ~[client/:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:570) [client/:?]
    at net.minecraft.client.main.Main.main(Main.java:191) [client/:?]
    at Start.main(Start.java:11) [client/:?]
Caused by: java.lang.NullPointerException: Cannot invoke "ez.forala.utils.font.styled.StyledFont.drawString(com.mojang.blaze3d.matrix.MatrixStack, String, double, double, int)" because "ez.forala.utils.font.Fonts.icons[22]" is null
    at ez.forala.ui.mainmenu.AltManager.render(AltManager.java:92) ~[client/:?]
    at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:779) ~[client/:?]
    ... 4 more
 
Начинающий
Статус
Оффлайн
Регистрация
8 Сен 2024
Сообщения
151
Реакции[?]
0
Поинты[?]
0
Некоторые полуфабрикаты реально не могут перенести пару строчек с этой темы на 3.1

1 - Скачиваем от сюда систему фонтов:
Пожалуйста, авторизуйтесь для просмотра ссылки.

2 - Хуячим эту систему в: expensive/utils
3 - Скачиваем и разахривируем эти
Пожалуйста, авторизуйтесь для просмотра ссылки.
в assets/minecraft/expensive
4 - Заходим в MouseUtils и добавляем это:

ыыыы я вам хуй помогу с этим альтменеджером:
public static boolean isHovered(int mouseX, int mouseY, float x,float y, float width, float height) {
return mouseX >= x && mouseY >= y && mouseX < x + width && mouseY < y + height;
}

public static boolean isHovered(float mouseX, float mouseY, float x,float y, float width, float height) {
return mouseX >= x && mouseY >= y && mouseX < x + width && mouseY < y + height;
}

public static boolean isHovered(double mouseX, double mouseY, float x,float y, float width, float height) {
return mouseX >= x && mouseY >= y && mouseX < x + width && mouseY < y + height;
}
    }
5 - Переходим в: expensive/ui/mainmenu и убираем все классы кроме MainScreen
6 - Ебашим от сюда файл и разархивируем все классы:
Пожалуйста, авторизуйтесь для просмотра ссылки.

7 - Если у вас нету шейдеров - замените код шейдера на
DisplayUtils.drawImage(new ResourceLocation("expensive/images/backmenu.png"), 0, 0, mc.getMainWindow().scaledWidth(), mc.getMainWindow().scaledHeight(), -1);

8 - Заходим в Expensive.java меняем все AltWidget на AltManager
9 - Заходим в MainScreen.java и добавляем кнопку:

Нате вам:
        y += 34 - 5;
        buttons.add(new Button(x,y, widthButton, heightButton, "Аккаунты", () -> mc.displayGuiScreen(Ellant.getInstance().getAltManager())));
10 - Проверяем работает ли этот альтменеджер.

UP:

Пожалуйста, авторизуйтесь для просмотра ссылки.

ScaleMath (кто-то рил не мог запастить с 2.0):
package fun.ellant.utils;

import fun.ellant.utils.client.Vec2i;
import net.minecraft.client.Minecraft;

public class ScaleMath {
    public static Vec2i getMouse(int mouseX, int mouseY) {
        return new Vec2i((int)((double)mouseX * Minecraft.getInstance().getMainWindow().getGuiScaleFactor() / 2.0), (int)((double)mouseY * Minecraft.getInstance().getMainWindow().getGuiScaleFactor() / 2.0));
    }
}
помогите паже

AltManager:
package ru.client.ui.mainmenu;

import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.platform.GlStateManager;
import ru.client.utils.ScaleMath;
import ru.client.utils.client.ClientUtil;
import ru.client.utils.client.Vec2i;
import ru.client.utils.math.MathUtil;
import ru.client.utils.math.StopWatch;
import ru.client.utils.shader.ShaderUtil;
import net.minecraft.client.MainWindow;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Session;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.text.StringTextComponent;
import org.apache.commons.lang3.RandomStringUtils;
import org.lwjgl.glfw.GLFW;
import ru.client.utils.player.MouseUtil;
import ru.client.utils.font.Fonts;
import ru.client.utils.render.*;

import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;

import static ru.client.utils.client.IMinecraft.mc;

public class AltManager extends Screen {

    public AltManager() {
        super(new StringTextComponent(""));
    }

    public final StopWatch timer = new StopWatch();
    public float o = 0;

    public ArrayList<Account> accounts = new ArrayList<>();

    public float scroll;
    public float scrollAn;

    private String altName = "";
    private boolean typing;

    [USER=1367676]@override[/USER]
    public void render(MatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
        super.render(matrixStack, mouseX, mouseY, partialTicks);


        MainWindow mainWindow = mc.getMainWindow();
        int windowWidth = ClientUtil.calc(mainWindow.getScaledWidth());
        int windowHeight = ClientUtil.calc(mainWindow.getScaledHeight());

        int logoWidth =
                1920 / 2;
        int logoHeight = 1080 / 2;

        scrollAn = MathUtil.lerp(scrollAn, scroll, 5);

        for (float i=0;i<1488;i++) {
            if(timer.isReached(10)){
                o++;
                i=0;
                timer.reset();
            }
        }

        GlStateManager.pushMatrix();
        GlStateManager.enableBlend();

        ShaderUtil.mainshader.attach();
        ShaderUtil.mainshader.setUniform("time", o/4);
        ShaderUtil.mainshader.setUniform("width", (float)mainWindow.getScaledWidth());
        ShaderUtil.mainshader.setUniform("height", (float)mainWindow.getScaledHeight());

        DisplayUtils.drawQuads(0, 0, mainWindow.getScaledWidth(), mainWindow.getScaledHeight(), 7);

        ShaderUtil.mainshader.detach();
        GlStateManager.disableBlend();
        GlStateManager.popMatrix();
        mc.gameRenderer.setupOverlayRendering(2);

        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        // Квадрат фона
        DisplayUtils.drawRoundedRect(x - offset, y - offset, width + offset * 2f, height + offset * 2f, 5f, ColorUtils.rgba(22, 22, 22, 215));

        // Первый заголовок
        Fonts.icons1[22].drawString(matrixStack, "D", x + offset, y + offset + 1f, -1);
        Fonts.gilroyBold[22].drawString(matrixStack, "Добавьте новый аккаунт!", x + offset + Fonts.icons1[16].getWidth("D") + 6f, y + offset, -1);
        Fonts.gilroyBold[12].drawString(matrixStack, "Смени никнейм, и отправляйся в игру!", x + offset, y + offset + 18f, ColorUtils.rgb(180, 180, 180));

        // Квадратик для ввода ника
        DisplayUtils.drawRoundedRect(x + offset, y + offset + 25f, width - offset * 2f, 20f, 2f, ColorUtils.rgba(60, 60, 60, 215));
        Scissor.push();
        Scissor.setFromComponentCoordinates(x + offset, y + offset + 25f, width - offset * 2f, 20f);
        Fonts.msSemiBold[15].drawString(matrixStack, typing ? (altName + (typing ? "|" : "")) : "Введите сюда ваш ник!", x + offset + 2f, y + offset + 32.5f, ColorUtils.rgb(152, 152, 152));
        Scissor.unset();
        Scissor.pop();

        // Знак для ввода рандомного ника
        Fonts.msBold[22].drawString(matrixStack, "?", x + width - offset - 12.5f, y + offset + 31f, -1);

        // Второй заголовок
        Fonts.gilroyBold[22].drawString(matrixStack, "Аккаунты:", x + offset, y + offset + 60f, -1);
        Fonts.gilroyBold[12].drawString(matrixStack, "Выбери аккаунт из списка!", x + offset, y + offset + 73f, ColorUtils.rgb(180, 180, 180));

        // Вывод никнеймов
        DisplayUtils.drawRoundedRect(x + offset, y + offset + 80f, width - offset * 2f, 177.5f, 2f, ColorUtils.rgba(80, 80, 80, 215));

        // Надпись при пустом листе аккаунтов
        if (accounts.isEmpty()) Fonts.msBold[22].drawCenteredString(matrixStack, "Их нету..", x + width / 2f, y + offset + 165.75f, -1);

        // Основной функционал для показа аккаунтов
        float size = 0f, iter = scrollAn, offsetAccounts = 0f;
        Scissor.push();
        Scissor.setFromComponentCoordinates(x + offset, y + offset + 80f, width - offset * 2f, 177.5f);
        for (Account account : accounts) {
            float scrollY = y + iter * 22f;

            DisplayUtils.drawRoundedRect(x + offset + 2f, scrollY + offset + 82f + offsetAccounts, width - offset * 2f - 4f, 20f, 2f, ColorUtils.rgb(101, 101, 101));

            Fonts.msSemiBold[16].drawString(matrixStack, account.accountName, x + offset + 25f, scrollY + offset + 82f + 8f + offsetAccounts, -1);

            Stencil.initStencilToWrite();
            DisplayUtils.drawRoundedRect(x + offset + 4f + 0.5f, scrollY + offset + 84f + offsetAccounts, 16, 16, 2f, Color.BLACK.getRGB());
            Stencil.readStencilBuffer(1);
            mc.getTextureManager().bindTexture(account.skin);
            AbstractGui.drawScaledCustomSizeModalRect(x + offset + 4f + 0.5f, scrollY + offset + 84f + offsetAccounts, 8F, 8F, 8F, 8F, 16, 16, 64, 64);
            Stencil.uninitStencilBuffer();

            iter++;
            size++;
        }
        scroll = MathHelper.clamp(scroll, size > 8 ? -size + 4 : 0, 0);
        Scissor.unset();
        Scissor.pop();

        // Показ текущего ника
        Fonts.gilroyBold[12].drawString(matrixStack, "Ваш ник - " + mc.session.getUsername() + ".", x + offset, y + height - offset / 2, ColorUtils.rgb(180, 180, 180));

        mc.gameRenderer.setupOverlayRendering();
    }

    [USER=1367676]@override[/USER]
    public boolean mouseReleased(double mouseX, double mouseY, int button) {
        return super.mouseReleased(mouseX, mouseY, button);
    }

    [USER=1367676]@override[/USER]
    public boolean keyPressed(int keyCode, int scanCode, int modifiers) {

        if (keyCode == GLFW.GLFW_KEY_BACKSPACE) {
            if (!altName.isEmpty() && typing)
                altName = altName.substring(0, altName.length() - 1);
        }

        if (keyCode == GLFW.GLFW_KEY_ENTER) {
            if (!altName.isEmpty()) {
                accounts.add(new Account(altName));
                AltConfig.updateFile();
            }
            typing = false;
            altName = "";
        }

        return super.keyPressed(keyCode, scanCode, modifiers);
    }

    [USER=1367676]@override[/USER]
    public boolean charTyped(char codePoint, int modifiers) {
        if (altName.length() <= 20) altName += Character.toString(codePoint);
        return super.charTyped(codePoint, modifiers);
    }

    [USER=1367676]@override[/USER]
    public boolean mouseClicked(double mouseX, double mouseY, int button) {
        Vec2i fixed = ScaleMath.getMouse((int) mouseX, (int) mouseY);
        mouseX = fixed.getX();
        mouseY = fixed.getY();

        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        if (DisplayUtils.isInRegion(mouseX, mouseY, x + width - offset - 12.5f, y + offset + 31f, Fonts.msBold[22].getWidth("?"), Fonts.msBold[22].getFontHeight())) {
            accounts.add(new Account(RandomStringUtils.randomAlphabetic(8)));
            AltConfig.updateFile();
        }
        if (DisplayUtils.isInRegion(mouseX, mouseY, x + offset, y + offset + 25f, width - offset * 2f, 20f) && !DisplayUtils.isInRegion(mouseX, mouseY, x + width - offset - 12.5f, y + offset + 31f, Fonts.msBold[22].getWidth("?"), Fonts.msBold[22].getFontHeight())) {
            typing = !typing;
        }

        // Основной функционал позволяющий позволяющий брать/удалять ник
        float iter = scrollAn, offsetAccounts = 0f;
        Iterator<Account> iterator = accounts.iterator();
        while (iterator.hasNext()) {
            Account account = iterator.next();

            float scrollY = y + iter * 22f;

            if (DisplayUtils.isInRegion(mouseX, mouseY, x + offset + 2f, scrollY + offset + 82f + offsetAccounts, width - offset * 2f - 4f, 20f)) {
                if (button == 0) {
                    mc.session = new Session(account.accountName, "", "", "mojang");
                } else if (button == 1) {
                    iterator.remove();
                    AltConfig.updateFile();
                }
            }

            iter++;
        }
        return super.mouseClicked(mouseX, mouseY, button);
    }

    [USER=1367676]@override[/USER]
    public boolean mouseScrolled(double mouseX, double mouseY, double delta) {
        Vec2i fixed = ScaleMath.getMouse((int) mouseX, (int) mouseY);
        mouseX = fixed.getX();
        mouseY = fixed.getY();

        // Скролл
        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        if (MouseUtil.isHovered(mouseX, mouseY, x + offset, y + offset + 80f, width - offset * 2f, 177.5f)) scroll += delta * 1;
        return super.mouseScrolled(mouseX, mouseY, delta);
    }

    [USER=1367676]@override[/USER]
    protected void init() {
        super.init();
    }

    [USER=1367676]@override[/USER]
    public void init(Minecraft minecraft, int width, int height) {
        super.init(minecraft, width, height);
    }

    [USER=1367676]@override[/USER]
    public void tick() {
        super.tick();
    }
}

и ошибки:

error :(:
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:74:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:75:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:76:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:77:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:81:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:191:37
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:195:37
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:195:137
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:207:41
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:232:33
java: incompatible types: possible lossy conversion from double to float
вот все необходимое наверно:

isInRegion:
public boolean isInRegion(float mouseX, float mouseY, float x, float y, float width, float height) {
        return mouseX > x && mouseX < x + width && mouseY > y && mouseY < y + height;
    }

isHovered:
public boolean isHovered(float mouseX, float mouseY, float x,float y,float width,float height) {
        return mouseX > x && mouseX < x + width && mouseY > y && mouseY < y + height;
    }
 
Начинающий
Статус
Оффлайн
Регистрация
15 Мар 2024
Сообщения
298
Реакции[?]
1
Поинты[?]
1K
помогите паже

AltManager:
package ru.client.ui.mainmenu;

import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.platform.GlStateManager;
import ru.client.utils.ScaleMath;
import ru.client.utils.client.ClientUtil;
import ru.client.utils.client.Vec2i;
import ru.client.utils.math.MathUtil;
import ru.client.utils.math.StopWatch;
import ru.client.utils.shader.ShaderUtil;
import net.minecraft.client.MainWindow;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Session;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.text.StringTextComponent;
import org.apache.commons.lang3.RandomStringUtils;
import org.lwjgl.glfw.GLFW;
import ru.client.utils.player.MouseUtil;
import ru.client.utils.font.Fonts;
import ru.client.utils.render.*;

import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;

import static ru.client.utils.client.IMinecraft.mc;

public class AltManager extends Screen {

    public AltManager() {
        super(new StringTextComponent(""));
    }

    public final StopWatch timer = new StopWatch();
    public float o = 0;

    public ArrayList<Account> accounts = new ArrayList<>();

    public float scroll;
    public float scrollAn;

    private String altName = "";
    private boolean typing;

    [USER=1367676]@override[/USER]
    public void render(MatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
        super.render(matrixStack, mouseX, mouseY, partialTicks);


        MainWindow mainWindow = mc.getMainWindow();
        int windowWidth = ClientUtil.calc(mainWindow.getScaledWidth());
        int windowHeight = ClientUtil.calc(mainWindow.getScaledHeight());

        int logoWidth =
                1920 / 2;
        int logoHeight = 1080 / 2;

        scrollAn = MathUtil.lerp(scrollAn, scroll, 5);

        for (float i=0;i<1488;i++) {
            if(timer.isReached(10)){
                o++;
                i=0;
                timer.reset();
            }
        }

        GlStateManager.pushMatrix();
        GlStateManager.enableBlend();

        ShaderUtil.mainshader.attach();
        ShaderUtil.mainshader.setUniform("time", o/4);
        ShaderUtil.mainshader.setUniform("width", (float)mainWindow.getScaledWidth());
        ShaderUtil.mainshader.setUniform("height", (float)mainWindow.getScaledHeight());

        DisplayUtils.drawQuads(0, 0, mainWindow.getScaledWidth(), mainWindow.getScaledHeight(), 7);

        ShaderUtil.mainshader.detach();
        GlStateManager.disableBlend();
        GlStateManager.popMatrix();
        mc.gameRenderer.setupOverlayRendering(2);

        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        // Квадрат фона
        DisplayUtils.drawRoundedRect(x - offset, y - offset, width + offset * 2f, height + offset * 2f, 5f, ColorUtils.rgba(22, 22, 22, 215));

        // Первый заголовок
        Fonts.icons1[22].drawString(matrixStack, "D", x + offset, y + offset + 1f, -1);
        Fonts.gilroyBold[22].drawString(matrixStack, "Добавьте новый аккаунт!", x + offset + Fonts.icons1[16].getWidth("D") + 6f, y + offset, -1);
        Fonts.gilroyBold[12].drawString(matrixStack, "Смени никнейм, и отправляйся в игру!", x + offset, y + offset + 18f, ColorUtils.rgb(180, 180, 180));

        // Квадратик для ввода ника
        DisplayUtils.drawRoundedRect(x + offset, y + offset + 25f, width - offset * 2f, 20f, 2f, ColorUtils.rgba(60, 60, 60, 215));
        Scissor.push();
        Scissor.setFromComponentCoordinates(x + offset, y + offset + 25f, width - offset * 2f, 20f);
        Fonts.msSemiBold[15].drawString(matrixStack, typing ? (altName + (typing ? "|" : "")) : "Введите сюда ваш ник!", x + offset + 2f, y + offset + 32.5f, ColorUtils.rgb(152, 152, 152));
        Scissor.unset();
        Scissor.pop();

        // Знак для ввода рандомного ника
        Fonts.msBold[22].drawString(matrixStack, "?", x + width - offset - 12.5f, y + offset + 31f, -1);

        // Второй заголовок
        Fonts.gilroyBold[22].drawString(matrixStack, "Аккаунты:", x + offset, y + offset + 60f, -1);
        Fonts.gilroyBold[12].drawString(matrixStack, "Выбери аккаунт из списка!", x + offset, y + offset + 73f, ColorUtils.rgb(180, 180, 180));

        // Вывод никнеймов
        DisplayUtils.drawRoundedRect(x + offset, y + offset + 80f, width - offset * 2f, 177.5f, 2f, ColorUtils.rgba(80, 80, 80, 215));

        // Надпись при пустом листе аккаунтов
        if (accounts.isEmpty()) Fonts.msBold[22].drawCenteredString(matrixStack, "Их нету..", x + width / 2f, y + offset + 165.75f, -1);

        // Основной функционал для показа аккаунтов
        float size = 0f, iter = scrollAn, offsetAccounts = 0f;
        Scissor.push();
        Scissor.setFromComponentCoordinates(x + offset, y + offset + 80f, width - offset * 2f, 177.5f);
        for (Account account : accounts) {
            float scrollY = y + iter * 22f;

            DisplayUtils.drawRoundedRect(x + offset + 2f, scrollY + offset + 82f + offsetAccounts, width - offset * 2f - 4f, 20f, 2f, ColorUtils.rgb(101, 101, 101));

            Fonts.msSemiBold[16].drawString(matrixStack, account.accountName, x + offset + 25f, scrollY + offset + 82f + 8f + offsetAccounts, -1);

            Stencil.initStencilToWrite();
            DisplayUtils.drawRoundedRect(x + offset + 4f + 0.5f, scrollY + offset + 84f + offsetAccounts, 16, 16, 2f, Color.BLACK.getRGB());
            Stencil.readStencilBuffer(1);
            mc.getTextureManager().bindTexture(account.skin);
            AbstractGui.drawScaledCustomSizeModalRect(x + offset + 4f + 0.5f, scrollY + offset + 84f + offsetAccounts, 8F, 8F, 8F, 8F, 16, 16, 64, 64);
            Stencil.uninitStencilBuffer();

            iter++;
            size++;
        }
        scroll = MathHelper.clamp(scroll, size > 8 ? -size + 4 : 0, 0);
        Scissor.unset();
        Scissor.pop();

        // Показ текущего ника
        Fonts.gilroyBold[12].drawString(matrixStack, "Ваш ник - " + mc.session.getUsername() + ".", x + offset, y + height - offset / 2, ColorUtils.rgb(180, 180, 180));

        mc.gameRenderer.setupOverlayRendering();
    }

    [USER=1367676]@override[/USER]
    public boolean mouseReleased(double mouseX, double mouseY, int button) {
        return super.mouseReleased(mouseX, mouseY, button);
    }

    [USER=1367676]@override[/USER]
    public boolean keyPressed(int keyCode, int scanCode, int modifiers) {

        if (keyCode == GLFW.GLFW_KEY_BACKSPACE) {
            if (!altName.isEmpty() && typing)
                altName = altName.substring(0, altName.length() - 1);
        }

        if (keyCode == GLFW.GLFW_KEY_ENTER) {
            if (!altName.isEmpty()) {
                accounts.add(new Account(altName));
                AltConfig.updateFile();
            }
            typing = false;
            altName = "";
        }

        return super.keyPressed(keyCode, scanCode, modifiers);
    }

    [USER=1367676]@override[/USER]
    public boolean charTyped(char codePoint, int modifiers) {
        if (altName.length() <= 20) altName += Character.toString(codePoint);
        return super.charTyped(codePoint, modifiers);
    }

    [USER=1367676]@override[/USER]
    public boolean mouseClicked(double mouseX, double mouseY, int button) {
        Vec2i fixed = ScaleMath.getMouse((int) mouseX, (int) mouseY);
        mouseX = fixed.getX();
        mouseY = fixed.getY();

        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        if (DisplayUtils.isInRegion(mouseX, mouseY, x + width - offset - 12.5f, y + offset + 31f, Fonts.msBold[22].getWidth("?"), Fonts.msBold[22].getFontHeight())) {
            accounts.add(new Account(RandomStringUtils.randomAlphabetic(8)));
            AltConfig.updateFile();
        }
        if (DisplayUtils.isInRegion(mouseX, mouseY, x + offset, y + offset + 25f, width - offset * 2f, 20f) && !DisplayUtils.isInRegion(mouseX, mouseY, x + width - offset - 12.5f, y + offset + 31f, Fonts.msBold[22].getWidth("?"), Fonts.msBold[22].getFontHeight())) {
            typing = !typing;
        }

        // Основной функционал позволяющий позволяющий брать/удалять ник
        float iter = scrollAn, offsetAccounts = 0f;
        Iterator<Account> iterator = accounts.iterator();
        while (iterator.hasNext()) {
            Account account = iterator.next();

            float scrollY = y + iter * 22f;

            if (DisplayUtils.isInRegion(mouseX, mouseY, x + offset + 2f, scrollY + offset + 82f + offsetAccounts, width - offset * 2f - 4f, 20f)) {
                if (button == 0) {
                    mc.session = new Session(account.accountName, "", "", "mojang");
                } else if (button == 1) {
                    iterator.remove();
                    AltConfig.updateFile();
                }
            }

            iter++;
        }
        return super.mouseClicked(mouseX, mouseY, button);
    }

    [USER=1367676]@override[/USER]
    public boolean mouseScrolled(double mouseX, double mouseY, double delta) {
        Vec2i fixed = ScaleMath.getMouse((int) mouseX, (int) mouseY);
        mouseX = fixed.getX();
        mouseY = fixed.getY();

        // Скролл
        float offset = 6f;
        float width = 250f, height = 270f;
        float x = mc.getMainWindow().getScaledWidth() / 2f - width / 2f, y = mc.getMainWindow().getScaledHeight() / 2f - height / 2f;

        if (MouseUtil.isHovered(mouseX, mouseY, x + offset, y + offset + 80f, width - offset * 2f, 177.5f)) scroll += delta * 1;
        return super.mouseScrolled(mouseX, mouseY, delta);
    }

    [USER=1367676]@override[/USER]
    protected void init() {
        super.init();
    }

    [USER=1367676]@override[/USER]
    public void init(Minecraft minecraft, int width, int height) {
        super.init(minecraft, width, height);
    }

    [USER=1367676]@override[/USER]
    public void tick() {
        super.tick();
    }
}

и ошибки:

error :(:
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:74:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:75:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:76:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:77:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:81:19
java: cannot find symbol
  symbol:   variable mainshader
  location: class ru.client.utils.shader.ShaderUtil
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:191:37
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:195:37
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:195:137
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:207:41
java: incompatible types: possible lossy conversion from double to float
C:\Users\chgcs\Desktop\ExpensiveBase\src\java\ru\client\ui\mainmenu\AltManager.java:232:33
java: incompatible types: possible lossy conversion from double to float
вот все необходимое наверно:

isInRegion:
public boolean isInRegion(float mouseX, float mouseY, float x, float y, float width, float height) {
        return mouseX > x && mouseX < x + width && mouseY > y && mouseY < y + height;
    }

isHovered:
public boolean isHovered(float mouseX, float mouseY, float x,float y,float width,float height) {
        return mouseX > x && mouseX < x + width && mouseY > y && mouseY < y + height;
    }
вырежи просто или отрисуй картинку
 
Начинающий
Статус
Оффлайн
Регистрация
7 Дек 2024
Сообщения
21
Реакции[?]
0
Поинты[?]
0
что то подсказывает, оно не будет работать без этих строчек, ну щяс гляну
блять, але , когда я делал эту тему я специально вместо картинки сделал шейдер, просто вырежи кусок кода с шейдером и поставб DisplayUtils.drawImage(new ResourceLocation("expensive/images/xyina.png") и т.д
 
Начинающий
Статус
Оффлайн
Регистрация
8 Сен 2024
Сообщения
151
Реакции[?]
0
Поинты[?]
0
блять, але , когда я делал эту тему я специально вместо картинки сделал шейдер, просто вырежи кусок кода с шейдером и поставб DisplayUtils.drawImage(new ResourceLocation("expensive/images/xyina.png") и т.д
ааааа пасиба
 
Сверху Снизу