Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Визуальная часть WaterMark expensive 3.1

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
2 Май 2025
Сообщения
168
Реакции
1
Выберите загрузчик игры
  1. Vanilla
  2. Forge
  3. Fabric
  4. OptiFine
Hud Expenis 3.1
Снимок экрана 2025-11-14 212401.png
noad

HUD:
Expand Collapse Copy
package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.styles.Style;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import net.minecraft.client.Minecraft;
import net.minecraft.util.ResourceLocation;

public class WatermarkRenderer implements ElementRenderer {

    private final Minecraft mc = Minecraft.getInstance();
    private static final ResourceLocation LOGO = new ResourceLocation("expensive/images/hud/logo.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        String username = mc.getSession().getUsername();
        String fps = mc.debugFPS + " fps";
        String server = mc.getCurrentServerData() != null ? mc.getCurrentServerData().serverIP : "Singleplayer";
        String ping = mc.getCurrentServerData() != null ? "55 ms" : "0 ms";

        float posX = 4;
        float posY = 4;
        float padding = 6;
        float spacing = 4;
        float fontSize = 8;
        float iconSize = 14;

        Style style = Expensive.getInstance().getStyleManager().getCurrentStyle();
        int mainColor = style.getFirstColor().getRGB();

        float currentX = posX;
        
        float logoWidth = iconSize + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, logoWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, logoWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        drawImage(LOGO, currentX + padding, posY + padding, iconSize, iconSize);
        currentX += logoWidth + spacing;
        
        float nameWidth = Fonts.sfui.getWidth(username, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, nameWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, nameWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfui.drawText(ms, username, currentX + padding, posY + padding + 3, -1, fontSize);
        currentX += nameWidth + spacing;
        
        float fpsWidth = Fonts.sfMedium.getWidth(fps, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, fpsWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, fpsWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, fps, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += fpsWidth + spacing;
        
        float pingWidth = Fonts.sfMedium.getWidth(ping, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, pingWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, pingWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, ping, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += pingWidth + spacing;
        
        float serverWidth = Fonts.sfMedium.getWidth(server, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, serverWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, serverWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, server, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
    }

    private void drawImage(ResourceLocation texture, float x, float y, float width, float height) {
        DisplayUtils.drawImage(texture, (int) x, y, width, height, -1);
    }
}
 
Hud Expenis 3.1
Посмотреть вложение 320001noad

HUD:
Expand Collapse Copy
package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.styles.Style;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import net.minecraft.client.Minecraft;
import net.minecraft.util.ResourceLocation;

public class WatermarkRenderer implements ElementRenderer {

    private final Minecraft mc = Minecraft.getInstance();
    private static final ResourceLocation LOGO = new ResourceLocation("expensive/images/hud/logo.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        String username = mc.getSession().getUsername();
        String fps = mc.debugFPS + " fps";
        String server = mc.getCurrentServerData() != null ? mc.getCurrentServerData().serverIP : "Singleplayer";
        String ping = mc.getCurrentServerData() != null ? "55 ms" : "0 ms";

        float posX = 4;
        float posY = 4;
        float padding = 6;
        float spacing = 4;
        float fontSize = 8;
        float iconSize = 14;

        Style style = Expensive.getInstance().getStyleManager().getCurrentStyle();
        int mainColor = style.getFirstColor().getRGB();

        float currentX = posX;
       
        float logoWidth = iconSize + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, logoWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, logoWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        drawImage(LOGO, currentX + padding, posY + padding, iconSize, iconSize);
        currentX += logoWidth + spacing;
       
        float nameWidth = Fonts.sfui.getWidth(username, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, nameWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, nameWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfui.drawText(ms, username, currentX + padding, posY + padding + 3, -1, fontSize);
        currentX += nameWidth + spacing;
       
        float fpsWidth = Fonts.sfMedium.getWidth(fps, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, fpsWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, fpsWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, fps, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += fpsWidth + spacing;
       
        float pingWidth = Fonts.sfMedium.getWidth(ping, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, pingWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, pingWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, ping, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += pingWidth + spacing;
       
        float serverWidth = Fonts.sfMedium.getWidth(server, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, serverWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, serverWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, server, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
    }

    private void drawImage(ResourceLocation texture, float x, float y, float width, float height) {
        DisplayUtils.drawImage(texture, (int) x, y, width, height, -1);
    }
}
Ну если смотреть то вырвиглазно, уберешь шадоу, чуть сильнее закруглишь края, между ректами сделаешь дистанцию поменьше, сами ректы сделаешь чуть по уже, добавишь хоть какие то картинки к каждому ректу, добавишь блюра, вот тогда еще приемлемо будет, а пока что /del
 
Hud Expenis 3.1
Посмотреть вложение 320001noad

HUD:
Expand Collapse Copy
package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.styles.Style;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import net.minecraft.client.Minecraft;
import net.minecraft.util.ResourceLocation;

public class WatermarkRenderer implements ElementRenderer {

    private final Minecraft mc = Minecraft.getInstance();
    private static final ResourceLocation LOGO = new ResourceLocation("expensive/images/hud/logo.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        String username = mc.getSession().getUsername();
        String fps = mc.debugFPS + " fps";
        String server = mc.getCurrentServerData() != null ? mc.getCurrentServerData().serverIP : "Singleplayer";
        String ping = mc.getCurrentServerData() != null ? "55 ms" : "0 ms";

        float posX = 4;
        float posY = 4;
        float padding = 6;
        float spacing = 4;
        float fontSize = 8;
        float iconSize = 14;

        Style style = Expensive.getInstance().getStyleManager().getCurrentStyle();
        int mainColor = style.getFirstColor().getRGB();

        float currentX = posX;
       
        float logoWidth = iconSize + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, logoWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, logoWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        drawImage(LOGO, currentX + padding, posY + padding, iconSize, iconSize);
        currentX += logoWidth + spacing;
       
        float nameWidth = Fonts.sfui.getWidth(username, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, nameWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, nameWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfui.drawText(ms, username, currentX + padding, posY + padding + 3, -1, fontSize);
        currentX += nameWidth + spacing;
       
        float fpsWidth = Fonts.sfMedium.getWidth(fps, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, fpsWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, fpsWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, fps, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += fpsWidth + spacing;
       
        float pingWidth = Fonts.sfMedium.getWidth(ping, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, pingWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, pingWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, ping, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += pingWidth + spacing;
       
        float serverWidth = Fonts.sfMedium.getWidth(server, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, serverWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, serverWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, server, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
    }

    private void drawImage(ResourceLocation texture, float x, float y, float width, float height) {
        DisplayUtils.drawImage(texture, (int) x, y, width, height, -1);
    }
}
2026 год скоро
 
Hud Expenis 3.1
Посмотреть вложение 320001noad

HUD:
Expand Collapse Copy
package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.styles.Style;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import net.minecraft.client.Minecraft;
import net.minecraft.util.ResourceLocation;

public class WatermarkRenderer implements ElementRenderer {

    private final Minecraft mc = Minecraft.getInstance();
    private static final ResourceLocation LOGO = new ResourceLocation("expensive/images/hud/logo.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        String username = mc.getSession().getUsername();
        String fps = mc.debugFPS + " fps";
        String server = mc.getCurrentServerData() != null ? mc.getCurrentServerData().serverIP : "Singleplayer";
        String ping = mc.getCurrentServerData() != null ? "55 ms" : "0 ms";

        float posX = 4;
        float posY = 4;
        float padding = 6;
        float spacing = 4;
        float fontSize = 8;
        float iconSize = 14;

        Style style = Expensive.getInstance().getStyleManager().getCurrentStyle();
        int mainColor = style.getFirstColor().getRGB();

        float currentX = posX;
       
        float logoWidth = iconSize + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, logoWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, logoWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        drawImage(LOGO, currentX + padding, posY + padding, iconSize, iconSize);
        currentX += logoWidth + spacing;
       
        float nameWidth = Fonts.sfui.getWidth(username, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, nameWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, nameWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfui.drawText(ms, username, currentX + padding, posY + padding + 3, -1, fontSize);
        currentX += nameWidth + spacing;
       
        float fpsWidth = Fonts.sfMedium.getWidth(fps, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, fpsWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, fpsWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, fps, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += fpsWidth + spacing;
       
        float pingWidth = Fonts.sfMedium.getWidth(ping, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, pingWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, pingWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, ping, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
        currentX += pingWidth + spacing;
       
        float serverWidth = Fonts.sfMedium.getWidth(server, fontSize) + padding * 2;
        DisplayUtils.drawShadow(currentX, posY, serverWidth, iconSize + padding * 2, 6, mainColor);
        DisplayUtils.drawRoundedRect(currentX, posY, serverWidth, iconSize + padding * 2, 4, ColorUtils.rgb(25, 25, 25));
        Fonts.sfMedium.drawText(ms, server, currentX + padding, posY + padding + 3, ColorUtils.rgb(200, 200, 200), fontSize);
    }

    private void drawImage(ResourceLocation texture, float x, float y, float width, float height) {
        DisplayUtils.drawImage(texture, (int) x, y, width, height, -1);
    }
}
/del
 
Назад
Сверху Снизу