Исходник Notification nursultan nextgen(Expensive 2.0 ready)

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

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

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

Спасибо!

Java:
package ru.nettix.notification;

import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.math.vector.Vector4f;
import ru.nettix.managment.Managment;
import ru.nettix.util.font.Fonts;
import ru.nettix.util.render.ColorUtil;
import ru.nettix.util.render.RenderUtil;
import ru.nettix.util.animations.Animation;
import ru.nettix.util.animations.Direction;
import ru.nettix.util.animations.impl.DecelerateAnimation;
import ru.nettix.util.render.animation.AnimationMath;

import java.util.Comparator;
import java.util.concurrent.CopyOnWriteArrayList;

import static ru.nettix.util.IMinecraft.mc;
import static ru.nettix.util.render.ColorUtil.getColorStyle;
import static ru.nettix.util.render.ColorUtil.rgba;

public class NotificationManager {

    private final CopyOnWriteArrayList<Notification> notifications = new CopyOnWriteArrayList<>();

    public void add(String text, String content, int time) {
        notifications.add(new Notification(text, content, time));
    }


    public void draw(MatrixStack stack) {
        int yOffset = 0;
        for (Notification notification : notifications) {

            if (System.currentTimeMillis() - notification.getTime() > (notification.time2 * 1000L) - 300) {
                notification.animation.setDirection(Direction.BACKWARDS);
            } else {
                notification.yAnimation.setDirection(Direction.FORWARDS);
                notification.animation.setDirection(Direction.FORWARDS);
            }
            notification.alpha = (float) notification.animation.getOutput();
            if (System.currentTimeMillis() - notification.getTime() > notification.time2 * 1000L) {
                notification.yAnimation.setDirection(Direction.BACKWARDS);
            }
            if (notification.yAnimation.finished(Direction.BACKWARDS)) {
                notifications.remove(notification);
                continue;
            }
            float x = mc.getMainWindow().scaledWidth() - (Fonts.gilroyBold[14].getWidth(notification.getText()) + 8) - 10;
            float y = mc.getMainWindow().scaledHeight() - 30 -  (mc.player.getActivePotionEffects().stream().sorted(Comparator.comparing(EffectInstance::getDuration)).toList().size() * 16);
            notification.yAnimation.setEndPoint(yOffset);
            notification.yAnimation.setDuration(300);
            y -= (float) (notification.draw(stack) * notification.yAnimation.getOutput());
            notification.setX(x);
            notification.setY(AnimationMath.fast(notification.getY(), y, 15));
            yOffset++;
        }
    }


    private class Notification {
        @Getter
        @Setter
        private float x, y = mc.getMainWindow().scaledHeight() + 24;

        @Getter
        private String text;
        @Getter
        private String content;

        @Getter
        private long time = System.currentTimeMillis();

        public Animation animation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        public Animation yAnimation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        float alpha;
        int time2 = 3;

        public Notification(String text, String content, int time) {
            this.text = text;
            this.content = content;
            time2 = time;
        }

        public float draw(MatrixStack stack) {
            float width = Fonts.gilroyBold[14].getWidth(text) + 8;

            int firstColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int secondColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));
            int thirdColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int fourthColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));

            if (Managment.FUNCTION_MANAGER.hud2.shadow.get())
                RenderUtil.Render2D.drawShadow(x - 30, y, width + 30, 20, 10, getColorStyle(40));
            RenderUtil.Render2D.drawRoundedRect(x - 30, y, width + 30, 20, 3, ColorUtil.rgba(0, 0, 0, 255 * alpha));

            Fonts.msMedium[14].drawString(stack, content, x + 4 - 30, y + 5, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            Fonts.msMedium[12].drawString(stack, text, x + 4 - 30, y + 13, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            return 24;
        }
    }
}
Оригинал:1700409076200.png
Моё: 1700409085073.png
Только не бейте палками пж
 
Начинающий
Статус
Оффлайн
Регистрация
1 Окт 2022
Сообщения
177
Реакции[?]
5
Поинты[?]
2K
так в чем проблема гетнуть цвет клиента в данный момент и поставить в бэкграуд и спиздить шрифты с нурика? текст снизу не похож
 
40, 40, 40 blackout XD
Участник
Статус
Оффлайн
Регистрация
15 Янв 2020
Сообщения
467
Реакции[?]
234
Поинты[?]
28K
так в чем проблема гетнуть цвет клиента в данный момент и поставить в бэкграуд и спиздить шрифты с нурика? текст снизу не похож
 
