Исходник ArrayList nevernight'a | EXP 3.1

Начинающий
Статус
Оффлайн
Регистрация
10 Ноя 2023
Сообщения
83
Реакции[?]
0
Поинты[?]
0

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

не знаю может кому то нужно
вот код
ArrayList:
//
//

package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import java.util.Iterator;
import java.util.List;
import net.minecraft.client.Minecraft;
import ru.hogoshi.Animation;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Function;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.display.ElementUpdater;
import im.expensive.utils.math.StopWatch;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;

public class ArrayListRenderer implements ElementRenderer, ElementUpdater {
    private int lastIndex;
    List<Function> list;
    StopWatch stopWatch = new StopWatch();

    public ArrayListRenderer() {
    }

    public void update(EventUpdate e) {
        if (this.stopWatch.isReached(1000L)) {
            this.list = Expensive.getInstance().getFunctionRegistry().getSorted(Fonts.sfui, 7.5F).stream().toList();
            this.stopWatch.reset();
        }

    }

    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float rounding = 6.0F;
        float padding = 3.5F;
        Minecraft mc = Minecraft.getInstance();
        int screenWidth = mc.getMainWindow().getScaledWidth();
        float posY = 0.0F;
        int index = 0;
        if (this.list != null) {
            Iterator var9 = this.list.iterator();

            Function f;
            float fontSize;
            Animation anim;
            float value;
            String text;
            while(var9.hasNext()) {
                f = (Function)var9.next();
                fontSize = 6.5F;
                anim = f.getAnimation();
                value = (float)anim.getValue();
                text = f.getName();
                Fonts.sfui.getWidth(text, fontSize);
                if (value != 0.0F) {
                    posY += (fontSize + padding * 2.0F) * value;
                    ++index;
                }
            }

            index = 0;
            posY = 5.0F;
            var9 = this.list.iterator();

            while(var9.hasNext()) {
                f = (Function)var9.next();
                fontSize = 6.5F;
                anim = f.getAnimation();
                anim.update();
                value = (float)anim.getValue();
                text = f.getName();
                float textWidth = Fonts.sfui.getWidth(text, fontSize);
                if (value != 0.0F) {
                    float localFontSize = fontSize * value;
                    float localTextWidth = textWidth * value;
                    float posX = (float)screenWidth - localTextWidth - padding * 2.0F - 4.0F;
                    boolean isFirst = index == 0;
                    boolean isLast = index == this.lastIndex;
                    float topLeftRadius = isFirst ? rounding : 0.0F;
                    float bottomLeftRadius = isLast ? rounding : 0.0F;
                    DisplayUtils.drawRoundedRect(posX, posY, localTextWidth + padding * 2.0F, localFontSize + padding * 2.0F, value, ColorUtils.rgba(25, 25, 25, 250));
                    DisplayUtils.drawShadow(posX, posY, localTextWidth + padding * 2.0F + 3.0F, localFontSize + padding * 2.0F + 3.0F, 6, ColorUtils.rgba(25, 25, 25, 250));
                    Fonts.sfui.drawText(ms, f.getName(), posX + padding, posY + padding, ColorUtils.getColor(0), localFontSize);
                    posY += (fontSize + padding * 2.0F - 1.0F) * value;
                    ++index;
                }
            }

            this.lastIndex = index - 1;
        }

    }
}





ss:
1718857515250.png
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
16 Дек 2023
Сообщения
467
Реакции[?]
8
Поинты[?]
4K
не знаю может кому то нужно
вот код
ArrayList:
//
//

package im.expensive.ui.display.impl;

import com.mojang.blaze3d.matrix.MatrixStack;
import java.util.Iterator;
import java.util.List;
import net.minecraft.client.Minecraft;
import ru.hogoshi.Animation;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Function;
import im.expensive.ui.display.ElementRenderer;
import im.expensive.ui.display.ElementUpdater;
import im.expensive.utils.math.StopWatch;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.render.font.Fonts;

public class ArrayListRenderer implements ElementRenderer, ElementUpdater {
    private int lastIndex;
    List<Function> list;
    StopWatch stopWatch = new StopWatch();

    public ArrayListRenderer() {
    }

    public void update(EventUpdate e) {
        if (this.stopWatch.isReached(1000L)) {
            this.list = Expensive.getInstance().getFunctionRegistry().getSorted(Fonts.sfui, 7.5F).stream().toList();
            this.stopWatch.reset();
        }

    }

    public void render(EventDisplay eventDisplay) {
        MatrixStack ms = eventDisplay.getMatrixStack();
        float rounding = 6.0F;
        float padding = 3.5F;
        Minecraft mc = Minecraft.getInstance();
        int screenWidth = mc.getMainWindow().getScaledWidth();
        float posY = 0.0F;
        int index = 0;
        if (this.list != null) {
            Iterator var9 = this.list.iterator();

            Function f;
            float fontSize;
            Animation anim;
            float value;
            String text;
            while(var9.hasNext()) {
                f = (Function)var9.next();
                fontSize = 6.5F;
                anim = f.getAnimation();
                value = (float)anim.getValue();
                text = f.getName();
                Fonts.sfui.getWidth(text, fontSize);
                if (value != 0.0F) {
                    posY += (fontSize + padding * 2.0F) * value;
                    ++index;
                }
            }

            index = 0;
            posY = 5.0F;
            var9 = this.list.iterator();

            while(var9.hasNext()) {
                f = (Function)var9.next();
                fontSize = 6.5F;
                anim = f.getAnimation();
                anim.update();
                value = (float)anim.getValue();
                text = f.getName();
                float textWidth = Fonts.sfui.getWidth(text, fontSize);
                if (value != 0.0F) {
                    float localFontSize = fontSize * value;
                    float localTextWidth = textWidth * value;
                    float posX = (float)screenWidth - localTextWidth - padding * 2.0F - 4.0F;
                    boolean isFirst = index == 0;
                    boolean isLast = index == this.lastIndex;
                    float topLeftRadius = isFirst ? rounding : 0.0F;
                    float bottomLeftRadius = isLast ? rounding : 0.0F;
                    DisplayUtils.drawRoundedRect(posX, posY, localTextWidth + padding * 2.0F, localFontSize + padding * 2.0F, value, ColorUtils.rgba(25, 25, 25, 250));
                    DisplayUtils.drawShadow(posX, posY, localTextWidth + padding * 2.0F + 3.0F, localFontSize + padding * 2.0F + 3.0F, 6, ColorUtils.rgba(25, 25, 25, 250));
                    Fonts.sfui.drawText(ms, f.getName(), posX + padding, posY + padding, ColorUtils.getColor(0), localFontSize);
                    posY += (fontSize + padding * 2.0F - 1.0F) * value;
                    ++index;
                }
            }

            this.lastIndex = index - 1;
        }

    }
}





ss:
Посмотреть вложение 279698
Красивый,как в arbuz client первой версии вроде
 
Сверху Снизу