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.drag.Dragging;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import net.minecraft.util.ResourceLocation;
@FieldDefaults(level = AccessLevel.PRIVATE)
@RequiredArgsConstructor
public class BlackRectWhiteIconRenderer implements ElementRenderer {
final Dragging dragging;
final ResourceLocation logo = new ResourceLocation("expensive/images/hud/icooo.png"); // Тут иконочку меняешь на свою
float iconSizeX = 10;
float iconSizeY = 10;
float width;
float height;
[USER=1367676]@override[/USER]
public void render(EventDisplay eventDisplay) {
MatrixStack ms = eventDisplay.getMatrixStack();
float posX = dragging.getX();
float posY = dragging.getY();
float padding = 5;
float fontSize = 6.5f;
String namemod = "Текст";
Style style = Expensive.getInstance().getStyleManager().getCurrentStyle();
DisplayUtils.drawRoundedRect(posX, posY, width, height, 5, ColorUtils.rgba(0, 0, 0, 255)); // Тут цвет черного ректа меняешь на свой
Fonts.sfui.drawText(ms, namemod, posX + padding, posY + padding + 1, ColorUtils.rgb(255, 255, 255), fontSize); // Цвет текста меняешь на свой
float imagePosX = posX + width - iconSizeX - padding;
DisplayUtils.drawRoundedRect(imagePosX - 2.0f, posY + 2.0f, iconSizeX + 4.0f, iconSizeY + 4.0f, 2, ColorUtils.rgba(255, 255, 255, 255)); // Тут цвет белого ректа меняешь на свой
DisplayUtils.drawImage(logo, imagePosX, posY + 4f, iconSizeX, iconSizeY, ColorUtils.rgb(129, 135, 255)); // Цвет картинки меняешь на свой
float maxWidth = Fonts.sfMedium.getWidth(namemod, fontSize) + padding * 2;
float localHeight = fontSize + padding * 2;
width = Math.max(maxWidth, 80);
height = localHeight + 2.5f;
dragging.setWidth(width);
dragging.setHeight(height);
}
}