Описание
Этот модуль обеспечивает автоматизированное и гибкое управление победителями событий, облегчая отслеживание событий на сервере, при этом оставляя серверу свободу использовать эту роль по своему усмотрению. Благодаря этой роли вы сможете использовать ее для присвоения специальных разрешений, предоставления эксклюзивных преимуществ или просто для признания активных членов вашего сообщества.
После указания названия, описания, изображения (необязательно) и имени автора сообщения (необязательно):
Вы получите персонализированное сообщение с анимацией, которое будет автоматически отправлено в канал, указанный в файле .env, как показано ниже:
Вы можете просматривать список и добавлять победителей событий с помощью слэш-команды /animation-add. При добавлении количества дней оно суммируется с оставшимися днями участника, если он уже был победителем предыдущего события:
Каждый день в 23:59 модуль проверяет, следует ли снять роль победителя события у участника.
- Модуль не будет работать только при скачивании файлов; он должен быть интегрирован в уже работающего Discord‑бота.
- Для управления базой данных мы используем Prisma в качестве ORM; убедитесь, что ваш проект также использует Prisma или адаптируйте код под вашу систему.
⚠️ Требования
Раздел с заголовком «⚠️ Требования»- Рабочий Discord‑бот с правами, необходимыми для регистрации слэш‑команд.
- Необходимы знания по разработке Discord‑ботов (JavaScript) и управлению базами данных для использования и адаптации этого скрипта под ваши нужды.
Файлы/папки
Раздел с заголовком «Файлы/папки»Каталогcommands
- animation-add.js реализация слэш‑команды
/animation-add - animation-list.js реализация слэш‑команды
/animation-list - animation-remove.js реализация слэш‑команды
/animation-remove
аргумент “id_user” обязателен: ID пользователя, которого нужно удалить из списка победителей - animation-message.js реализация слэш‑команды
/animation-message
аргумент “id_role” необязательный: при передаче сообщение отметит этот рол
аргумент “id_message” необязательный: при передаче сообщение будет изменено вместо создания нового
- animation-add.js реализация слэш‑команды
Каталогevents
- interactionCreate.js Файл восстановления взаимодействий
Каталогprisma
- schema.prisma модель данных для модуля (Prisma)
Каталогutils
Каталогarguments
- post-message.js список аргументов для команды отправки сообщения с анимацией
- animation.js вспомогательные функции для управления победителями
- .env необходимые переменные окружения
- index.js точка входа скрипта
- package.json зависимости
Зависимости и версии
Раздел с заголовком «Зависимости и версии»Ниже указаны версии, использованные при разработке и тестировании скрипта:
- @prisma/client@6.18.0
- discord.js@14.24.0
- dotenv@16.6.1
- node-schedule@2.1.1
- moment@2.30.1