Начинающий
Статус
Оффлайн
Регистрация
31 Июл 2022
Сообщения
410
Реакции[?]
18
Поинты[?]
23K
Java:
package ru.nettix.notification;

import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.math.vector.Vector4f;
import ru.nettix.managment.Managment;
import ru.nettix.util.font.Fonts;
import ru.nettix.util.render.ColorUtil;
import ru.nettix.util.render.RenderUtil;
import ru.nettix.util.animations.Animation;
import ru.nettix.util.animations.Direction;
import ru.nettix.util.animations.impl.DecelerateAnimation;
import ru.nettix.util.render.animation.AnimationMath;

import java.util.Comparator;
import java.util.concurrent.CopyOnWriteArrayList;

import static ru.nettix.util.IMinecraft.mc;
import static ru.nettix.util.render.ColorUtil.getColorStyle;
import static ru.nettix.util.render.ColorUtil.rgba;

public class NotificationManager {

    private final CopyOnWriteArrayList<Notification> notifications = new CopyOnWriteArrayList<>();

    public void add(String text, String content, int time) {
        notifications.add(new Notification(text, content, time));
    }


    public void draw(MatrixStack stack) {
        int yOffset = 0;
        for (Notification notification : notifications) {

            if (System.currentTimeMillis() - notification.getTime() > (notification.time2 * 1000L) - 300) {
                notification.animation.setDirection(Direction.BACKWARDS);
            } else {
                notification.yAnimation.setDirection(Direction.FORWARDS);
                notification.animation.setDirection(Direction.FORWARDS);
            }
            notification.alpha = (float) notification.animation.getOutput();
            if (System.currentTimeMillis() - notification.getTime() > notification.time2 * 1000L) {
                notification.yAnimation.setDirection(Direction.BACKWARDS);
            }
            if (notification.yAnimation.finished(Direction.BACKWARDS)) {
                notifications.remove(notification);
                continue;
            }
            float x = mc.getMainWindow().scaledWidth() - (Fonts.gilroyBold[14].getWidth(notification.getText()) + 8) - 10;
            float y = mc.getMainWindow().scaledHeight() - 30 -  (mc.player.getActivePotionEffects().stream().sorted(Comparator.comparing(EffectInstance::getDuration)).toList().size() * 16);
            notification.yAnimation.setEndPoint(yOffset);
            notification.yAnimation.setDuration(300);
            y -= (float) (notification.draw(stack) * notification.yAnimation.getOutput());
            notification.setX(x);
            notification.setY(AnimationMath.fast(notification.getY(), y, 15));
            yOffset++;
        }
    }


    private class Notification {
        @Getter
        @Setter
        private float x, y = mc.getMainWindow().scaledHeight() + 24;

        @Getter
        private String text;
        @Getter
        private String content;

        @Getter
        private long time = System.currentTimeMillis();

        public Animation animation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        public Animation yAnimation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        float alpha;
        int time2 = 3;

        public Notification(String text, String content, int time) {
            this.text = text;
            this.content = content;
            time2 = time;
        }

        public float draw(MatrixStack stack) {
            float width = Fonts.gilroyBold[14].getWidth(text) + 8;

            int firstColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int secondColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));
            int thirdColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int fourthColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));

            if (Managment.FUNCTION_MANAGER.hud2.shadow.get())
                RenderUtil.Render2D.drawShadow(x - 30, y, width + 30, 20, 10, getColorStyle(40));
            RenderUtil.Render2D.drawRoundedRect(x - 30, y, width + 30, 20, 3, ColorUtil.rgba(0, 0, 0, 255 * alpha));

            Fonts.msMedium[14].drawString(stack, content, x + 4 - 30, y + 5, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            Fonts.msMedium[12].drawString(stack, text, x + 4 - 30, y + 13, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            return 24;
        }
    }
}
Оригинал:Посмотреть вложение 264128
Моё: Посмотреть вложение 264129
Только не бейте палками пж
убейте его палкой нахуй чтобы больше не постил подобное
 
Начинающий
Статус
Оффлайн
Регистрация
26 Май 2020
Сообщения
260
Реакции[?]
9
Поинты[?]
8K
Начинающий
Статус
Оффлайн
Регистрация
23 Июл 2023
Сообщения
78
Реакции[?]
2
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
30 Авг 2022
Сообщения
188
Реакции[?]
2
Поинты[?]
1K
Java:
package ru.nettix.notification;

import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.math.vector.Vector4f;
import ru.nettix.managment.Managment;
import ru.nettix.util.font.Fonts;
import ru.nettix.util.render.ColorUtil;
import ru.nettix.util.render.RenderUtil;
import ru.nettix.util.animations.Animation;
import ru.nettix.util.animations.Direction;
import ru.nettix.util.animations.impl.DecelerateAnimation;
import ru.nettix.util.render.animation.AnimationMath;

