DISNAKE | Как сделать задержку в командах?

Рейтинг: 0Ответов: 1Опубликовано: 28.02.2023

Речь идёт не о time.sleep(). Допустим есть команда "ban", как сделать задержку так, чтобы её можно было использовать допустим раз в 30секунд?

Ответы

▲ 1Принят

Используйте @commands.cooldown. Предположим Вам нужно сделать команду которую можно будет использовать раз в 30 секунд 1 раз:

@commands.cooldown(1, 30, commands.BucketType.user)

1 — кол-во использований команды для установленного промежутка времени.

30 — время спустя которое команда будет доступна (в секундах).

commands.BucketType.user — cooldown для конкретного пользователя

Для установки cooldown'а для всего сервера, используйте BucketType.guild.