M I S T E V (16 мая 2025 - 17:49) писал:
Нажмите сюда, чтобы прочитать это сообщение. [Показать]
Не совсем понимаю, как реализовать подобное, чтобы выводить только последнее сообщение с количеством повтора, ведь перехватив функцию, я не знаю сколько ещё будет повторений

Или тут нужно использовать таймер на несколько мс, и если вызывается снова функция и текст одинаковый - убиваем таймер и прибавляем к счётчику?
В той реализации есть две задержки:
первая - это минимальный интервал между двумя одинаковыми сообщениями, попав в который второе сообщение уже считается началом флуда.
Как только включается флаг того, что конкретно этим сообщением начался флуд, то вместо его отправки (начиная со 2 раза, которое только что попало под минимальный интервал между вызовами) будет идти прибавление счетчика дапов и обновляться/продлеваться
вторая задержка, по истечению которой будет выведено конечное сообщение + счетчик всех этих дапов.
Выводить конечное сообщение после окончания флуда можно было бы в каком-нибудь едином глобальном таймере, который бы просто отрыгивал всё то, что уже позволяет истёкшая вторая задержка для конкретного сообщения.
Сообщение отредактировал Nexius: 16 мая 2025 - 18:28