-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Код:
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));
}
}
Последнее редактирование: