From 9694193ab0e6373eb9d2e398c0d673d4bfb15f60 Mon Sep 17 00:00:00 2001 From: JonnyBro Date: Sun, 12 Dec 2021 20:40:14 +0500 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=BE=D0=B2=D1=8B=D0=B5=20=D0=BA=D0=BE?= =?UTF-8?q?=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20clips=20=D0=B8=20clips?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 5 ++- commands/Administration/backup.js | 2 +- commands/Economy/profile.js | 7 +-- commands/General/ping.js | 3 +- commands/Music/clip.js | 47 +++++++++++++++++++++ commands/Music/clips.js | 42 ++++++++++++++++++ languages/ru-RU/administration/backup.json | 6 +-- languages/ru-RU/administration/goodbye.json | 6 +-- languages/ru-RU/administration/welcome.json | 4 +- languages/ru-RU/economy/birthdate.json | 2 +- languages/ru-RU/economy/profile.json | 4 +- languages/ru-RU/fun/8ball.json | 2 +- languages/ru-RU/fun/ascii.json | 2 +- languages/ru-RU/fun/choice.json | 2 +- languages/ru-RU/fun/flip.json | 2 +- languages/ru-RU/images/bed.json | 2 +- languages/ru-RU/images/love.json | 2 +- languages/ru-RU/images/tweet.json | 2 +- languages/ru-RU/moderation/giveaway.json | 2 +- languages/ru-RU/moderation/kick.json | 2 +- languages/ru-RU/music/back.json | 2 +- languages/ru-RU/music/clip.json | 8 ++++ languages/ru-RU/music/clips.json | 6 +++ languages/ru-RU/music/lyrics.json | 4 +- languages/ru-RU/music/play.json | 2 +- 25 files changed, 137 insertions(+), 31 deletions(-) create mode 100644 commands/Music/clip.js create mode 100644 commands/Music/clips.js create mode 100644 languages/ru-RU/music/clip.json create mode 100644 languages/ru-RU/music/clips.json diff --git a/.gitignore b/.gitignore index 9e2edfa1..1c8d0cdb 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,7 @@ report*.json .vscode # commands.md -**/commands.md \ No newline at end of file +**/commands.md + +# Clips +clips \ No newline at end of file diff --git a/commands/Administration/backup.js b/commands/Administration/backup.js index 47c7fcc4..b1a7a916 100644 --- a/commands/Administration/backup.js +++ b/commands/Administration/backup.js @@ -74,7 +74,7 @@ class Backup extends Command { backup.fetch(backupID).then(async (backupInfos) => { const embed = new Discord.MessageEmbed() - .setAuthor(message.translate("administration/backup:TITLE_INFOS")) + .setAuthor(message.translate("administration/backup:TITLE_INFO")) // Display the backup ID .addField(message.translate("administration/backup:TITLE_ID"), backupInfos.id, true) // Displays the server from which this backup comes diff --git a/commands/Economy/profile.js b/commands/Economy/profile.js index fe9379db..82ce71ba 100644 --- a/commands/Economy/profile.js +++ b/commands/Economy/profile.js @@ -26,7 +26,8 @@ class Profile extends Command { async run (message, args, data) { const client = this.client; - let member = await client.resolveMember(args[0], message.guild); + const arg = args[0] || message.author + let member = await client.resolveMember(arg, message.guild); if (!member) member = message.member; // Check if the user is a bot @@ -43,8 +44,8 @@ class Profile extends Command { let globalMoney = 0; await asyncForEach(commonsGuilds.array(), async (guild) => { const memberData = await client.findOrCreateMember({ id: member.id, guildID: guild.id }); - globalMoney+=memberData.money; - globalMoney+=memberData.bankSold; + globalMoney += memberData.money; + globalMoney += memberData.bankSold; }); const profileEmbed = new Discord.MessageEmbed() diff --git a/commands/General/ping.js b/commands/General/ping.js index c9a24195..80ac3b1e 100644 --- a/commands/General/ping.js +++ b/commands/General/ping.js @@ -17,8 +17,7 @@ class Ping extends Command { } async run (message) { - message.sendT("general/ping:CONTENT", { ping: "..." - }).then((m) => { + message.sendT("general/ping:CONTENT", { ping: "..." }).then((m) => { m.sendT("general/ping:CONTENT", { ping: m.createdTimestamp - message.createdTimestamp }, { edit: true }); }); } diff --git a/commands/Music/clip.js b/commands/Music/clip.js new file mode 100644 index 00000000..b0b23c6b --- /dev/null +++ b/commands/Music/clip.js @@ -0,0 +1,47 @@ +const Command = require("../../base/Command.js"), + fs = require("fs"); + +class Clip extends Command { + constructor (client) { + super(client, { + name: "clip", + dirname: __dirname, + enabled: true, + guildOnly: true, + aliases: [], + memberPermissions: [], + botPermissions: [ "SEND_MESSAGES", "EMBED_LINKS" ], + nsfw: false, + ownerOnly: false, + cooldown: 5000 + }); + } + + async run (message, args) { + const voice = message.member.voice.channel; + + if (!args[0]) return message.error("music/clip:NO_ARG"); + if (!fs.existsSync(`./clips/${args[0]}.mp3`)) return message.error("music/clip:NO_FILE", { file: args[0] }); + if (!voice) return message.error("music/play:NO_VOICE_CHANNEL"); + if (this.client.player.isPlaying()) return message.error("music/clip:ACTIVE_QUEUE"); + + try { + const connection = await voice.join(); + await connection.voice.setSelfDeaf(true); + + connection + .play(`./clips/${args[0]}.mp3`) + .on("finish", () => { + voice.leave(); + }) + .on("error", err => { + voice.leave(); + console.error(err); + }); + } catch (error) { + console.error(error); + }; + } +}; + +module.exports = Clip; \ No newline at end of file diff --git a/commands/Music/clips.js b/commands/Music/clips.js new file mode 100644 index 00000000..1f4ab7f2 --- /dev/null +++ b/commands/Music/clips.js @@ -0,0 +1,42 @@ +const Command = require("../../base/Command.js"), + Discord = require("discord.js"), + fs = require("fs"); + +class Clips extends Command { + constructor (client) { + super(client, { + name: "clips", + dirname: __dirname, + enabled: true, + guildOnly: true, + aliases: [], + memberPermissions: [], + botPermissions: [ "SEND_MESSAGES", "EMBED_LINKS" ], + nsfw: false, + ownerOnly: false, + cooldown: 5000 + }); + } + + async run (message, args, data) { + fs.readdir("./clips", function(err, files) { + if (err) return console.log("Unable to read directory: " + err); + + let clips = []; + + files.forEach(function(file) { + clips.push(file.substring(0, file.length - 4)); + }); + + const embed = new Discord.MessageEmbed() + .setTitle("**Список клипов:**") + .setDescription(clips.join("\n")) + .setColor(data.config.embed.color) + .setFooter(data.config.embed.footer) + .setTimestamp() + message.channel.send(embed); + }); + } +}; + +module.exports = Clips; \ No newline at end of file diff --git a/languages/ru-RU/administration/backup.json b/languages/ru-RU/administration/backup.json index 291826ff..5b462f80 100644 --- a/languages/ru-RU/administration/backup.json +++ b/languages/ru-RU/administration/backup.json @@ -1,7 +1,7 @@ { "DESCRIPTION": "Управление резервными копиями сервера!", - "USAGE": "{{prefix}}backup [create/load/infos]", - "EXAMPLES": "{{prefix}}backup create\n{{prefix}}backup load 123456789098765432\n{{prefix}}backup infos 123456789098765432", + "USAGE": "{{prefix}}backup [create/load/info]", + "EXAMPLES": "{{prefix}}backup create\n{{prefix}}backup load 123456789098765432\n{{prefix}}backup info 123456789098765432", "MISSING_STATUS": "Выберите действие: `create`, `load` или `info`!", "MISSING_BACKUP_ID": "Пожалуйста, укажите ID резервной копии!", "NO_BACKUP_FOUND": "Резервных копий для `{{backupID}} не найдено`", @@ -11,7 +11,7 @@ "CONFIRMATION": ":warning: | **Загрузка резервной копии заменит настройки текущего сервера.**\n\n:arrow_right_hook: *Отправьте `confirm` для подтверждения!*", "START_LOADING": "Загрузка резервной копии начата, пожалуйста подождите!", "LOAD_SUCCESS": "Резервная копия загружена!", - "TITLE_INFOS": "Информация о резервной копии", + "TITLE_INFO": "Информация о резервной копии", "TITLE_ID": "ID", "TITLE_SERVER_ID": "ID сервера", "TITLE_SIZE": "Размер", diff --git a/languages/ru-RU/administration/goodbye.json b/languages/ru-RU/administration/goodbye.json index de39975b..827bf3b2 100644 --- a/languages/ru-RU/administration/goodbye.json +++ b/languages/ru-RU/administration/goodbye.json @@ -1,7 +1,7 @@ { "DESCRIPTION": "Включить или отключить прощальные сообщения!", - "USAGE": "{{prefix}}goodbye", - "EXAMPLES": "{{prefix}}goodbye", + "USAGE": "{{prefix}}goodbye (test)", + "EXAMPLES": "{{prefix}}goodbye\n{{prefix}}goodbye test", "DEFAULT_MESSAGE": "Пока, {user}! Нас теперь {membercount} без тебя :'(", "TEST_SUCCESS": "Тест выполнен!", "FORM_1": "**В какой канал будут отправляться прощальные сообщения?**\n\n:arrow_right_hook: *Отправьте упоминание канала!*", @@ -11,6 +11,6 @@ "MAX_CHARACT": "Ваше сообщение не должно быть больше 1800 символов!", "DISABLED": "**Прощальные сообщения отключены!**\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*", "IMG_GOODBYE": "Вышел с сервера {{server}}!", - "IMG_NB": "- {{memberCount}}ый участник!", + "IMG_NB": "{{memberCount}}ый участник!", "TITLE": "Прощание" } \ No newline at end of file diff --git a/languages/ru-RU/administration/welcome.json b/languages/ru-RU/administration/welcome.json index 429de660..978803a7 100644 --- a/languages/ru-RU/administration/welcome.json +++ b/languages/ru-RU/administration/welcome.json @@ -1,7 +1,7 @@ { "DESCRIPTION": "Включить или отключить приветственные сообщения!", - "USAGE": "{{prefix}}welcome", - "EXAMPLES": "{{prefix}}welcome", + "USAGE": "{{prefix}}welcome (test)", + "EXAMPLES": "{{prefix}}welcome\n{{prefix}}welcome test", "MISSING_STATUS": "Выберите действие: `edit` или `off`", "DEFAULT_MESSAGE": "Добро пожаловать на сервер {server}, {user}, теперь нас {membercount}! Ваш аккаунт был создан {createdat}.", "TEST_SUCCESS": "Тест выполнен!", diff --git a/languages/ru-RU/economy/birthdate.json b/languages/ru-RU/economy/birthdate.json index 70f6b38c..ac492139 100644 --- a/languages/ru-RU/economy/birthdate.json +++ b/languages/ru-RU/economy/birthdate.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Установить день рождения", - "USAGE": "{{prefix}}birthdate (дата)", + "USAGE": "{{prefix}}birthdate [дата]", "EXAMPLES": "{{prefix}}birthdate 01/01/2010", "MISSING_DATE": "Пожалуйста, укажите правильную дату! Например, 20/11/2003", "INVALID_DATE": "Используйте данный фортам: ДД/ММ/ГГГГ. Например, `1 января 2010` будет `01/01/2010`.", diff --git a/languages/ru-RU/economy/profile.json b/languages/ru-RU/economy/profile.json index 8647062f..161d428d 100644 --- a/languages/ru-RU/economy/profile.json +++ b/languages/ru-RU/economy/profile.json @@ -1,13 +1,13 @@ { "DESCRIPTION": "Показать ваш или чужой профиль", - "USAGE": "{{prefix}}profile [@пользователь]", + "USAGE": "{{prefix}}profile (@пользователь)", "EXAMPLES": "{{prefix}}profile @Jonny_Bro#4226\n{{prefix}}profile", "TITLE": "Профиль {{username}}", "NO_BIO": "", "BOT_USER": "У ботов нет профилей!", "CASH": "💵 Кредиты", "BANK": "💳 Банк", - "GLOBAL": "🌍 Всего денег", + "GLOBAL": "🌍 Всего денег на всех серверах", "MONEY": "**{{money}}** кредит(а/ов)", "REPUTATION": "🎩 Репутация", "REP_POINTS": "**{{points}}** очко(а/ов)", diff --git a/languages/ru-RU/fun/8ball.json b/languages/ru-RU/fun/8ball.json index 5936210c..de03a5a2 100644 --- a/languages/ru-RU/fun/8ball.json +++ b/languages/ru-RU/fun/8ball.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Я говорю правду!", - "USAGE": "{{prefix}}8ball [вопрос]", + "USAGE": "{{prefix}}8ball [вопрос?]", "EXAMPLES": "{{prefix}}8ball JaBa крутой?", "ERR_QUESTION": "Введите вопрос!", "RESPONSE_1": "я уверен в этом.", diff --git a/languages/ru-RU/fun/ascii.json b/languages/ru-RU/fun/ascii.json index 2b47f402..d08d853e 100644 --- a/languages/ru-RU/fun/ascii.json +++ b/languages/ru-RU/fun/ascii.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Превратить текст в ASCII!", - "USAGE": "{{prefix}}ascii [текс]", + "USAGE": "{{prefix}}ascii [текст]", "EXAMPLES": "{{prefix}}ascii Hello world!", "TEXT_MISSING": "Введите текст (не больше 20 символов)!" } \ No newline at end of file diff --git a/languages/ru-RU/fun/choice.json b/languages/ru-RU/fun/choice.json index 0c2ffd0f..a853faf0 100644 --- a/languages/ru-RU/fun/choice.json +++ b/languages/ru-RU/fun/choice.json @@ -5,5 +5,5 @@ "MISSING": "Укажите больше двух вариантов!\n(либо используйте команду `flip`)", "EMPTY": "Кажется один из вариантов пустой.... Попробуйте ещё раз!", "PROGRESS": "Выбираю...", - "DONE": "Вот мой выбор:" + "DONE": "Мой выбор:" } \ No newline at end of file diff --git a/languages/ru-RU/fun/flip.json b/languages/ru-RU/fun/flip.json index b32b48d4..5013330a 100644 --- a/languages/ru-RU/fun/flip.json +++ b/languages/ru-RU/fun/flip.json @@ -1,5 +1,5 @@ { - "DESCRIPTION": "Кинуть монетку!", + "DESCRIPTION": "Подкинуть монетку!", "USAGE": "{{prefix}}flip", "EXAMPLES": "{{prefix}}flip", "HEADS": ":coin: | Орёл!", diff --git a/languages/ru-RU/images/bed.json b/languages/ru-RU/images/bed.json index 85df0375..4259e052 100644 --- a/languages/ru-RU/images/bed.json +++ b/languages/ru-RU/images/bed.json @@ -1,5 +1,5 @@ { "DESCRIPTION": "Создать изображение \"bed\"", - "USAGE": "{{prefix}}bed [@пользователь1] (@пользователь2)", + "USAGE": "{{prefix}}bed (@пользователь1) (@пользователь2)", "EXAMPLES": "{{prefix}}bed @Jonny_Bro#4226\n{{prefix}}bed @Jonny_Bro#4226 @Dkflbvbh k.hyfqc#9402" } \ No newline at end of file diff --git a/languages/ru-RU/images/love.json b/languages/ru-RU/images/love.json index 6c924f44..310dbaba 100644 --- a/languages/ru-RU/images/love.json +++ b/languages/ru-RU/images/love.json @@ -1,5 +1,5 @@ { "DESCRIPTION": "Создать изображение \"love\"", - "USAGE": "{{prefix}}love [@пользователь1] (@пользователь2)", + "USAGE": "{{prefix}}love (@пользователь1) (@пользователь2)", "EXAMPLES": "{{prefix}}love @Jonny_Bro#4226\n{{prefix}}love @Jonny_Bro#4226 @JaBa#9042" } \ No newline at end of file diff --git a/languages/ru-RU/images/tweet.json b/languages/ru-RU/images/tweet.json index 07cfa8da..a02abc3f 100644 --- a/languages/ru-RU/images/tweet.json +++ b/languages/ru-RU/images/tweet.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Создать изображение \"tweet\"", - "USAGE": "{{prefix}}tweet [@пользователь_twitter] [текст]", + "USAGE": "{{prefix}}tweet [@пользователь] [текст]", "EXAMPLES": "{{prefix}}tweet @Jonny_Bro#4226 Люблю спать", "MISSING_USERNAME": "Вы должны упомянуть пользователя!", "MISSING_TEXT": "Укажите текст!", diff --git a/languages/ru-RU/moderation/giveaway.json b/languages/ru-RU/moderation/giveaway.json index 0157badb..af458502 100644 --- a/languages/ru-RU/moderation/giveaway.json +++ b/languages/ru-RU/moderation/giveaway.json @@ -1,7 +1,7 @@ { "DESCRIPTION": "Управление раздачами!", "USAGE": "{{prefix}}giveaway [create/reroll/delete/end] (время) (кол-во победителей) (приз)", - "EXAMPLES": "{{prefix}}giveaway create 10m 2 100 рублей на QIWI!\n{{prefix}}giveaway reroll 597812898022031374", + "EXAMPLES": "{{prefix}}giveaway create 10m 2 100 рублей на карту!\n{{prefix}}giveaway reroll 597812898022031374", "MISSING_STATUS": "Выберите действие: `create`, `reroll`, `end` или `delete`!", "INVALID_CREATE": "Укажите параметры так: \n\n`{{prefix}}giveaway create [время] [кол-во победителей] [приз]`", "MISSING_ID": "Укажите ID сообщения раздачи!", diff --git a/languages/ru-RU/moderation/kick.json b/languages/ru-RU/moderation/kick.json index 4a722f79..8f6a069f 100644 --- a/languages/ru-RU/moderation/kick.json +++ b/languages/ru-RU/moderation/kick.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Кикнуть пользователя!", - "USAGE": "{{prefix}}kick [@пользователь] (Причина)", + "USAGE": "{{prefix}}kick [@пользователь] (причина)", "EXAMPLES": "{{prefix}}kick @Jonny_Bro#4226 Спам", "MISSING_MEMBER": "Вы должны упомянуть пользователя!", "MISSING_PERM": "Произошла ошибка... Проверьте, есть ли у вас право кикать пользователей и попробуйте снова!", diff --git a/languages/ru-RU/music/back.json b/languages/ru-RU/music/back.json index e4e6b8e6..59df716b 100644 --- a/languages/ru-RU/music/back.json +++ b/languages/ru-RU/music/back.json @@ -4,5 +4,5 @@ "EXAMPLES": "{{prefix}}back", "NO_PREV_SONG": "Предыдущий трек отсутствует!", "VOTE_CONTENT": "Предыдущий трек: {{songName}}\nОтреагируйте 👍, чтобы проголосовать за воспроизведение! Необходимо ещё {{requiredCount}} голосов.", - "SUCCESS": "Изгает предыдущий трек!" + "SUCCESS": "Играет предыдущий трек!" } \ No newline at end of file diff --git a/languages/ru-RU/music/clip.json b/languages/ru-RU/music/clip.json new file mode 100644 index 00000000..81c1946f --- /dev/null +++ b/languages/ru-RU/music/clip.json @@ -0,0 +1,8 @@ +{ + "DESCRIPTION": "Воспроизвести клип", + "USAGE": "{{prefix}}clip [название-файла]", + "EXAMPLES": "{{prefix}}clip haha", + "NO_ARG": "Укажите название файла", + "NO_FILE": "Файл {{file}} отсутствует!", + "ACTIVE_QUEUE": "Не могу воспроизвести клип, т.к. на сервере есть активная очередь" +} \ No newline at end of file diff --git a/languages/ru-RU/music/clips.json b/languages/ru-RU/music/clips.json new file mode 100644 index 00000000..55b804cf --- /dev/null +++ b/languages/ru-RU/music/clips.json @@ -0,0 +1,6 @@ +{ + "DESCRIPTION": "Показать список доступных звуков", + "USAGE": "{{prefix}}clips", + "EXAMPLES": "{{prefix}}clips", + "EMBED_TITLE": "**Список клипов**" +} \ No newline at end of file diff --git a/languages/ru-RU/music/lyrics.json b/languages/ru-RU/music/lyrics.json index 01c364f2..ab554689 100644 --- a/languages/ru-RU/music/lyrics.json +++ b/languages/ru-RU/music/lyrics.json @@ -1,10 +1,10 @@ { "DESCRIPTION": "Показать слова к песне", - "USAGE": "{{prefix}}lyrics [название-песни]", + "USAGE": "{{prefix}}lyrics [название-трека]", "EXAMPLES": "{{prefix}}lyrics Skyfall", "LYRICS_OF": "🎤 Текст {{songName}}", "AND_MORE": "\n**и т.д...**", "REST": "Больше", - "MISSING_SONG_NAME": "Укажите название песни!", + "MISSING_SONG_NAME": "Укажите название трека!", "NO_LYRICS_FOUND": "Текста для `{{songName}}` не найдено!" } \ No newline at end of file diff --git a/languages/ru-RU/music/play.json b/languages/ru-RU/music/play.json index c0784a75..1e23de6e 100644 --- a/languages/ru-RU/music/play.json +++ b/languages/ru-RU/music/play.json @@ -1,6 +1,6 @@ { "DESCRIPTION": "Начать воспроизведение трека!", - "USAGE": "{{prefix}}play [трек/ссылка]", + "USAGE": "{{prefix}}play [название-трека/ссылка]", "EXAMPLES": "{{prefix}}play Never Gonna Give You Up", "NO_VOICE_CHANNEL": "Вы должны находиться в голосовом канале!", "VOICE_CHANNEL_CONNECT": "Я не могу присоедениться к вашему голосовому каналу!",