• Ищем качественного (не новичок) разработчиков Xenforo для этого форума! В идеале, чтобы ты был фулл стек программистом. Если у тебя есть что показать, то свяжись с нами по контактным данным: https://t.me/DREDD

HotKeys | manloxx client

Всем привет! это моя первая работа которую я выкладываю на форум
Вот код биндов
и pngПосмотреть вложение 284746
JavaScript:
Expand Collapse Copy
package mq.bluekodi.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.platform.GlStateManager;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import mq.bluekodi.Bluekodi;
import mq.bluekodi.events.EventDisplay;
import mq.bluekodi.functions.api.Function;
import mq.bluekodi.functions.impl.render.HUD;
import mq.bluekodi.ui.display.ElementRenderer;
import mq.bluekodi.ui.styles.Style;
import mq.bluekodi.utils.client.KeyStorage;
import mq.bluekodi.utils.drag.Dragging;
import mq.bluekodi.utils.math.MathUtil;
import mq.bluekodi.utils.math.Vector4i;
import mq.bluekodi.utils.render.ColorUtils;
import mq.bluekodi.utils.render.DisplayUtils;
import mq.bluekodi.utils.render.Scissor;
import mq.bluekodi.utils.render.font.Fonts;
import mq.bluekodi.utils.text.GradientUtil;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;

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

    final Dragging dragging;
    float iconSizeX = 10;
    float iconSizeY = 10;


    float width;
    float height;

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        float posX = dragging.getX();
        float posY = dragging.getY();
        float fontSize = 7.5f;
        float padding = 4.3f;
        float textWidth = 75;

        ITextComponent name = GradientUtil.gradient("Hotkeys");
        String namemod = "              Hotkeys";
        final ResourceLocation logo = new ResourceLocation("bluekodi/images/hud/gradline.png");

        float finalPosY = posY;
        drawStyledRect(posX, finalPosY, width, height, 5);

        DisplayUtils.drawShadow(posX, posY, width, height, 15, ColorUtils.rgba(255,255,255,165));
        DisplayUtils.drawImage(logo, posX, posY + 14, textWidth+padding, 1, HUD.getColor(0));

        Scissor.push();
        Scissor.setFromComponentCoordinates(posX, posY, width, height);
        Fonts.expensive4.drawText(ms, namemod, posX + padding, posY + padding + 1, ColorUtils.rgb(0, 0, 0),fontSize);

        posY += fontSize + padding * 2;

        float maxWidth = Fonts.expensive4.getWidth(name, fontSize) + padding * 2;
        float localHeight = fontSize + padding * 2;

        for (Function f : Bluekodi.getInstance().getFunctionRegistry().getFunctions()) {
            f.getAnimation().update();
            if (!(f.getAnimation().getValue() > 0) || f.getBind() == 0) continue;
            String nameText = f.getName();
            float nameWidth = Fonts.expensive4.getWidth(nameText, fontSize);

            String bindText = KeyStorage.getKey(f.getBind());
            float bindWidth = Fonts.expensive4.getWidth(bindText, fontSize);


            float localWidth = nameWidth + bindWidth + padding * 3;

            Fonts.expensive4.drawText(ms, nameText, posX + padding, posY + 0.5f, ColorUtils.rgba(0, 0, 0, (int) (255 * f.getAnimation().getValue())), fontSize);
            Fonts.expensive4.drawText(ms, bindText, posX + width - padding - bindWidth, posY + 0.5f, ColorUtils.rgba(0, 0, 0, (int) (255 * f.getAnimation().getValue())), fontSize);

            if (localWidth > maxWidth) {
                maxWidth = localWidth;
            }

            posY += (float) ((fontSize + padding) * f.getAnimation().getValue());
            localHeight += (float) ((fontSize + padding) * f.getAnimation().getValue());
        }
        Scissor.unset();
        Scissor.pop();
        width = Math.max(maxWidth, 80);
        height = localHeight + 2.5f;
        dragging.setWidth(width);
        dragging.setHeight(height);
    }

    private void drawStyledRect(float x,
                                float y,
                                float width,
                                float height,
                                float radius) {

        DisplayUtils.drawRoundedRect(x - 0.5f, y - 0.5f, width + 1, height + 1, radius + 0.5f, ColorUtils.setAlpha(ColorUtils.rgb(18,16,16), 90));
        DisplayUtils.drawRoundedRect(x, y, width, height, radius, ColorUtils.rgba(255, 255, 255, 190));
    }
}
капец бро мои кей бинды пишутся 5 минут выводится картинка делаем ее не кривой меняем немного ректы меняет
ITextComponent name = GradientUtil.gradient("Hotkeys");
меняем на
ITextComponent name = GradientUtil.white("Hotkeys");
пишем метод в градиент утил
все!
 
капец бро мои кей бинды пишутся 5 минут выводится картинка делаем ее не кривой меняем немного ректы меняет
ITextComponent name = GradientUtil.gradient("Hotkeys");
меняем на
ITextComponent name = GradientUtil.white("Hotkeys");
пишем метод в градиент утил
все!
а вывести в вт тпс ты догадаться не можешь? Браво!
 
а вывести в вт тпс ты догадаться не можешь? Браво!
ты обиделся что я на весь югейм сказал что ты не знаешь что такое ректы и пошел выписывать? ты кстати сделал их тоже криво у тебя один фон на другом был
 
