• На форуме разыгрывается более 300 ключей на приватные читы! Для этого нужно всего-лишь нажать соответствующую кнопку в теме!

    Подробности по ссылке:
    https://t.me/yougame_official/66

Исходник Простенькая ватермарка (худ) на 1.21.1 mcp

Начинающий
Статус
Оффлайн
Регистрация
6 Дек 2023
Сообщения
243
Реакции[?]
2
Поинты[?]
2K
Всем ку, написал простенькую ватермарку. думаю утилки свои вставите и системы фонтов. Если уговорите, то скину рендер и утилки & фонты

и да, не бейте палками. сделал за 15 минут

Пожалуйста, авторизуйтесь для просмотра ссылки.

Пожалуйста, авторизуйтесь для просмотра ссылки.

code:

Java:
package rave.client.main.modules.impl.render;

import net.minecraft.resources.ResourceLocation;
import java.awt.*;

import rave.client.main.modules.ModuleApi.CategoryUtil;
import rave.client.main.modules.ModuleApi.Module;
import rave.client.main.modules.ModuleApi.ModuleAnnotation;
import rave.client.misc.miniprotect.Protect;
import rave.client.misc.util.color.ColorUtils;
import rave.client.misc.util.render.DrawHelper;
import rave.client.main.modules.tools.imp.BooleanOption;
import rave.client.main.modules.tools.imp.MultiBoxTools;
import rave.client.misc.event.EventHandler;
import rave.client.misc.event.events.impl.*;
import rave.client.misc.font.FontRenderers;
import rave.client.main.modules.tools.imp.ModeTools;

@ModuleAnnotation(name = "HUD", type = CategoryUtil.Render)
public class HUD extends Module {

    public final MultiBoxTools hud = new MultiBoxTools("Настройки",
            new BooleanOption("Ватермарка", true),
            new BooleanOption("BPS", true)
    );

    // темы
    public ModeTools themes = new ModeTools("Темы", "Оригинальная",
            "Оригинальная",
            "Ночная",
            "Электричная",
            "Розовая",
            "Неизвестная",
            "Мериада",
            "Лавовый",
            "Небесный",
            "Леденец",
            "Дуп",
            "Лазурный",
            "Магический",
            "Вспышка",
            "Падение",
            "Лунный свет"
    );

    public HUD() {
        addSettings(hud, themes);
        this.displayedFps = mc.getFps();
    }

    private float displayedFps = 0;

    @EventHandler
    public void render(RenderEvent2D e) {
        if (hud.get("Ватермарка")) {
            String username = Protect.name;
            String server = mc.getCurrentServerData() != null ? mc.getCurrentServerData().ip : "Singleplayer";

            displayedFps += (mc.getFps() - displayedFps) * 0.002f;
            String fps = (int) displayedFps + " FPS";

            float padding = 3.0f;
            float spacing = 8.0f;
            float iconSize = 9.9f;

            ResourceLocation userIcon = new ResourceLocation("minecraft", "raveclient/images/user.png");
            ResourceLocation serverIcon = new ResourceLocation("minecraft", "raveclient/images/server.png");
            ResourceLocation fpsIcon = new ResourceLocation("minecraft", "raveclient/images/fps.png");

            float usernameWidth = FontRenderers.msSemi16.getStringWidth(username);
            float serverWidth = FontRenderers.msSemi16.getStringWidth(server);
            float fpsWidth = FontRenderers.msSemi16.getStringWidth(fps);

            float rectWidth = padding * 10.1f + iconSize * 3 + usernameWidth + serverWidth + fpsWidth + spacing * 2;
            float rectHeight = 15.0f;

            float screenWidth = mc.getWindow().getGuiScaledWidth();
            float posX = (screenWidth - rectWidth) / 2;
            float posY = 9.0f;

            DrawHelper.rectangle(e.getGuiGraphics().pose(), posX, posY, rectWidth, rectHeight, 6,
                    ColorUtils.rgba(61, 61, 61, 204));

            float iconX = posX + padding;
            float iconY = posY + (rectHeight - iconSize) / 2;

            DrawHelper.drawRotatedTexture(userIcon, e.getGuiGraphics().pose().last().pose(), iconX, iconY, iconSize, iconSize, 180);
            iconX += iconSize + spacing;

            FontRenderers.msSemi16.drawString(e.getGuiGraphics().pose(), username, iconX,
                    posY + (rectHeight - FontRenderers.msSemi16.getFontHeight("Sample")) / 1.4f, Color.WHITE.getRGB());
            iconX += usernameWidth + spacing;


            DrawHelper.drawRotatedTexture(serverIcon, e.getGuiGraphics().pose().last().pose(), iconX, iconY, iconSize, iconSize, 180);
            iconX += iconSize + spacing;

            FontRenderers.msSemi16.drawString(e.getGuiGraphics().pose(), server, iconX,
                    posY + (rectHeight - FontRenderers.msSemi16.getFontHeight("Sample")) / 1.4f, Color.WHITE.getRGB());
            iconX += serverWidth + spacing;

            DrawHelper.drawRotatedTexture(fpsIcon, e.getGuiGraphics().pose().last().pose(), iconX, iconY, iconSize, iconSize, 180);
            iconX += iconSize + spacing;


            FontRenderers.msSemi16.drawString(e.getGuiGraphics().pose(), fps, iconX,
                    posY + (rectHeight - FontRenderers.msSemi16.getFontHeight("Sample")) / 1.4f, Color.WHITE.getRGB());
        }
    }
}
думаю вы поймете, как переписать на вашу базу
хз норм
 
Сверху Снизу