import java.util.Comparator;
import java.util.concurrent.CopyOnWriteArrayList;

import static ru.nettix.util.IMinecraft.mc;
import static ru.nettix.util.render.ColorUtil.getColorStyle;
import static ru.nettix.util.render.ColorUtil.rgba;

public class NotificationManager {

    private final CopyOnWriteArrayList<Notification> notifications = new CopyOnWriteArrayList<>();

    public void add(String text, String content, int time) {
        notifications.add(new Notification(text, content, time));
    }


    public void draw(MatrixStack stack) {
        int yOffset = 0;
        for (Notification notification : notifications) {

            if (System.currentTimeMillis() - notification.getTime() > (notification.time2 * 1000L) - 300) {
                notification.animation.setDirection(Direction.BACKWARDS);
            } else {
                notification.yAnimation.setDirection(Direction.FORWARDS);
                notification.animation.setDirection(Direction.FORWARDS);
            }
            notification.alpha = (float) notification.animation.getOutput();
            if (System.currentTimeMillis() - notification.getTime() > notification.time2 * 1000L) {
                notification.yAnimation.setDirection(Direction.BACKWARDS);
            }
            if (notification.yAnimation.finished(Direction.BACKWARDS)) {
                notifications.remove(notification);
                continue;
            }
            float x = mc.getMainWindow().scaledWidth() - (Fonts.gilroyBold[14].getWidth(notification.getText()) + 8) - 10;
            float y = mc.getMainWindow().scaledHeight() - 30 -  (mc.player.getActivePotionEffects().stream().sorted(Comparator.comparing(EffectInstance::getDuration)).toList().size() * 16);
            notification.yAnimation.setEndPoint(yOffset);
            notification.yAnimation.setDuration(300);
            y -= (float) (notification.draw(stack) * notification.yAnimation.getOutput());
            notification.setX(x);
            notification.setY(AnimationMath.fast(notification.getY(), y, 15));
            yOffset++;
        }
    }


    private class Notification {
        @Getter
        @Setter
        private float x, y = mc.getMainWindow().scaledHeight() + 24;

        @Getter
        private String text;
        @Getter
        private String content;

        @Getter
        private long time = System.currentTimeMillis();

        public Animation animation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        public Animation yAnimation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        float alpha;
        int time2 = 3;

        public Notification(String text, String content, int time) {
            this.text = text;
            this.content = content;
            time2 = time;
        }

        public float draw(MatrixStack stack) {
            float width = Fonts.gilroyBold[14].getWidth(text) + 8;

            int firstColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int secondColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));
            int thirdColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int fourthColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));

            if (Managment.FUNCTION_MANAGER.hud2.shadow.get())
                RenderUtil.Render2D.drawShadow(x - 30, y, width + 30, 20, 10, getColorStyle(40));
            RenderUtil.Render2D.drawRoundedRect(x - 30, y, width + 30, 20, 3, ColorUtil.rgba(0, 0, 0, 255 * alpha));

            Fonts.msMedium[14].drawString(stack, content, x + 4 - 30, y + 5, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            Fonts.msMedium[12].drawString(stack, text, x + 4 - 30, y + 13, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            return 24;
        }
    }
}
Оригинал:Посмотреть вложение 264128
Моё: Посмотреть вложение 264129
Только не бейте палками пж
Ахахахаха че за пиздец,мог бы шрифт взять с старого нурика + background сделать цветом клиента гени
 
эксперт в майнкрафт апи
Read Only
Статус
Оффлайн
Регистрация
25 Янв 2023
Сообщения
676
Реакции[?]
284
Поинты[?]
22K
так в чем проблема гетнуть цвет клиента в данный момент и поставить в бэкграуд и спиздить шрифты с нурика? текст снизу не похож
в чем проблема не постить на этот форум свои ебаные сообщения?
P.S относится ко всем в этой теме кроме SERTYO_IGROK_V_POKER (т.е FolseYT dertuZ RenekuHUI STILIST1CK StasikPidos)
советую им избавиться от компьютера в пользу более лучших условий для протекания их диагноза
 
Начинающий
Статус
Оффлайн
Регистрация
23 Июл 2023
Сообщения
78
Реакции[?]
2
Поинты[?]
0
эксперт в майнкрафт апи
Пользователь
Статус
Оффлайн
Регистрация
8 Сен 2023
Сообщения
257
Реакции[?]
115
Поинты[?]
21K
Java:
package ru.nettix.notification;

