• Ищем качественного (не новичок) разработчиков Xenforo для этого форума! В идеале, чтобы ты был фулл стек программистом. Если у тебя есть что показать, то свяжись с нами по контактным данным: https://t.me/DREDD

Часть функционала Info Windows

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
14 Май 2025
Сообщения
437
Реакции
4
Выберите загрузчик игры
  1. Vanilla
  2. OptiFine
корочы меню с информаций по бинду

делал под базу мсп дефолт но сделал на 3.1 xd
советую дабавить Colorutils и Fonts (Monster)

и будед красиво



Код тут:
Expand Collapse Copy
package vm.protect.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.matrix.MatrixStack;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.StringTextComponent;
import vm.protect.events.EventKey;
import vm.protect.functions.api.Category;
import vm.protect.functions.api.Function;
import vm.protect.functions.api.FunctionRegister;
import vm.protect.functions.settings.impl.BindSetting;
import vm.protect.utils.render.ColorUtils;
import vm.protect.utils.render.font.Fonts;
import vm.protect.utils.text.GradientUtil;

@FunctionRegister(name = "InfoWindow", description = "Открывает окно с информацией", type = Category.Misc)
public class InfoWindow extends Function {
public BindSetting bind = new BindSetting("Open Info", 0); // Не пасти не убереш не поймеш
    public InfoWindow() {
this.addSettings(this.bind); // Не пасти не убереш не поймеш
    }

[USER=1474073]@Subscribe[/USER]
    private void onKey(EventKey e) {
if (e.getKey() == (int) this.bind.get())
Minecraft.getInstance().displayGuiScreen(new AboutGui()); // Не пасти не убереш не поймеш
    }

private static class AboutGui extends Screen {
private final Minecraft mc = Minecraft.getInstance();
protected AboutGui() {
super(new StringTextComponent("About")); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public void render(MatrixStack ms, int mx, int my, float pt) {
int w = 300, h = 180;
int x = (this.width - w) / 2;
int y = (this.height - h) / 2;
AbstractGui.fill(ms, x, y, x + w, y + h, 0xFF111111); // окно черное // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 2, y - 2, x + w + 2, y + h + 2, 0xFFFFFFFF); // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 1, y - 1, x + w + 1, y + h + 1, 0xFF000000); // Не пасти не убереш не поймеш

            int cx = this.width / 2;
int ty = y + 20;
Fonts.sfbold.drawCenteredText(ms, "NightWarr", cx, ty, -1, 10);
Fonts.sfbold.drawCenteredText(ms, "Name: " + mc.getSession().getUsername(), cx, ty + 20, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "Version: " + mc.getVersion(), cx, ty + 40, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "NightWarr © 2025", cx, ty + 110, -1, 5);


int closeY = y + h - 25;
boolean hover = mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10;
int color = hover ? ColorUtils.rgb(255, 0, 0) : -1;
Fonts.sfbold.drawCenteredText(ms, "Закрыть", cx, closeY - 1, color, 9);

super.render(ms, mx, my, pt); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean mouseClicked(double mx, double my, int btn) {
int cx = this.width / 2;
int closeY = (this.height - 180) / 2 + 155;
if (mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10) {
this.minecraft.displayGuiScreen(null); // закрыть // Не пасти не убереш не поймеш
                return false; // Не пасти не убереш не поймеш
            }
return super.mouseClicked(mx, my, btn); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean isPauseScreen() {
return false; // Не пасти не убереш не поймеш
        }
}
}

SS
1749896937895.png

ОБНОВИЛ АПДЕЙД
 

Вложения

  • 1749733030320.png
    1749733030320.png
    78.2 KB · Просмотры: 288
Последнее редактирование:
плис одобрите долго ждать
 
одобрите
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну слушай,задумка крутая
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Привет создай мне функцию которая будет рендерить квадрат и там текст я пидарас
 
корочы меню с информаций по бинду

делал под базу мсп дефолт но сделал на 3.1 xd
советую дабавить Colorutils и Fonts (Monster)

и будед красиво



Код тут:
Expand Collapse Copy
package vm.protect.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.matrix.MatrixStack;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.StringTextComponent;
import vm.protect.events.EventKey;
import vm.protect.functions.api.Category;
import vm.protect.functions.api.Function;
import vm.protect.functions.api.FunctionRegister;
import vm.protect.functions.settings.impl.BindSetting;
import vm.protect.utils.render.ColorUtils;
import vm.protect.utils.render.font.Fonts;
import vm.protect.utils.text.GradientUtil;

@FunctionRegister(name = "InfoWindow", description = "Открывает окно с информацией", type = Category.Misc)
public class InfoWindow extends Function {
public BindSetting bind = new BindSetting("Open Info", 0); // Не пасти не убереш не поймеш
    public InfoWindow() {
this.addSettings(this.bind); // Не пасти не убереш не поймеш
    }

[USER=1474073]@Subscribe[/USER]
    private void onKey(EventKey e) {
if (e.getKey() == (int) this.bind.get())
Minecraft.getInstance().displayGuiScreen(new AboutGui()); // Не пасти не убереш не поймеш
    }

private static class AboutGui extends Screen {
private final Minecraft mc = Minecraft.getInstance();
protected AboutGui() {
super(new StringTextComponent("About")); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public void render(MatrixStack ms, int mx, int my, float pt) {
int w = 300, h = 180;
int x = (this.width - w) / 2;
int y = (this.height - h) / 2;
AbstractGui.fill(ms, x, y, x + w, y + h, 0xFF111111); // окно черное // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 2, y - 2, x + w + 2, y + h + 2, 0xFFFFFFFF); // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 1, y - 1, x + w + 1, y + h + 1, 0xFF000000); // Не пасти не убереш не поймеш

            int cx = this.width / 2;
int ty = y + 20;
Fonts.sfbold.drawCenteredText(ms, "NightWarr", cx, ty, -1, 10);
Fonts.sfbold.drawCenteredText(ms, "Name: " + mc.getSession().getUsername(), cx, ty + 20, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "Version: " + mc.getVersion(), cx, ty + 40, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "NightWarr © 2025", cx, ty + 110, -1, 5);


int closeY = y + h - 25;
boolean hover = mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10;
int color = hover ? ColorUtils.rgb(255, 0, 0) : -1;
Fonts.sfbold.drawCenteredText(ms, "Закрыть", cx, closeY - 1, color, 9);

super.render(ms, mx, my, pt); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean mouseClicked(double mx, double my, int btn) {
int cx = this.width / 2;
int closeY = (this.height - 180) / 2 + 155;
if (mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10) {
this.minecraft.displayGuiScreen(null); // закрыть // Не пасти не убереш не поймеш
                return false; // Не пасти не убереш не поймеш
            }
return super.mouseClicked(mx, my, btn); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean isPauseScreen() {
return false; // Не пасти не убереш не поймеш
        }
}
}

SS
Посмотреть вложение 308844
ОБНОВИЛ АПДЕЙД
Ты не пизди что 20 года паста твоя, тогда еще мать его твоего любимого 3.1 не было, и ты нахуй вайпер что в названии пасты своей дабл р ставишь, пиздя название у проекта на 1.12
 
корочы меню с информаций по бинду

делал под базу мсп дефолт но сделал на 3.1 xd
советую дабавить Colorutils и Fonts (Monster)

и будед красиво



Код тут:
Expand Collapse Copy
package vm.protect.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.matrix.MatrixStack;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.StringTextComponent;
import vm.protect.events.EventKey;
import vm.protect.functions.api.Category;
import vm.protect.functions.api.Function;
import vm.protect.functions.api.FunctionRegister;
import vm.protect.functions.settings.impl.BindSetting;
import vm.protect.utils.render.ColorUtils;
import vm.protect.utils.render.font.Fonts;
import vm.protect.utils.text.GradientUtil;

@FunctionRegister(name = "InfoWindow", description = "Открывает окно с информацией", type = Category.Misc)
public class InfoWindow extends Function {
public BindSetting bind = new BindSetting("Open Info", 0); // Не пасти не убереш не поймеш
    public InfoWindow() {
this.addSettings(this.bind); // Не пасти не убереш не поймеш
    }

[USER=1474073]@Subscribe[/USER]
    private void onKey(EventKey e) {
if (e.getKey() == (int) this.bind.get())
Minecraft.getInstance().displayGuiScreen(new AboutGui()); // Не пасти не убереш не поймеш
    }

private static class AboutGui extends Screen {
private final Minecraft mc = Minecraft.getInstance();
protected AboutGui() {
super(new StringTextComponent("About")); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public void render(MatrixStack ms, int mx, int my, float pt) {
int w = 300, h = 180;
int x = (this.width - w) / 2;
int y = (this.height - h) / 2;
AbstractGui.fill(ms, x, y, x + w, y + h, 0xFF111111); // окно черное // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 2, y - 2, x + w + 2, y + h + 2, 0xFFFFFFFF); // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 1, y - 1, x + w + 1, y + h + 1, 0xFF000000); // Не пасти не убереш не поймеш

            int cx = this.width / 2;
int ty = y + 20;
Fonts.sfbold.drawCenteredText(ms, "NightWarr", cx, ty, -1, 10);
Fonts.sfbold.drawCenteredText(ms, "Name: " + mc.getSession().getUsername(), cx, ty + 20, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "Version: " + mc.getVersion(), cx, ty + 40, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "NightWarr © 2025", cx, ty + 110, -1, 5);


int closeY = y + h - 25;
boolean hover = mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10;
int color = hover ? ColorUtils.rgb(255, 0, 0) : -1;
Fonts.sfbold.drawCenteredText(ms, "Закрыть", cx, closeY - 1, color, 9);

super.render(ms, mx, my, pt); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean mouseClicked(double mx, double my, int btn) {
int cx = this.width / 2;
int closeY = (this.height - 180) / 2 + 155;
if (mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10) {
this.minecraft.displayGuiScreen(null); // закрыть // Не пасти не убереш не поймеш
                return false; // Не пасти не убереш не поймеш
            }
return super.mouseClicked(mx, my, btn); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean isPauseScreen() {
return false; // Не пасти не убереш не поймеш
        }
}
}

SS
Посмотреть вложение 308844
ОБНОВИЛ АПДЕЙД
задумка прикольная реализация плохая
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
и нахуя эт нужно? так ещё и максимально ущербно выглядит
 
я могу призалить я пределал норм выгледед
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
корочы меню с информаций по бинду

делал под базу мсп дефолт но сделал на 3.1 xd
советую дабавить Colorutils и Fonts (Monster)

и будед красиво



Код тут:
Expand Collapse Copy
package vm.protect.functions.impl.render;

import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.matrix.MatrixStack;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AbstractGui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.StringTextComponent;
import vm.protect.events.EventKey;
import vm.protect.functions.api.Category;
import vm.protect.functions.api.Function;
import vm.protect.functions.api.FunctionRegister;
import vm.protect.functions.settings.impl.BindSetting;
import vm.protect.utils.render.ColorUtils;
import vm.protect.utils.render.font.Fonts;
import vm.protect.utils.text.GradientUtil;

@FunctionRegister(name = "InfoWindow", description = "Открывает окно с информацией", type = Category.Misc)
public class InfoWindow extends Function {
public BindSetting bind = new BindSetting("Open Info", 0); // Не пасти не убереш не поймеш
    public InfoWindow() {
this.addSettings(this.bind); // Не пасти не убереш не поймеш
    }

[USER=1474073]@Subscribe[/USER]
    private void onKey(EventKey e) {
if (e.getKey() == (int) this.bind.get())
Minecraft.getInstance().displayGuiScreen(new AboutGui()); // Не пасти не убереш не поймеш
    }

private static class AboutGui extends Screen {
private final Minecraft mc = Minecraft.getInstance();
protected AboutGui() {
super(new StringTextComponent("About")); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public void render(MatrixStack ms, int mx, int my, float pt) {
int w = 300, h = 180;
int x = (this.width - w) / 2;
int y = (this.height - h) / 2;
AbstractGui.fill(ms, x, y, x + w, y + h, 0xFF111111); // окно черное // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 2, y - 2, x + w + 2, y + h + 2, 0xFFFFFFFF); // Не пасти не убереш не поймеш
            AbstractGui.fill(ms, x - 1, y - 1, x + w + 1, y + h + 1, 0xFF000000); // Не пасти не убереш не поймеш

            int cx = this.width / 2;
int ty = y + 20;
Fonts.sfbold.drawCenteredText(ms, "NightWarr", cx, ty, -1, 10);
Fonts.sfbold.drawCenteredText(ms, "Name: " + mc.getSession().getUsername(), cx, ty + 20, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "Version: " + mc.getVersion(), cx, ty + 40, -1, 7);
Fonts.sfbold.drawCenteredText(ms, "NightWarr © 2025", cx, ty + 110, -1, 5);


int closeY = y + h - 25;
boolean hover = mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10;
int color = hover ? ColorUtils.rgb(255, 0, 0) : -1;
Fonts.sfbold.drawCenteredText(ms, "Закрыть", cx, closeY - 1, color, 9);

super.render(ms, mx, my, pt); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean mouseClicked(double mx, double my, int btn) {
int cx = this.width / 2;
int closeY = (this.height - 180) / 2 + 155;
if (mx >= cx - 30 && mx <= cx + 30 && my >= closeY && my <= closeY + 10) {
this.minecraft.displayGuiScreen(null); // закрыть // Не пасти не убереш не поймеш
                return false; // Не пасти не убереш не поймеш
            }
return super.mouseClicked(mx, my, btn); // Не пасти не убереш не поймеш
        }

[USER=1367676]@override[/USER]
        public boolean isPauseScreen() {
return false; // Не пасти не убереш не поймеш
        }
}
}

SS
Посмотреть вложение 308844
ОБНОВИЛ АПДЕЙД
задумка прикольная в 1.12.2 софтах помню такое а реализация хуйня полная
 
ну да, засоряйте форум своими функциями в которых 2 ректа и текст:disrelieved::disrelieved::disrelieved:
 
блять это что, на уровне незнания документалки даже, что за кривая проверка на ховер, блять а что за класс aboutgui это же просто ужас нахуй, даже боюсь спросить 3 строчки fill подряд.. пиздец....
 
Назад
Сверху Снизу