Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Better notifications [rich-client ready]

  • Автор темы Автор темы off4zk
  • Дата начала Дата начала
1
Пользователь
Пользователь
Статус
Оффлайн
Регистрация
22 Авг 2021
Сообщения
548
Реакции
54
NotificationRender.java:
Expand Collapse Copy
package dev.etc.client.ui.notification;

import dev.etc.client.Baks;
import dev.etc.client.feature.impl.hud.Notifications;
import dev.etc.client.ui.clickgui.ClickGuiScreen;
import dev.etc.client.ui.clickgui.ClickGuiScreen;
import dev.etc.client.utils.Helper;
import dev.etc.client.utils.render.RenderUtils;
import dev.etc.client.utils.render.RoundedUtil;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.RenderHelper;
import net.minecraft.util.math.MathHelper;

import java.awt.*;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

public final class NotificationRenderer
        implements Helper {
    private static final List<Notification> NOTIFICATIONS;

    public static void queue(String title, String content, int second, NotificationMode type) {
        NOTIFICATIONS.add(new Notification(title, content, type, second * 1000, Minecraft.getMinecraft().neverlose500_18));
    }

    public static  void publish(ScaledResolution sr) {
        if (Baks.instance.featureManager.getFeature(Notifications.class).isEnabled() && Notifications.notifMode.currentMode.equalsIgnoreCase("Rect") && !NotificationRenderer.mc.gameSettings.showDebugInfo && NotificationRenderer.mc.world != null && !(NotificationRenderer.mc.currentScreen instanceof ClickGuiScreen) && !NOTIFICATIONS.isEmpty()) {
            int y = sr.getScaledHeight() - 40;
            for (Notification notification : NOTIFICATIONS) {
                double better = Minecraft.getMinecraft().neverlose500_18.getStringWidth(notification.getTitle() + " " + notification.getContent());
                notification.notificationTimeBarWidth = !notification.getTimer().hasReached(notification.getTime() / 2) ? 360.0 : (double)MathHelper.EaseOutBack((float)notification.notificationTimeBarWidth, 0.0f, (float)(4.0 * Baks.deltaTime()));
                if (!notification.getTimer().hasReached(notification.getTime())) {
                    notification.x = MathHelper.EaseOutBack((float)notification.x, (float)((double)notification.sr.getScaledWidth() - better), (float)(5.0 * Baks.deltaTime()));
                    notification.y = MathHelper.EaseOutBack((float)notification.y, y, (float)(5.0 * Baks.deltaTime()));
                } else {
                    notification.x = MathHelper.EaseOutBack((float)notification.x, notification.sr.getScaledWidth() + 40, (float)(5.0 * Baks.deltaTime()));
                    notification.y = MathHelper.EaseOutBack((float)notification.y, y, (float)(5.0 * Baks.deltaTime()));
                    if (notification.x > (double)(notification.sr.getScaledWidth() + 24) && NotificationRenderer.mc.player != null && NotificationRenderer.mc.world != null && !NotificationRenderer.mc.gameSettings.showDebugInfo) {
                        NOTIFICATIONS.remove(notification);
                    }
                }
                GlStateManager.pushMatrix();
                GlStateManager.disableBlend();
                RenderUtils.drawrect(notification.x - 28.0, notification.y - 13.0, notification.sr.getScaledWidth(), notification.y + 12.0, new Color(20, 20, 20, 107).getRGB());

                Minecraft.getMinecraft().notification.drawString(notification.getType().getIconString(), (float)(notification.x - 20.0), (float)(notification.y - 8.0), -1);
                Minecraft.getMinecraft().neverlose900_16.drawString(notification.getContent(), (float)(notification.x + 10.0), (float)(notification.y - 2.0), -1);
                GlStateManager.popMatrix();
                y -= 30;
            }
        }
    }

    static  {
        NOTIFICATIONS = new CopyOnWriteArrayList<Notification>();
    }
}
выглядит лучше чем деф
 
серое дерьмище
 
а дай сс я хочу посмотреть хавахвах

не хочу свои портить
435o18lc.png

Вот SS
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
кто сказал что я не кодер?)
любой адекватный человек скажет что ты допустил 4 ошибки в слове клоун
если хочешь можем конечно в дс сходить, но тогда тебе придется его оставить тут
 
Дай класс Baks
 
кто сказал что я не кодер?)
вот эта тема https://yougame.biz/threads/272792
и вот эта тоже https://yougame.biz/threads/273571/

просто забудь что ты что то знаешь, ибо ты блять хттп дебаггер юзаешь и представляешь себя дохуя каким реверсером :roflanEbalo:
зайдешь в x64dbg ваще нихуя не поймешь что такое эти ваши титанхайды хайперхайды скиллы
и эти обе догадки в твоих темах - вовсе неверные
 
Последнее редактирование:
Назад
Сверху Снизу