import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.math.vector.Vector4f;
import ru.nettix.managment.Managment;
import ru.nettix.util.font.Fonts;
import ru.nettix.util.render.ColorUtil;
import ru.nettix.util.render.RenderUtil;
import ru.nettix.util.animations.Animation;
import ru.nettix.util.animations.Direction;
import ru.nettix.util.animations.impl.DecelerateAnimation;
import ru.nettix.util.render.animation.AnimationMath;

import java.util.Comparator;
import java.util.concurrent.CopyOnWriteArrayList;

import static ru.nettix.util.IMinecraft.mc;
import static ru.nettix.util.render.ColorUtil.getColorStyle;
import static ru.nettix.util.render.ColorUtil.rgba;

public class NotificationManager {

    private final CopyOnWriteArrayList<Notification> notifications = new CopyOnWriteArrayList<>();

    public void add(String text, String content, int time) {
        notifications.add(new Notification(text, content, time));
    }


    public void draw(MatrixStack stack) {
        int yOffset = 0;
        for (Notification notification : notifications) {

            if (System.currentTimeMillis() - notification.getTime() > (notification.time2 * 1000L) - 300) {
                notification.animation.setDirection(Direction.BACKWARDS);
            } else {
                notification.yAnimation.setDirection(Direction.FORWARDS);
                notification.animation.setDirection(Direction.FORWARDS);
            }
            notification.alpha = (float) notification.animation.getOutput();
            if (System.currentTimeMillis() - notification.getTime() > notification.time2 * 1000L) {
                notification.yAnimation.setDirection(Direction.BACKWARDS);
            }
            if (notification.yAnimation.finished(Direction.BACKWARDS)) {
                notifications.remove(notification);
                continue;
            }
            float x = mc.getMainWindow().scaledWidth() - (Fonts.gilroyBold[14].getWidth(notification.getText()) + 8) - 10;
            float y = mc.getMainWindow().scaledHeight() - 30 -  (mc.player.getActivePotionEffects().stream().sorted(Comparator.comparing(EffectInstance::getDuration)).toList().size() * 16);
            notification.yAnimation.setEndPoint(yOffset);
            notification.yAnimation.setDuration(300);
            y -= (float) (notification.draw(stack) * notification.yAnimation.getOutput());
            notification.setX(x);
            notification.setY(AnimationMath.fast(notification.getY(), y, 15));
            yOffset++;
        }
    }


    private class Notification {
        @Getter
        @Setter
        private float x, y = mc.getMainWindow().scaledHeight() + 24;

        @Getter
        private String text;
        @Getter
        private String content;

        @Getter
        private long time = System.currentTimeMillis();

        public Animation animation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        public Animation yAnimation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        float alpha;
        int time2 = 3;

        public Notification(String text, String content, int time) {
            this.text = text;
            this.content = content;
            time2 = time;
        }

        public float draw(MatrixStack stack) {
            float width = Fonts.gilroyBold[14].getWidth(text) + 8;

            int firstColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int secondColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));
            int thirdColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int fourthColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));

            if (Managment.FUNCTION_MANAGER.hud2.shadow.get())
                RenderUtil.Render2D.drawShadow(x - 30, y, width + 30, 20, 10, getColorStyle(40));
            RenderUtil.Render2D.drawRoundedRect(x - 30, y, width + 30, 20, 3, ColorUtil.rgba(0, 0, 0, 255 * alpha));

            Fonts.msMedium[14].drawString(stack, content, x + 4 - 30, y + 5, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            Fonts.msMedium[12].drawString(stack, text, x + 4 - 30, y + 13, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            return 24;
        }
    }
}
Оригинал:Посмотреть вложение 264128
Моё: Посмотреть вложение 264129
Только не бейте палками пж
так в чем проблема гетнуть цвет клиента в данный момент и поставить в бэкграуд и спиздить шрифты с нурика? текст снизу не похож
 
Забаненный
Статус
Оффлайн
Регистрация
30 Июл 2023
Сообщения
49
Реакции[?]
0
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
.
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
23 Июл 2023
Сообщения
78
Реакции[?]
2
Поинты[?]
0
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
23 Июл 2023
Сообщения
78
Реакции[?]
2
Поинты[?]
0
заходи в дс я тебе скачаю ты знаешь где меня искать
ник какой?
В ассетсах джарки посмотрел бы если Нурик есть а так шрифт sf-pro
блять так nunito или sfpro?
заходи в дс я тебе скачаю ты знаешь где меня искать
xD
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
8 Июн 2023
Сообщения
325
Реакции[?]
3
Поинты[?]
3K
Java:
package ru.nettix.notification;

