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

Визуальная часть Watermark expensive 3.1 / evaware ( 50 / 50 )

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
15 Ноя 2024
Сообщения
8
Реакции
0
Выберите загрузчик игры
  1. Vanilla
  2. Forge
  3. Fabric
  4. NeoForge
  5. OptiFine
  6. ForgeOptiFine
  7. Прочие моды
hello yougam, это моя первая работа на этам форуме
( криво косо, вроде бы норм )
( ватермарка раширяеться в зависимости от никнейма и fps )
ss:
Снимок экрана 2025-11-25 233232.pngСнимок экрана 2025-11-25 233214.pngСнимок экрана 2025-11-25 233146.png

Code:

MegaWatermark.java:
Expand Collapse Copy
package next.ware.ui.clienthud.impl;

import com.mojang.blaze3d.matrix.MatrixStack;

import next.ware.Next;
import next.ware.events.EventRender2D;
import next.ware.ui.clienthud.updater.ElementRenderer;
import next.ware.manager.Theme;
import next.ware.utils.client.ClientUtility;
import next.ware.utils.math.MathUtility;
import next.ware.utils.math.Vector4i;
import next.ware.utils.render.color.ColorUtility;
import next.ware.utils.render.engine2d.RenderUtility;
import next.ware.utils.render.engine2d.RectUtility;
import next.ware.utils.render.font.Fonts;
import next.ware.utils.text.BetterText;
import next.ware.utils.text.font.ClientFonts;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.client.Minecraft;
import net.minecraft.util.math.vector.Vector4f;
import net.minecraft.util.text.TextFormatting;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;

@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class Watermark implements ElementRenderer {


@Override
public void render(EventRender2D eventRender2D) {
float fpsHlopka = (int) (Minecraft.getInstance().debugFPS);


MatrixStack ms = eventRender2D.getMatrixStack();


String namesas = "Гений в мире пастинга";
float hels = ClientFonts.interBold[17].getWidth(namesas);
float glinaFPS = ClientFonts.interBold[17].getWidth(fpsHlopka + " fps");


float x = 15;
float y = 15;

float xov = 17;
float yov = 17;

float hell = 20;
Vector4i paster = new Vector4i(
ColorUtility.rgba(240,240,240,200),
ColorUtility.rgba(120,120,240,200),
ColorUtility.rgba(120,120,240,200),
ColorUtility.rgba(120,120,240,200)
);

Vector4f round = new Vector4f( 7,7,2,2);
Vector4f round2 = new Vector4f( 2,2,7,7);

/// главный рект
RenderUtility.drawRoundedRect(x,y,48 + hels + glinaFPS,hell,7,ColorUtility.rgba(120,120,120,230));

/// logo
RenderUtility.drawRoundedRect(xov,yov, 20,16, round,paster);
ClientFonts.icons_nur[20].drawString(ms,"D", xov + 5f,yov + 6, ColorUtility.rgba(240,240,240,200) );

/// никнейм

RenderUtility.drawRoundedRect(xov + 20 + 2,yov, hels + 9,16, 1,paster);

ClientFonts.interBold[17].drawString(ms, namesas, xov + 20 + 2 + 5,yov + 5, ColorUtility.rgba(240,240,240,200));


/// FPS

RenderUtility.drawRoundedRect(xov + hels + 33,yov , glinaFPS + 11,16, round2, paster);
ClientFonts.interBold[17].drawString(ms,fpsHlopka + " fps", xov + 5 + 33 + hels ,yov + 5, ColorUtility.rgba(240,240,240,200) );
}
}
 
Назад
Сверху Снизу