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

Watermark 3.1

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
1 Авг 2024
Сообщения
436
Реакции
0
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


1733294833286.png
 
Последнее редактирование:
nolove это тот который неверлуз?
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
говно
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
-хвх
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
Ну если отрендерить картинку шрифтом то пойдет
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
/del
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
прикольно
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
ебать страшно выглядит удали нахуй
 
в принципе норм, но надо доработать =)
 
Код:
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.client.UserInfo;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import im.expensive.utils.text.GradientUtil;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.ITextComponent.*;

import java.awt.*;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class WatermarkRenderer implements ElementRenderer {
    private final ResourceLocation icon = new ResourceLocation("expensive/images/hud/user.png");

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float posX = -21;
        float posY = 7;
        float padding = 5;
        float fontSize = 8.5f;
        float iconSize = 10;

        ITextComponent clname = GradientUtil.gradient("  " + UserInfo.clientname);
        ITextComponent text2 = GradientUtil.white("   /   User: " + UserInfo.usernick + "   /   UID: " + UserInfo.userid);
        ITextComponent combinedText = clname.append(text2);

        float textWidth = Fonts.sfMedium.getWidth(combinedText.getString(), fontSize);
        float localPosX = posX + iconSize + padding * 3;

        drawStyledRect(localPosX, posY, iconSize + padding * 2.5f + textWidth, iconSize + padding * 2, 4);
        DisplayUtils.drawImage(icon, localPosX + padding, posY - 4 + padding, iconSize, iconSize, ColorUtils.getColor(0));
        Fonts.sfMedium.drawText(ms, combinedText, localPosX + iconSize + padding * 1.5f - 1, posY - 5 + iconSize / 2 + 1.5f, fontSize, 255);

        int fps = mc.debugFPS;
        String fpsText = "FPS:";
        String fpsValue = " " + fps;
        ITextComponent fpsComponent = GradientUtil.gradient(fpsText);
        ITextComponent fpsVComponent = GradientUtil.white(fpsValue);
        ITextComponent fpsdoubleText = fpsComponent.append(fpsVComponent);
        float fpsWidth = Fonts.sfMedium.getWidth(fpsdoubleText, fontSize);
        float fpsPosY = posY + iconSize + padding * 2;

        drawStyledRect(localPosX, fpsPosY, fpsWidth + padding * 2, iconSize+4 + padding, 4);
        Fonts.sfMedium.drawText(ms, fpsdoubleText, localPosX + padding, fpsPosY + (iconSize / 2) - (fontSize / 2), fontSize, 255);
    }

    private void drawStyledRect(float x, float y, float width, float height, float radius) {
        DisplayUtils.drawShadow(x, y - 2, width + 1, height - 5 + 1, 5, new Color(21, 21, 21, 255).getRGB());
        DisplayUtils.drawRoundedRect(x, y - 2, width, height - 5, radius - 2, ColorUtils.rgba(21, 21, 21, 255));
    }
}

сливаю проста так


Посмотреть вложение 291936
4e za append
 
Назад
Сверху Снизу