import com.mojang.blaze3d.matrix.MatrixStack;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.potion.EffectInstance;
import net.minecraft.util.math.vector.Vector4f;
import ru.nettix.managment.Managment;
import ru.nettix.util.font.Fonts;
import ru.nettix.util.render.ColorUtil;
import ru.nettix.util.render.RenderUtil;
import ru.nettix.util.animations.Animation;
import ru.nettix.util.animations.Direction;
import ru.nettix.util.animations.impl.DecelerateAnimation;
import ru.nettix.util.render.animation.AnimationMath;

import java.util.Comparator;
import java.util.concurrent.CopyOnWriteArrayList;

import static ru.nettix.util.IMinecraft.mc;
import static ru.nettix.util.render.ColorUtil.getColorStyle;
import static ru.nettix.util.render.ColorUtil.rgba;

public class NotificationManager {

    private final CopyOnWriteArrayList<Notification> notifications = new CopyOnWriteArrayList<>();

    public void add(String text, String content, int time) {
        notifications.add(new Notification(text, content, time));
    }


    public void draw(MatrixStack stack) {
        int yOffset = 0;
        for (Notification notification : notifications) {

            if (System.currentTimeMillis() - notification.getTime() > (notification.time2 * 1000L) - 300) {
                notification.animation.setDirection(Direction.BACKWARDS);
            } else {
                notification.yAnimation.setDirection(Direction.FORWARDS);
                notification.animation.setDirection(Direction.FORWARDS);
            }
            notification.alpha = (float) notification.animation.getOutput();
            if (System.currentTimeMillis() - notification.getTime() > notification.time2 * 1000L) {
                notification.yAnimation.setDirection(Direction.BACKWARDS);
            }
            if (notification.yAnimation.finished(Direction.BACKWARDS)) {
                notifications.remove(notification);
                continue;
            }
            float x = mc.getMainWindow().scaledWidth() - (Fonts.gilroyBold[14].getWidth(notification.getText()) + 8) - 10;
            float y = mc.getMainWindow().scaledHeight() - 30 -  (mc.player.getActivePotionEffects().stream().sorted(Comparator.comparing(EffectInstance::getDuration)).toList().size() * 16);
            notification.yAnimation.setEndPoint(yOffset);
            notification.yAnimation.setDuration(300);
            y -= (float) (notification.draw(stack) * notification.yAnimation.getOutput());
            notification.setX(x);
            notification.setY(AnimationMath.fast(notification.getY(), y, 15));
            yOffset++;
        }
    }


    private class Notification {
        @Getter
        @Setter
        private float x, y = mc.getMainWindow().scaledHeight() + 24;

        @Getter
        private String text;
        @Getter
        private String content;

        @Getter
        private long time = System.currentTimeMillis();

        public Animation animation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        public Animation yAnimation = new DecelerateAnimation(500, 1, Direction.FORWARDS);
        float alpha;
        int time2 = 3;

        public Notification(String text, String content, int time) {
            this.text = text;
            this.content = content;
            time2 = time;
        }

        public float draw(MatrixStack stack) {
            float width = Fonts.gilroyBold[14].getWidth(text) + 8;

            int firstColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int secondColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));
            int thirdColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(0), (int) (255 * alpha));
            int fourthColor = RenderUtil.reAlphaInt(Managment.STYLE_MANAGER.getCurrentStyle().getColor(100), (int) (255 * alpha));

            if (Managment.FUNCTION_MANAGER.hud2.shadow.get())
                RenderUtil.Render2D.drawShadow(x - 30, y, width + 30, 20, 10, getColorStyle(40));
            RenderUtil.Render2D.drawRoundedRect(x - 30, y, width + 30, 20, 3, ColorUtil.rgba(0, 0, 0, 255 * alpha));

            Fonts.msMedium[14].drawString(stack, content, x + 4 - 30, y + 5, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            Fonts.msMedium[12].drawString(stack, text, x + 4 - 30, y + 13, RenderUtil.reAlphaInt(-1, (int) (255 * alpha)));
            return 24;
        }
    }
}
Оригинал:Посмотреть вложение 264128
Моё: Посмотреть вложение 264129
Только не бейте палками пж
в твоём глоу зашкаливает....
 
эксперт в майнкрафт апи
Read Only
Статус
Оффлайн
Регистрация
25 Янв 2023
Сообщения
676
Реакции[?]
284
Поинты[?]
22K
Сверху Снизу