ты обиделся что я на весь югейм сказал что ты не знаешь что такое ректы и пошел выписывать? ты кстати сделал их тоже криво у тебя один фон на другом был
ты кстати не можешь вывести тпс когда это можно сделать элементарно, и то что у меня один фон на другом это уже мои проблемы которые исправить не заставит труда
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ты кстати не можешь вывести тпс когда это можно сделать элементарно, и то что у меня один фон на другом это уже мои проблемы которые исправить не заставит труда
я вывожу тпс не в вт не в 4-5 строк мне ее надо сделать отдельно от всего
Проще я думаю было б отрисовать эту линию, а не пнг
ну с этим долбатся я с этим не очень дружу мне по пнг легче будет
 
Всем привет! это моя первая работа которую я выкладываю на форум
Вот код биндов
и pngПосмотреть вложение 284746
JavaScript:
Expand Collapse Copy
package mq.bluekodi.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.platform.GlStateManager;
import lombok.AccessLevel;
import lombok.RequiredArgsConstructor;
import lombok.experimental.FieldDefaults;
import mq.bluekodi.Bluekodi;
import mq.bluekodi.events.EventDisplay;
import mq.bluekodi.functions.api.Function;
import mq.bluekodi.functions.impl.render.HUD;
import mq.bluekodi.ui.display.ElementRenderer;
import mq.bluekodi.ui.styles.Style;
import mq.bluekodi.utils.client.KeyStorage;
import mq.bluekodi.utils.drag.Dragging;
import mq.bluekodi.utils.math.MathUtil;
import mq.bluekodi.utils.math.Vector4i;
import mq.bluekodi.utils.render.ColorUtils;
import mq.bluekodi.utils.render.DisplayUtils;
import mq.bluekodi.utils.render.Scissor;
import mq.bluekodi.utils.render.font.Fonts;
import mq.bluekodi.utils.text.GradientUtil;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.ITextComponent;

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

    final Dragging dragging;
    float iconSizeX = 10;
    float iconSizeY = 10;


    float width;
    float height;

    @Override
    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();

        float posX = dragging.getX();
        float posY = dragging.getY();
        float fontSize = 7.5f;
        float padding = 4.3f;
        float textWidth = 75;

        ITextComponent name = GradientUtil.gradient("Hotkeys");
        String namemod = "              Hotkeys";
        final ResourceLocation logo = new ResourceLocation("bluekodi/images/hud/gradline.png");

        float finalPosY = posY;
        drawStyledRect(posX, finalPosY, width, height, 5);

        DisplayUtils.drawShadow(posX, posY, width, height, 15, ColorUtils.rgba(255,255,255,165));
        DisplayUtils.drawImage(logo, posX, posY + 14, textWidth+padding, 1, HUD.getColor(0));

        Scissor.push();
        Scissor.setFromComponentCoordinates(posX, posY, width, height);
        Fonts.expensive4.drawText(ms, namemod, posX + padding, posY + padding + 1, ColorUtils.rgb(0, 0, 0),fontSize);

        posY += fontSize + padding * 2;

        float maxWidth = Fonts.expensive4.getWidth(name, fontSize) + padding * 2;
        float localHeight = fontSize + padding * 2;

        for (Function f : Bluekodi.getInstance().getFunctionRegistry().getFunctions()) {
            f.getAnimation().update();
            if (!(f.getAnimation().getValue() > 0) || f.getBind() == 0) continue;
            String nameText = f.getName();
            float nameWidth = Fonts.expensive4.getWidth(nameText, fontSize);

            String bindText = KeyStorage.getKey(f.getBind());
            float bindWidth = Fonts.expensive4.getWidth(bindText, fontSize);


            float localWidth = nameWidth + bindWidth + padding * 3;

            Fonts.expensive4.drawText(ms, nameText, posX + padding, posY + 0.5f, ColorUtils.rgba(0, 0, 0, (int) (255 * f.getAnimation().getValue())), fontSize);
            Fonts.expensive4.drawText(ms, bindText, posX + width - padding - bindWidth, posY + 0.5f, ColorUtils.rgba(0, 0, 0, (int) (255 * f.getAnimation().getValue())), fontSize);

            if (localWidth > maxWidth) {
                maxWidth = localWidth;
            }

            posY += (float) ((fontSize + padding) * f.getAnimation().getValue());
            localHeight += (float) ((fontSize + padding) * f.getAnimation().getValue());
        }
        Scissor.unset();
        Scissor.pop();
        width = Math.max(maxWidth, 80);
        height = localHeight + 2.5f;
        dragging.setWidth(width);
        dragging.setHeight(height);
    }

    private void drawStyledRect(float x,
                                float y,
                                float width,
                                float height,
                                float radius) {

        DisplayUtils.drawRoundedRect(x - 0.5f, y - 0.5f, width + 1, height + 1, radius + 0.5f, ColorUtils.setAlpha(ColorUtils.rgb(18,16,16), 90));
        DisplayUtils.drawRoundedRect(x, y, width, height, radius, ColorUtils.rgba(255, 255, 255, 190));
    }
}
/del
 
ну ладно ну незнаю ну прям хз
 
поднимаю тему, скинь нормальное пнг сука
 
Назад
Сверху Снизу