Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Визуальная часть Вотермарка Скид Минцеда

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
5 Май 2025
Сообщения
76
Реакции
0
Выберите загрузчик игры
  1. Fabric
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
1767532648340.png

А вот минцеда:
1767532603809.png

Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Последнее редактирование:
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
ахуенно
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
нихуя
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
если бы не рич то имба
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки: dw
Бро, это 1 в 1) У тебя и блюр с нурика, и иконки ровно стоят и по размерчику) Ахуенно сделал)
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
это слишком ахуенно
 
Бро, это 1 в 1) У тебя и блюр с нурика, и иконки ровно стоят и по размерчику) Ахуенно сделал)
Ебать, тускевич, спасибо
если бы не рич то имба
как по мне лучшая база для 1.21.4(не считая самописа конечно)
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
Ахуенно бро +реп
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
сама вт минседа мне не оч нравится, но заскидил ты ахуенно +rep
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
1 в 1 +rep
 
Мне понравилась вотермарка минцеда на 1.21.4, решил сделать скид и залить вам. Вроде вышло похоже. База рич 1.21.4.

Вот моя вотермарка(сорри за то что иконки не такие, я их просто брал с минцеда 1.20.4):
Посмотреть вложение 323802
А вот минцеда:
Посмотреть вложение 323800
Code:
Expand Collapse Copy
package fun.rich.display.hud;

import fun.rich.features.impl.render.Hud;
import fun.rich.features.module.setting.implement.ColorSetting;
import fun.rich.utils.client.managers.api.draggable.AbstractDraggable;
import fun.rich.utils.display.font.Fonts;
import fun.rich.utils.display.shape.ShapeProperties;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.util.math.MatrixStack;
import java.awt.Color;

public class Minced extends AbstractDraggable {
    private int fpsCount = 0;

    public Minced() {
        super("Minced", 10, 10, 120, 15, true);
    }

    @Override
    public void tick() {
        fpsCount = mc.getCurrentFps();
    }

    @Override
    public void drawDraggable(DrawContext e) {
        if (mc.player == null || mc.world == null) return;

        MatrixStack matrix = e.getMatrices();

        String clientName = "Minced";
        String userName = System.getenv("username");
        String serverIp = mc.isInSingleplayer() ? "Singleplayer" : (mc.getCurrentServerEntry() != null ? mc.getCurrentServerEntry().address : "None");
        String fpsVal = "FPS: " + fpsCount;

        int white = -1;
        int iconColor = Hud.getInstance().colorSetting.getColor();

        var logoFont = Fonts.getSize(14, Fonts.Type.LOGO);
        var minilogoFont = Fonts.getSize(18, Fonts.Type.LOGO);
        var boldFont = Fonts.getSize(14, Fonts.Type.BOLD);
        var defaultFont = Fonts.getSize(14, Fonts.Type.DEFAULT);

        float spacing = 4f;

        float iconLWidth = logoFont.getStringWidth("L") + 3;
        float iconUWidth = logoFont.getStringWidth("U") + 3;
        float iconWWidth = logoFont.getStringWidth("W") + 3;
        float iconYWidth = logoFont.getStringWidth("y") + 3;

        float totalWidth = 4;
        totalWidth += iconLWidth + boldFont.getStringWidth(clientName);
        totalWidth += spacing;
        totalWidth += iconUWidth + defaultFont.getStringWidth(userName);
        totalWidth += spacing;
        totalWidth += iconWWidth + defaultFont.getStringWidth(serverIp);
        totalWidth += spacing;
        totalWidth += iconYWidth + defaultFont.getStringWidth(fpsVal);
        totalWidth += 5;

        float bgHeight = 15f;
        setWidth((int) totalWidth);
        setHeight((int) bgHeight);

        blur.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).quality(12).color(new Color(20, 20, 25, 220).getRGB()).build());

        rectangle.render(ShapeProperties.create(matrix, getX(), getY(), totalWidth, bgHeight)
                .round(4f).thickness(0.5f).outlineColor(new Color(50, 50, 55, 120).getRGB())
                .color(new Color(25, 26, 28, 180).getRGB()).build());

        float centerY = getY() + (bgHeight / 2f) - (7f / 2f) + 1.0f;
        float currentX = getX() + 5;

        logoFont.drawString(matrix, "L", currentX, centerY + 1f, iconColor);
        currentX += iconLWidth;
        boldFont.drawString(matrix, clientName, currentX, centerY + 0.5f, white);
        currentX += boldFont.getStringWidth(clientName) + spacing;

        minilogoFont.drawString(matrix, "U", currentX, centerY + 0.5f, iconColor);
        currentX += iconUWidth;
        defaultFont.drawString(matrix, userName, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(userName) + spacing;

        minilogoFont.drawString(matrix, "W", currentX, centerY + 0.5f, iconColor);
        currentX += iconWWidth;
        defaultFont.drawString(matrix, serverIp, currentX, centerY + 0.5f, white);
        currentX += defaultFont.getStringWidth(serverIp) + spacing;

        minilogoFont.drawString(matrix, "y", currentX, centerY + 0.5f, iconColor);
        currentX += iconYWidth;
        defaultFont.drawString(matrix, fpsVal, currentX, centerY + 0.5f, white);
    }

    private int calculatePing() {
        if (mc.getNetworkHandler() != null && mc.player != null) {
            var entry = mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid());
            if (entry != null) return entry.getLatency();
        }
        return 0;
    }
}
И вот иконки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
годно
 
Назад
Сверху Снизу