├── .env ├── .github ├── FUNDING.yml └── ISSUE_TEMPLATE │ ├── --------------.md │ └── -----------.md ├── .gitignore ├── LICENSE ├── README.md ├── blacklist.json ├── bot.js ├── botconfig.json ├── cmds ├── 8ball.js ├── add.js ├── anal.js ├── asino.js ├── autorole.js ├── avatar.js ├── balance.js ├── ban.js ├── blockinvites.js ├── bonus.js ├── boobs.js ├── boosty.js ├── botstats.js ├── bs.js ├── bug.js ├── casino.js ├── cat.js ├── cinvite.js ├── clan.js ├── classic.js ├── cmdchannel.js ├── coin.js ├── createstats.js ├── dog.js ├── embed.js ├── fox.js ├── gadd.js ├── github.js ├── groll.js ├── gset.js ├── guild.js ├── help.js ├── hentai.js ├── invite.js ├── joinleave.js ├── joke.js ├── kick.js ├── kiss.js ├── kuni.js ├── lang.js ├── like.js ├── lock.js ├── lroll.js ├── marks.js ├── marry.js ├── ms.js ├── neko.js ├── news.js ├── ot.js ├── pay.js ├── pin.js ├── ping.js ├── play.js ├── profile.js ├── pussy.js ├── queue.js ├── rep.js ├── report.js ├── resetchat.js ├── roll.js ├── roomcreator.js ├── search.js ├── serverinfo.js ├── set.js ├── setlvl.js ├── setwork.js ├── sh.js ├── shell.js ├── ship.js ├── shop.js ├── skip.js ├── slap.js ├── sserverinfo.js ├── status.js ├── stop.js ├── textflip.js ├── tpp.js ├── translate.js ├── trap.js ├── unpin.js ├── unwarn.js ├── userinfo.js ├── voicekick.js ├── voiceonline.js ├── volume.js ├── vote.js ├── warn.js ├── warns.js ├── welcomemessage.js ├── work.js └── yuri.js ├── events └── ready.js ├── lang_en.json ├── lang_ru.json └── package.json /.env: -------------------------------------------------------------------------------- 1 | TOKEN= 2 | guildId= 3 | DBL_TOKEN= 4 | voteLogChannelID= 5 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | custom: ['https://boosty.to/dreambotdonate'] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 3 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/--------------.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Помощь с ботом 3 | about: 'Лицензия не гарантирует работу способность бота, здесь будут отвечать только 4 | добровольцы ' 5 | title: '' 6 | labels: help wanted 7 | assignees: '' 8 | 9 | --- 10 | 11 | 12 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/-----------.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Репорт бага 3 | about: В данной теме вы сможете написать об баге и вам помогут решить его 4 | title: "[BUG]" 5 | labels: баг 6 | assignees: '' 7 | 8 | --- 9 | 10 | 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | json.sqlite 2 | .evn 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Внимание 2 | DreamBot v2 больше не поддерживается разработчиком **[MrLivixx](https://github.com/MrLivixx)**. Данная версия бота настолько устарела, что началась разработка третей версии бота. **Все найденые токены в боте не рабочие, не пытайтесь что-то с ними делать**, но никто вам не запрещает отправлять нам Pull Request или Issue. ¯\\\_(ツ)\_/¯ 3 | 4 | # DreamBot 5 | Полный исходный код бота DreamBot 6 | 7 | [![Discord](https://discordapp.com/api/guilds/662635194884292611/widget.png)](https://discord.gg/GG9Dkhg) 8 | 9 | DreamBot 10 | 11 | 12 | DreamBot 13 | 14 | 15 | DreamBot 16 | 17 | 18 | DreamBot 19 | 20 | 21 | DreamBot 22 | 23 | 24 | 25 | 26 | # Библиотеки 27 | * База данных - quick.db 28 | * Библиотека для Discord - discord.js (**v11**) 29 | 30 | # Как запустить бота? 31 | * Для начала, установите все необходимые библиотеки: ``npm i`` 32 |
P.S. Бот использует quick.db (как говорилось выше). Для установки этой библиотеки на ОС Windows нужны вспомогательные библиотеки от Visual Studio. 33 | * Укажите токен и прочее в файле ``.env`` 34 | * Также, откройте файл ``botconfig.json`` и настройте под себя префикс, укажите свой ID. 35 | * В поле ``bonus`` пишите число которое будет выдаваться людям при прописывании комадны ``.bonus`` 36 | * В ``cooldown`` пишите время до следующего бонуса. 37 | * Для запуска бота используйте ``node bot.js`` 38 |
Для запуска через **pm2**: 39 | ```diff 40 | + Добавление и запуск: pm2 start bot.js --name dreambot-v2 41 | + Просто запуск: pm2 start dreambot-v2 42 | + Перезагрузка: pm2 restart/reload dreambot-v2 43 | + Остановка работы: pm2 stop dreambot-v2 44 | + Удаление бота (из pm2): pm2 delete dreambot-v2 45 | + Автозапуск при старте системы: pm2 save && pm2 startup 46 | ``` 47 | P.S. Если вы запускаете команду автозапуска не из root-пользователя, убедитесь что у вас есть права на sudo 48 |
Либо обратитесь к администратору системы для прописания команды, которую вам даст pm2 49 | -------------------------------------------------------------------------------- /blacklist.json: -------------------------------------------------------------------------------- 1 | {"636214191493087263":{"id":"636214191493087263","state":true},"632760222053695528":{"id":"632760222053695528","state":true},"588975466011033602":{"id":"588975466011033602","state":true},"267729391172321290":{"id":"267729391172321290","state":true},"644315663963389972":{"id":"644315663963389972","state":true} -------------------------------------------------------------------------------- /botconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "prefix":".", 3 | "bonus":500, 4 | "cooldown":1440, 5 | "admin":"587697798628114442", 6 | "sdct":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU3MjI4NTk1MDAzNDQ0NDI5OCIsInBlcm1zIjowLCJpYXQiOjE1OTEyNjI5ODd9.u-C3bB-CjZGR9HYdyLjLVyhTHMR1e0IshPSMAdY_Eh0", 7 | "dblt":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU3MjI4NTk1MDAzNDQ0NDI5OCIsImJvdCI6dHJ1ZSwiaWF0IjoxNTg5MDUwMjE4fQ.h9e_aW1aEu4tj-RAS3Lagjda4RP8dJSJcC3cZ3-0gZo" 8 | } -------------------------------------------------------------------------------- /cmds/8ball.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | 3 | module.exports.run = (bot, message, args) => { 4 | if (!args[0]) return message.reply(" а где вопрос?"); 5 | let replies = ["Да", "Нет", "Ну, не знаю", "Сейчас не могу дать точного ответа", "Что за тупые вопросы?"]; 6 | 7 | let result = Math.floor((Math.random() * replies.length)); 8 | let question = args.slice(0).join(" "); 9 | if(!question.includes('?')) return message.reply(' а где вопросительный знак?') 10 | 11 | if(question === "У меня есть смысл жить?") replies[result] = 'Нет, умри нахуй' 12 | if(question === "Где смотреть аниме?") replies[result] = 'Только на youmiteru.ru!' 13 | if(question === "8ball") replies[result] = '???????' 14 | if(question === "Когда будет война?") replies[result] = 'В 2020 году' 15 | if(question === "Из-за чего пиздец?") replies[result] = 'Из-за Зефирки' 16 | 17 | //если желаете, сделайте свои ответы 18 | 19 | let e = new Discord.RichEmbed() 20 | .setAuthor(message.author.tag) 21 | .setColor("#FF9900") 22 | .addField("Вопрос:", question) 23 | .addField("Ответ:", replies[result]); 24 | 25 | message.channel.send(e); 26 | } 27 | module.exports.help = { 28 | name: "8ball", 29 | aliases: ["ванга"] 30 | 31 | } -------------------------------------------------------------------------------- /cmds/add.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | module.exports.run = async (bot, message, args) => { 3 | try { 4 | let bk = require('../botconfig.json'); 5 | let lang = require(`../lang_${bot.lang}.json`); 6 | let evaled = eval('`' + lang.add + '`'); 7 | let rekl = eval('`' + lang.rekl + '`'); 8 | let noUser = lang.noUser; 9 | let noNum = lang.noNum; 10 | let noPerm = lang.noPerm; 11 | let hBal = lang.hBanals; 12 | let errz = lang.err; 13 | let err = errz.split('<>'); 14 | let msgs = evaled.split('<>'); 15 | function isNumeric(n) { 16 | return !isNaN(parseFloat(n)) && isFinite(n); 17 | }; 18 | 19 | let embed = new Discord.RichEmbed() 20 | .setTitle(`**${msgs[0]}**`) 21 | .setFooter(rekl, message.author.avatarURL) 22 | .setColor('#e22216'); 23 | if (!message.member.hasPermission("ADMINISTRATOR")) { embed.setDescription(noPerm); return bot.send(embed); } 24 | 25 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 26 | let res = args.slice(1).join(" "); 27 | 28 | if (!args[0]) { embed.setColor('#d82d08');embed.setDescription(`**${noUser}**\n*${bk.prefix}add @user 500*`); return bot.send(embed); }; 29 | if (!rUser) { embed.setColor('#d82d08');embed.setDescription(noUser); return bot.send(embed); } 30 | if (!res) { embed.setColor('#d82d08');embed.setDescription(`**${noNum}**\n*${bk.prefix}add @user 500*`); return bot.send(embed); }; 31 | if (!isNumeric(res)) { embed.setColor('#d82d08');embed.setDescription(`**${noNum}**\n*${bk.prefix}add @user 500*`); return bot.send(embed); }; 32 | bot.lprofile.add(`coins_${rUser.id}_${message.guild.id}`, Math.floor(parseInt(res))); 33 | let coins = bot.lprofile.fetch(`coins_${rUser.id}_${message.guild.id}`); 34 | if (coins === null) bot.lprofile.set(`coins_${rUser.id}_${message.guild.id}`, 1 + Math.floor(parseInt(res))); 35 | 36 | let bembed = new Discord.RichEmbed() 37 | .setDescription(`**${msgs[0]}**`) 38 | .setColor('#10e250') 39 | .addField(`${msgs[1]} ${rUser.user.tag} ${res} $`, `${hBal} ${coins}`) 40 | .setFooter(rekl, message.author.avatarURL); 41 | 42 | bot.send(bembed); 43 | } catch (err) { 44 | let bk = require('../botconfig.json'); 45 | let a = bot.users.get(bk.admin) 46 | let errEmb = new Discord.RichEmbed() 47 | .setTitle(`${err[0]}`) 48 | .setColor('#ff2400') 49 | .addField(`**${err.name}**`, `**${err.message}**`) 50 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 51 | .setTimestamp(); 52 | bot.send(errEmb); 53 | console.log(err.stack); 54 | } 55 | 56 | }; 57 | module.exports.help = { 58 | name: "add", 59 | aliases: ['добавить'] 60 | }; -------------------------------------------------------------------------------- /cmds/anal.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | 6 | try { 7 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/anal"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'anal', 24 | aliases: ['анал', 'жопа', 'ачко'] 25 | }; -------------------------------------------------------------------------------- /cmds/asino.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.casino + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | let noMoney = lang.noMoney; 24 | let guildid = message.guild.id 25 | let embed = new Discord.RichEmbed() 26 | .setTitle(`**${msgs[0]}**`) 27 | .setColor('#e22216') 28 | if (bot.guild.fetch(`casino_${guildid}`) == false) { embed.setDescription(noPerm); return bot.send(embed); } 29 | 30 | function isNumeric(n) { 31 | return !isNaN(parseFloat(n)) && isFinite(n); 32 | } 33 | let userid = message.author.id 34 | let slot = ['🍒', '🍊', '🍋', '🍉', '🍌', '🍏']; 35 | 36 | let rand1 = Math.floor(Math.random() * (slot.length - 0) + 0); 37 | let rand2 = Math.floor(Math.random() * (slot.length - 0) + 0); 38 | let rand3 = Math.floor(Math.random() * (slot.length - 0) + 0); 39 | 40 | let result = slot[rand1] + slot[rand2] + slot[rand3]; 41 | if (!args[0]) { embed.setDescription(`${msgs[1]}\n**${bk.prefix}casino l 1000**`); return bot.send(embed); } 42 | let bal; 43 | let adal; 44 | let cur; 45 | switch (args[0].toLowerCase()) { 46 | case `l`: 47 | bal = bot.lprofile.fetch(`coins_${userid}_${message.guild.id}`); 48 | adal = `coins_${userid}_${message.guild.id}` 49 | cur = bot.lprofile; 50 | break; 51 | case `g`: 52 | bal = bot.profile.fetch(`coins_${userid}`); 53 | adal = `coins_${userid}` 54 | cur = bot.profile; 55 | break; 56 | case `л`: 57 | bal = bot.lprofile.fetch(`coins_${userid}_${message.guild.id}`); 58 | adal = `coins_${userid}_${message.guild.id}` 59 | cur = bot.lprofile; 60 | break; 61 | case `г`: 62 | bal = bot.profile.fetch(`coins_${userid}`); 63 | adal = `coins_${userid}` 64 | cur = bot.profile; 65 | break; 66 | default: 67 | embed.setDescription(`${msgs[1]}\n**${bk.prefix}casino l 1000**`); 68 | return bot.send(embed); 69 | } 70 | let uCoins = bal 71 | let coef1 = 2; 72 | let coef2 = 3; 73 | console.log(cur.fetch(`${adal}`)); 74 | if (!cur) return; 75 | if (!adal) return; 76 | if (uCoins === null) return; 77 | if (!isNumeric(Math.floor(parseInt(args[1])))) { embed.setDescription(msgs[3]); return bot.send(embed); } 78 | if (!args[1]) { embed.setDescription(msgs[3]); return bot.send(embed); } 79 | if (uCoins < Math.floor(parseInt(args[1]))) { embed.setDescription(`${noMoney} **${bal}**`); return bot.send(embed); } 80 | if (Math.floor(parseInt(args[1])) < 10) { embed.setDescription(`${msgs[2]} 10`); return bot.send(embed); } 81 | const bembed = new Discord.RichEmbed() 82 | .setTitle(`**${msgs[0]}**`) 83 | .setColor(`#6600ff`) 84 | .setFooter(rekl, message.author.avatarURL); 85 | if (rand1 == rand2 || rand2 == rand3) { 86 | bembed.setDescription(`🎰**${msgs[0]}**🎰\n${result}\n🎰**${msgs[0]}**🎰\n ${msgs[4]} ${Math.floor(parseInt(args[1]) * coef1)}`); 87 | bot.send(bembed); 88 | cur.add(`${adal}`, Math.floor(parseInt(args[1]))); 89 | 90 | 91 | } else if (rand1 == rand2 && rand2 == rand3) { 92 | 93 | bembed.setDescription(`🎰**${msgs[0]}**🎰\n${result}\n🎰**${msgs[0]}**🎰\n ${msgs[4]} ${Math.floor(parseInt(args[1]) * coef2)}`); 94 | bot.send(bembed); 95 | cur.add(`${adal}`, Math.floor(parseInt(args[1]) * coef1)) 96 | 97 | } else { 98 | bembed.setDescription(`🎰**${msgs[0]}**🎰\n${result}\n🎰**${msgs[0]}**🎰\n ${msgs[5]} ${Math.floor(parseInt(args[1]))}`); 99 | bot.send(bembed); 100 | cur.subtract(`${adal}`, Math.floor(parseInt(args[1]))) 101 | 102 | 103 | } 104 | } catch (err) { 105 | let bk = require('../botconfig.json'); 106 | let a = bot.users.get(bk.admin) 107 | let errEmb = new Discord.RichEmbed() 108 | .setTitle(`${err[0]}`) 109 | .setColor('#ff2400') 110 | .addField(`**${err.name}**`, `**${err.message}**`) 111 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 112 | .setTimestamp(); 113 | bot.send(errEmb); 114 | console.log(err.stack); 115 | } 116 | }; 117 | module.exports.help = { 118 | name: `casino`, 119 | aliases: [`c`, `cs`, `cas`, 'казино'] 120 | }; -------------------------------------------------------------------------------- /cmds/autorole.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | const Discord = module.require("discord.js"); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | 7 | let bk = require('../botconfig.json'); 8 | let role = message.mentions.roles.first() 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.autorole + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let msgs = evaled.split('<>'); 19 | 20 | let embed = new Discord.RichEmbed() 21 | .setTitle(`**${msgs[0]}**`) 22 | .setColor('#e22216') 23 | 24 | if (!message.member.hasPermission("ADMINISTRATOR")) { embed.setDescription(noPerm); return bot.send(embed); } 25 | 26 | if (!args[0]) { embed.setDescription(`${bk.prefix}autorole @role`); return bot.send(embed); } 27 | let logsname = 'logs' 28 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 29 | if (!logschannel) { 30 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 31 | 32 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 33 | channel.overwritePermissions(message.guild.defaultRole, { 34 | VIEW_CHANNEL: false, 35 | }); 36 | }); 37 | } 38 | if (!role) { embed.setDescription(`${bk.prefix}autorole @role`); return bot.send(embed); } 39 | let guildid = message.guild.id 40 | bot.guild.set(`autorole_${guildid}`, role.id) 41 | let bembed = new Discord.RichEmbed() 42 | .setTitle(`**${msgs[0]}**`) 43 | .setColor('#10e250') 44 | .setDescription(`**${msgs[1]}**`) 45 | .setFooter(rekl, message.author.avatarURL); 46 | logschannel.send(bembed) 47 | bot.send(bembed); 48 | } catch (err) { 49 | let bk = require('../botconfig.json'); 50 | let a = bot.users.get(bk.admin) 51 | let errEmb = new Discord.RichEmbed() 52 | .setTitle(`${err[0]}`) 53 | .setColor('#ff2400') 54 | .addField(`**${err.name}**`, `**${err.message}**`) 55 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 56 | .setTimestamp(); 57 | bot.send(errEmb); 58 | console.log(err.stack); 59 | } 60 | 61 | }; 62 | module.exports.help = { 63 | name: "autorole", 64 | aliases: ["ar", 'автороль'] 65 | }; -------------------------------------------------------------------------------- /cmds/avatar.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js'); 4 | module.exports.run = (bot, message, args) => { 5 | let bk = require('../botconfig.json'); 6 | let lang = require(`../lang_${bot.lang}.json`); 7 | let evaled = eval('`' + lang.avatar + '`'); 8 | let rekl = eval('`' + lang.rekl + '`'); 9 | let noUser = lang.noUser; 10 | let noNum = lang.noNum; 11 | let noPerm = lang.noPerm; 12 | let hBal = lang.hBanals; 13 | let errz = lang.err; 14 | let err = errz.split('<>'); 15 | let msgs = evaled.split('<>'); 16 | let usr = message.mentions.users.first() ? message.mentions.users.first() : message.author; 17 | if (!usr) return bot.send(noUser); 18 | let embed = new Discord.RichEmbed() .setColor('#DB9834') 19 | .setAuthor(`${bot.user.username}`, bot.user.avatarURL) 20 | .setTitle(`${msgs[0]} ${usr.username}!`) 21 | .setImage(usr.avatarURL); 22 | bot.send(embed); 23 | } 24 | module.exports.help = { 25 | name: "avatar", 26 | aliases: ['аватар'] 27 | } 28 | -------------------------------------------------------------------------------- /cmds/balance.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | 3 | module.exports.run = async (bot, message, args) => { 4 | try { 5 | let bk = require('../botconfig.json'); 6 | let lang = require(`../lang_${bot.lang}.json`); 7 | let otherlang = require(`../lang_${bot.lang}.json`); 8 | let olang = otherlang.casino.split('<>'); 9 | let evaled = eval('`' + lang.profile + '`'); 10 | let rekl = eval('`' + lang.rekl + '`'); 11 | let noUser = lang.noUser; 12 | let noNum = lang.noNum; 13 | let noPerm = lang.noPerm; 14 | let hBal = lang.hBanals; 15 | let errz = lang.err; 16 | let err = errz.split('<>'); 17 | let reaso = lang.reason; 18 | let reason = reaso.split('<>') 19 | let msgs = evaled.split('<>'); 20 | let actions = lang.actions.split('<>') 21 | let noMoney = lang.noMoney; 22 | 23 | let us = message.mentions.users.first() || message.author; 24 | let coins = bot.profile.fetch(`coins_${us.id}`); 25 | let lcoins = bot.lprofile.fetch(`coins_${us.id}_${message.guild.id}`); 26 | if (coins === null) await bot.profile.set(`coins_${us.id}`, 0); 27 | if (lcoins === null) await bot.lprofile.set(`coins_${us.id}_${message.guild.id}`, 0); 28 | coins = bot.profile.fetch(`coins_${us.id}`); 29 | lcoins = bot.lprofile.fetch(`coins_${us.id}_${message.guild.id}`); 30 | 31 | 32 | 33 | let embed = new Discord.RichEmbed() 34 | .setTitle(` ${msgs[14]} **${us.tag}**`) 35 | //.setThumbnail('https://discordemoji.com/assets/emoji/1438_aSpookyDance.gif') 36 | .setColor(`#00dbff`) 37 | .addField(`:moneybag: ${msgs[1]}`, `\`${coins}\``,true) //ваш банк 38 | .addField(`:money_with_wings: ${msgs[2]}`, `\`${lcoins} \``,true)// ваш кошелёк 39 | .addField(`💵 Поддержите автора и получите бонусы и монетки)`,`[Нажми сюда пж](https://boosty.to/dreambotdonate)`) 40 | .setFooter(rekl, message.author.avatarURL); 41 | // if (admin == 1) embed.addField(`:spy: Вы администратор бота`, `А другие нет)`, true) 42 | bot.send(embed); 43 | 44 | } catch (err) { 45 | let bk = require('../botconfig.json'); 46 | let a = bot.users.get(bk.admin) 47 | let errEmb = new Discord.RichEmbed() 48 | .setTitle(`${err[0]}`) 49 | .setColor('#ff2400') 50 | .addField(`**${err.name}**`, `**${err.message}**`) 51 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 52 | .setTimestamp(); 53 | bot.send(errEmb); 54 | console.log(err.stack); 55 | }; 56 | 57 | }; 58 | module.exports.help = { 59 | name: "balance", 60 | aliases: ["bal", '$'] 61 | }; -------------------------------------------------------------------------------- /cmds/ban.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let evaled = eval('`' + lang.ban + '`'); 10 | let rekl = eval('`' + lang.rekl + '`'); 11 | let noUser = lang.noUser; 12 | let noNum = lang.noNum; 13 | let noPerm = lang.noPerm; 14 | let hBal = lang.hBanals; 15 | let errz = lang.err; 16 | let err = errz.split('<>'); 17 | let reaso = lang.reason; 18 | let reasonz = reaso.split('<>') 19 | let msgs = evaled.split('<>'); 20 | let actions = lang.actions.split('<>') 21 | let admin = lang.admin.split('<>') 22 | let embed = new Discord.RichEmbed() 23 | .setTitle(`${msgs[0]}`) 24 | .setColor('#e22216') 25 | let logsname = 'logs' 26 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 27 | if (!logschannel) { 28 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 29 | 30 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 31 | channel.overwritePermissions(message.guild.defaultRole, { 32 | VIEW_CHANNEL: false, 33 | }); 34 | }); 35 | } 36 | if (!message.member.hasPermission("BAN_MEMBERS")) { embed.setDescription(noPerm); return bot.send(embed); } 37 | 38 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 39 | 40 | let reason = args.slice(1).join(" "); 41 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 42 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 43 | if (!reason) { reason = reasonz[1] } 44 | 45 | let bembed = new Discord.RichEmbed() 46 | .setDescription(msgs[0]) 47 | .setColor('#e22216') 48 | .addField(admin, message.author) 49 | .addField(actions[0], `${rUser}`) 50 | .addField(reasonz[0], reason) 51 | .setFooter(rekl, message.author.avatarURL) 52 | .setThumbnail('https://discordemoji.com/assets/emoji/1651_BanOVE.gif'); 53 | 54 | rUser.send(bembed); 55 | message.guild.member(rUser).ban(reason); 56 | bot.send(bembed) 57 | logschannel.send(bembed) 58 | } catch (err) { 59 | let bk = require('../botconfig.json'); 60 | let a = bot.users.get(bk.admin) 61 | let errEmb = new Discord.RichEmbed() 62 | .setTitle(`${err[0]}`) 63 | .setColor('#ff2400') 64 | .addField(`**${err.name}**`, `**${err.message}**`) 65 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 66 | .setTimestamp(); 67 | bot.send(errEmb); 68 | console.log(err.stack); 69 | } 70 | 71 | }; 72 | module.exports.help = { 73 | name: "ban", 74 | aliases: ['бан'] 75 | }; -------------------------------------------------------------------------------- /cmds/blockinvites.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let evaled = eval('`' + lang.blockInvites + '`'); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let noUser = lang.noUser; 11 | let noNum = lang.noNum; 12 | let noPerm = lang.noPerm; 13 | let hBal = lang.hBanals; 14 | let errz = lang.err; 15 | let err = errz.split('<>'); 16 | let reaso = lang.reason; 17 | let reason = reaso.split('<>') 18 | let msgs = evaled.split('<>'); 19 | let actions = lang.actions.split('<>') 20 | let admin = lang.admin.split('<>') 21 | let logsname = 'logs' 22 | let embed = new Discord.RichEmbed() 23 | .setTitle(`**${msgs[0]}**`) 24 | .setColor('#10e250') 25 | if (!message.member.hasPermission("ADMINISTRATOR")) { embed.setDescription(noPerm); return bot.send(embed); } 26 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 27 | if (!logschannel) { 28 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 29 | 30 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 31 | bot.guild.set(`blockInvites_${message.guild.id}`, true); 32 | channel.overwritePermissions(message.guild.defaultRole, { 33 | VIEW_CHANNEL: false, 34 | }); 35 | }); 36 | } 37 | let bembed = new Discord.RichEmbed() 38 | .setTitle(`**${msgs[0]}**`) 39 | .setColor('#10e250') 40 | .setDescription(`**${msgs[1]}**`) 41 | .setFooter(rekl, message.author.avatarURL); 42 | logschannel.send(bembed) 43 | bot.send(bembed); 44 | }; 45 | module.exports.help = { 46 | name: "blockinvites", 47 | aliases: ["bi", 'антиреклама'] 48 | }; -------------------------------------------------------------------------------- /cmds/bonus.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | const ms = require("parse-ms"); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.bonus + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | 24 | let time = bot.profile.fetch(`bonustime_${message.author.id}`); 25 | let s = ms(((bot.cd / 60) / 1000) - (Date.now() - time), { long: true }); 26 | let wrong = new Discord.RichEmbed() 27 | .setColor('#ee281f') 28 | .setDescription(`**${message.author.tag}** ${msgs[0]} **${s.minutes} minutes ${s.seconds} seconds**`) 29 | if (time > Date.now()) return bot.send(wrong) 30 | 31 | let add = Date.now() + ((bot.cd * 60) * 1000); 32 | let mh; 33 | let cd; 34 | 35 | if (bot.cd > 60) { mh = ' hours'; cd = (bot.cd / 60) } else { mh = ' minutes'; cd = bot.cd }; 36 | 37 | let embed = new Discord.RichEmbed() 38 | .setColor('#77dd77') 39 | .setDescription(`${msgs[1]}${cd}${mh}`); 40 | 41 | bot.send(embed); 42 | 43 | bot.profile.add(`coins_${message.author.id}`, bk.bonus); 44 | bot.profile.set(`bonustime_${message.author.id}`, add); 45 | bot.lprofile.add(`coins_${message.author.id}_${message.guild.id}`, bk.bonus); 46 | } catch (err) { 47 | let bk = require('../botconfig.json'); 48 | let a = bot.users.get(bk.admin) 49 | let errEmb = new Discord.RichEmbed() 50 | .setTitle(`${err[0]}`) 51 | .setColor('#ff2400') 52 | .addField(`**${err.name}**`, `**${err.message}**`) 53 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 54 | .setTimestamp(); 55 | bot.send(errEmb); 56 | console.log(err.stack); 57 | }; 58 | 59 | }; 60 | module.exports.help = { 61 | name: "bonus", 62 | aliases: ["b", 'бонус', '$'] 63 | }; -------------------------------------------------------------------------------- /cmds/boobs.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/boobs"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'boobs', 24 | aliases: ['сиськи', 'сися', 'груди'], 25 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 26 | usages: { '!boobs': 'NSFW NSWF NSFW' }, 27 | category: "18+" 28 | }; -------------------------------------------------------------------------------- /cmds/boosty.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | const fs = require("fs"); 3 | module.exports.run = async (bot, message, args) => { 4 | message.delete(5000) 5 | let Invite = await message.guild.channels.find((c) => c.type === 'text').createInvite() 6 | let Sender = message.author; 7 | const sayMessage = args.join(" "); 8 | if(!sayMessage) return message.channel.send("Укажите баг").then(msg => {msg.delete(5000)}); 9 | 10 | let contact = new Discord.RichEmbed() 11 | .setColor("#ff0f00") 12 | 13 | .setThumbnail(Sender.displayAvatarURL) 14 | .setDescription(`[${message.guild.name}](${Invite.url})`) 15 | .setTitle("Сервер:") 16 | .addField("Отправитель", Sender, true) 17 | .addField("ID отправителя: ", Sender.id, true) 18 | .addField("Баг: ", sayMessage) 19 | .setTimestamp() 20 | 21 | bot.users.get("587697798628114442").send(contact); 22 | 23 | let embed = new Discord.RichEmbed() 24 | .setColor("#00ff00") 25 | .setTitle("Баг успешно отправлен!") 26 | .addField("Запрошено", Sender) 27 | .addField("Баг: ", sayMessage) 28 | .setFooter("Мы рассмотрим вашу проблему") 29 | 30 | message.channel.send(embed).then(msg => {msg.delete(5000)}); 31 | 32 | } 33 | module.exports.help = { 34 | name: "boosty", 35 | aliases: ["баг"] 36 | } -------------------------------------------------------------------------------- /cmds/botstats.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const { version } = require(`discord.js`); 4 | const moment = require(`moment`); 5 | require(`moment-duration-format`); 6 | const Discord = require(`discord.js`) 7 | module.exports.run = async (bot, message, args) => { 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.botstats + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | const duration = moment.duration(bot.uptime).format(` D [days], H [hrs], m [mins], s [secs]`); 24 | 25 | const embed = new Discord.RichEmbed() 26 | .setAuthor(`Bot stats`) 27 | .setColor(`#a7f442`) 28 | .setThumbnail('https://discordemoji.com/assets/emoji/2278_PinkCatSpin.gif') 29 | .setTimestamp() 30 | .addField(`⭕ | ${msgs[0]}`, `${(process.memoryUsage().heapUsed / (1000 * 1000)).toFixed(2)} MB`, true) 31 | .addField(`🕑 | ${msgs[7]}`, `${duration}`, true) 32 | .addField(`👥 | ${msgs[1]}`, `${bot.users.size.toLocaleString()}`, true) 33 | .addField(`🌐 | ${msgs[2]}`, `${bot.guilds.size.toLocaleString()}`, true) 34 | .addField(`🗨 | ${msgs[3]}`, `${bot.channels.size.toLocaleString()}`, true) 35 | .addField(`⚙ | ${msgs[4]}`, `${bot.commands.size.toLocaleString()}`, true) 36 | .addField(`🕵 | ${msgs[5]}`, bot.botstats.fetch(`viewMessages`), true) 37 | .addField(`📩 | ${msgs[6]}`, bot.botstats.fetch(`sendMessages`), true) 38 | .addField(`💡 | Discord.js`, `v${version}`, true) 39 | .addField(`〽 | ${msgs[8]}`, `${Math.round(bot.ping)}ms.`, true)//Задержка бота с DiscordAPI 40 | .addField(`<:housting:679015877634686976>| ${msgs[9]}`,`[netangels.ru](https://netangels.ru)`,true) 41 | .addField(`⚙️| ${msgs[10]}`, `[${msgs[11]}](https://status.dreambot.ml/)`, true) 42 | .addField(`💵 Поддержите автора и получите бонусы)`,`[Нажми сюда пж](https://boosty.to/dreambotdonate)`, true) 43 | .addField(`<:github:679016893369286657>| GitHub`, `[${msgs[11]}](https://github.com/MrLivixx/dreambot-v2)`, true) 44 | .setFooter(rekl, message.author.avatarURL); 45 | 46 | bot.send(embed); 47 | }; 48 | 49 | module.exports.help = { 50 | name: `botstats`, 51 | aliases: [`bs`, 'статистикабота', 'бс'] 52 | } -------------------------------------------------------------------------------- /cmds/bs.js: -------------------------------------------------------------------------------- 1 | const { version } = require("discord.js"); 2 | const moment = require("moment") 3 | require("moment-duration-format"); 4 | const os = require('os'); 5 | module.exports.run = async (bot,message,args) => { 6 | const duration = moment.duration(bot.uptime).format(" D [дней], H [часа(ов)], m [минут]"); 7 | const embed = new Discord.RichEmbed() 8 | .setAuthor(`Информация о боте ${bot.user.username}`, `${bot.user.avatarURL}`) 9 | .setColor("RANDOM") 10 | .setThumbnail(`${bot.user.avatarURL}`) 11 | .setTimestamp() 12 | .addField('**Основная:** ',`\`\`\`asciidoc\n• Серверов :: ${bot.guilds.size.toLocaleString()}\n• Участников :: ${bot.users.size.toLocaleString()}\n• Эмодзи :: ${bot.emojis.size.toLocaleString()}\n• Кол-во команд :: ${bot.commands.size.toLocaleString()}\`\`\``) 13 | .addField('**Техническая:** ',`\`\`\`asciidoc\n• Пинг :: ${bot.ping}мс\n• ОЗУ исп. :: ${(process.memoryUsage().heapUsed / 1024 / 1024).toFixed(2)} / ${(os.totalmem() / 1024 / 1024).toFixed(2)} MB\n• Бот запустился:: ${moment(bot.readyAt+10800000).format(`DD.MM в HH:mm`)}\n• Аптайм бота :: ${duration}\n• Discord.js :: v${version}\n• Версия Node :: ${process.version}\n• Процессор :: ${os.cpus().map(i => `${i.model}`)[0]}\`\`\``, true) .setFooter(`${bot.user.username} `, bot.user.avatarURL) 14 | .addField(`<:github:679016893369286657>| GitHub`, `[Тык](https://github.com/MrLivixx/dreambot-v2)`) 15 | .addField(`🖥 |Хостин️г`,"[Тык](https://mrlivixx.ml/host)") 16 | 17 | .setTimestamp() 18 | message.channel.send(embed) 19 | } 20 | module.exports.help = { 21 | name: "stats", 22 | aliases: ["bss"], 23 | } 24 | // n• Бот запустился:: ${moment(bot.readyAt+10800000).format(`DD.MM в HH:mm`)}\n \n• ОЗУ исп. :: ${(process.memoryUsage().heapUsed / 1024 / 1024).toFixed(2)} / ${(os.totalmem() / 1024 / 1024).toFixed(2)} MB • Процессор :: ${os.cpus().map(i => `${i.model}`)[0]} 25 | -------------------------------------------------------------------------------- /cmds/bug.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | const fs = require("fs"); 3 | module.exports.run = async (bot, message, args) => { 4 | 5 | let Invite = await message.guild.channels.find((c) => c.type === 'text').createInvite() 6 | let Sender = message.author; 7 | const sayMessage = args.join(" "); 8 | if(!sayMessage) return message.channel.send("Укажите баг").then(msg => {msg.delete(5000)}); 9 | 10 | let contact = new Discord.RichEmbed() 11 | .setColor("#ff0f00") 12 | 13 | .setThumbnail(Sender.displayAvatarURL) 14 | .setDescription(`[${message.guild.name}](${Invite.url})`) 15 | .setTitle("Сервер:") 16 | .addField("Отправитель", Sender, true) 17 | .addField("ID отправителя: ", Sender.id, true) 18 | .addField("Баг: ", sayMessage) 19 | .setTimestamp() 20 | 21 | bot.users.get("502948927809781763").send(contact); 22 | 23 | let embed = new Discord.RichEmbed() 24 | .setColor("#00ff00") 25 | .setTitle("Баг успешно отправлен!") 26 | .addField("Запрошено", Sender) 27 | .addField("Баг: ", sayMessage) 28 | .setFooter("Мы рассмотрим вашу проблему") 29 | 30 | message.channel.send(embed); 31 | 32 | 33 | } 34 | module.exports.help = { 35 | name: "bug", 36 | aliases: ["баг"] 37 | } -------------------------------------------------------------------------------- /cmds/casino.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | try { 8 | let coins = bot.lprofile.fetch(`coins_${message.author.id}_${message.guild.id}`) 9 | let bal = coins 10 | let bk = require('../botconfig.json'); 11 | let embed = new Discord.RichEmbed() 12 | let rand = Math.floor(Math.random() * (100 - 0) + 0) 13 | function isNumeric(n) { 14 | return !isNaN(parseFloat(n)) && isFinite(n); 15 | }; 16 | 17 | /////////////////////////////////////////////////////// RES ////////////////////////////////////////////////////// 18 | // let rand = Math.floor(Math.random() * (100 - 0) + 0) // 19 | let rand2 = Math.floor(Math.random() * (100 - 10) + 10) // 20 | let win_60 = 2 // 21 | let win_90 = 4 // 22 | let win_100 = 10 // 23 | ////////////////////////////////////////////////////// MATH //////////////////////////////////////////////////////////////////////// 24 | rand2 + 13; // 25 | if (rand2 > 100) rand2 = 100; // 26 | let stavka = parseInt(args[0]) // 27 | if (!args[0] || !isNumeric(Math.floor(stavka))) { embed.setDescription(`Укажите ставку`); return bot.send(embed); } // 28 | if (coins <= Math.floor(stavka)) { embed.setDescription(` У вас не достаточно средств **${bal}**`); return bot.send(embed); } // 29 | if (Math.floor(stavka) <= 10) { embed.setDescription(`Минимальная ставка 10`); return bot.send(embed); } // 30 | let check; // 31 | if(rand2 < 60) { // 32 | check = 0 // 33 | return Check2(check) // 34 | } // 35 | // 36 | if(rand > rand2 || rand < rand2) { // 37 | check = rand2 // 38 | return Check2(check) // 39 | } else { // 40 | rand2 = rand2 - 1 // 41 | check = rand2 // 42 | return Check2(check) // 43 | } // 44 | ////////////////////////////////////////////////////// MATH //////////////////////////////////////////////////////////////////////// 45 | 46 | ////////////////////////////////////////////////////////////// RESULT ////////////////////////////////////////////////////////////// 47 | function Check2(res) { // 48 | if(res === 0) { // 49 | embed.setDescription(`Вы проигали :( Попробуйте ещё раз позже`); // // 50 | bot.lprofile.subtract(`coins_${message.author.id}_${message.guild.id}`, Math.floor(stavka)); // 51 | embed.setColor(`#36393f`) // 52 | return bot.send(embed); // 53 | } // 54 | if(res === 100) { // 55 | bot.lprofile.add(`coins_${message.author.id}_${message.guild.id}`, Math.floor(stavka * 10) - Math.floor(stavka)); // 56 | embed.setColor('#10e250'); // 57 | embed.setDescription(`Вам выпало ${res} \n Вы выиграли ${Math.floor(stavka * 5)}`); // // 58 | return bot.send(embed); // 59 | } // 60 | if(res >= 90) { // 61 | bot.lprofile.add(`coins_${message.author.id}_${message.guild.id}`, Math.floor(stavka * 4) - Math.floor(stavka)); // 62 | embed.setColor('#10e250'); // 63 | embed.setDescription(`Вам выпало ${res} \n Вы выиграли ${Math.floor(stavka * 4)}`); // // 64 | return bot.send(embed); // 65 | } // 66 | if(res >= 60) { // 67 | bot.lprofile.add(`coins_${message.author.id}_${message.guild.id}`, Math.floor(stavka * 2) - Math.floor(stavka)); // 68 | embed.setColor('#10e250'); // 69 | embed.setDescription(`Вам выпало ${res} \n Вы выиграли ${Math.floor(stavka * 2)}`); // // 70 | return bot.send(embed); // 71 | } // 72 | } // 73 | ////////////////////////////////////////////////////////////// RESULT ////////////////////////////////////////////////////////////// 74 | 75 | } catch (err) { 76 | let bk = require('../botconfig.json'); 77 | let a = bot.users.get(bk.admin) 78 | let errEmb = new Discord.RichEmbed() 79 | .setTitle(`${err[0]}`) 80 | .setColor('#ff2400') 81 | .addField(`**${err.name}**`, `**${err.message}**`) 82 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 83 | .setTimestamp(); 84 | bot.send(errEmb); 85 | console.log(err.stack); 86 | } 87 | }; 88 | module.exports.help = { 89 | name: "slroll", 90 | aliases: ["лролл", 'лроль', 'лрулетка'] 91 | }; -------------------------------------------------------------------------------- /cmds/cat.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js') 4 | const sa = require('superagent') 5 | 6 | exports.run = async (bot, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | if (args) if (args[0] == 'help') return bot.send(`**cat** - Рандомный котик) (Author: Offsis)\n**Использование:** ${bk.prefix}cat`); 11 | var { body } = await sa.get(`http://aws.random.cat//meow`) 12 | var cat = new Discord.RichEmbed() 13 | .setColor('#fadbc8') 14 | .setImage(body.file) 15 | .setFooter(rekl) 16 | bot.send(cat) 17 | } 18 | exports.help = { 19 | name: 'cat', 20 | aliases: ["кошка", 'кот'] 21 | } -------------------------------------------------------------------------------- /cmds/cinvite.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | module.exports.run = async (bot,message,args) => { 3 | 4 | let guild = bot.guilds.get(args[0]); 5 | //message.delete(5000); 6 | message.react("662046909103341571"); 7 | 8 | let config = require('../botconfig.json'); 9 | if(message.author.id !== config.admin && message.author.id !== "502948927809781763") return message.channel.send("вы не админ бота."); 10 | 11 | if (!guild) return message.reply("Бот не находится на сервере с указанным ID."); 12 | guild.fetchInvites() 13 | .then(invites => message.channel.send('Найдено приглашений:\n ' + 'https://discordapp.com/invite/' + invites.map(invite => invite.code).join('\n'))) 14 | .catch(console.error); 15 | } 16 | 17 | module.exports.help = { 18 | name: 'cinvite', 19 | aliases: [] 20 | } -------------------------------------------------------------------------------- /cmds/classic.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/classic"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'classic', 24 | aliases: ['классика'], 25 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 26 | usages: { '!classic': 'NSFW NSWF NSFW' }, 27 | category: "18+" 28 | }; -------------------------------------------------------------------------------- /cmds/cmdchannel.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let ch = message.mentions.channels.first(); 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.cmdchannel + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | let noMoney = lang.noMoney; 24 | 25 | let embed = new Discord.RichEmbed() 26 | .setTitle(`**${msgs[0]}**`) 27 | .setColor('#e22216') 28 | 29 | if (!message.member.hasPermission(`MANAGE_CHANNELS`)) { embed.setDescription(noPerm); return bot.send(embed); } 30 | 31 | if (!args[0]) { embed.setDescription(msgs[1]); return bot.send(embed); } 32 | 33 | if (!ch) { embed.setDescription(msgs[1]); return bot.send(embed); } 34 | bot.guild.set(`cmdchannel_${message.guild.id}`, ch.id); 35 | let bembed = new Discord.RichEmbed() 36 | .setTitle(`**${msgs[0]}**`) 37 | .setColor('#10e250') 38 | .setDescription(msgs[2]) 39 | .setFooter(rekl, message.author.avatarURL); 40 | let logsname = 'logs' 41 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 42 | if (!logschannel) { 43 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 44 | 45 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 46 | channel.overwritePermissions(message.guild.defaultRole, { 47 | VIEW_CHANNEL: false, 48 | }); 49 | }); 50 | } 51 | logschannel.send(bembed) 52 | bot.send(bembed); 53 | } catch (err) { 54 | let bk = require('../botconfig.json'); 55 | let a = bot.users.get(bk.admin) 56 | let errEmb = new Discord.RichEmbed() 57 | .setTitle(`${err[0]}`) 58 | .setColor('#ff2400') 59 | .addField(`**${err.name}**`, `**${err.message}**`) 60 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 61 | .setTimestamp(); 62 | bot.send(errEmb); 63 | console.log(err.stack); 64 | } 65 | 66 | }; 67 | module.exports.help = { 68 | name: `cmdchannel`, 69 | aliases: [`сmdch`, 'каналдлякомманд'] 70 | }; -------------------------------------------------------------------------------- /cmds/coin.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | 3 | module.exports.run = async (bot, message, args) => { 4 | let items = ['Решка', 5 | 'Орёл'] 6 | let item = items[Math.floor(Math.random()*items.length)]; 7 | message.channel.send(item); 8 | }; 9 | module.exports.help = { 10 | name: "coin", 11 | aliases: ["монетка"] 12 | }; -------------------------------------------------------------------------------- /cmds/createstats.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let evaled = eval('`' + lang.createstats + '`'); 10 | let rekl = eval('`' + lang.rekl + '`'); 11 | let noUser = lang.noUser; 12 | let noNum = lang.noNum; 13 | let noPerm = lang.noPerm; 14 | let hBal = lang.hBanals; 15 | let errz = lang.err; 16 | let err = errz.split('<>'); 17 | let reaso = lang.reason; 18 | let reason = reaso.split('<>') 19 | let msgs = evaled.split('<>'); 20 | let actions = lang.actions.split('<>') 21 | let admin = lang.admin.split('<>') 22 | let noMoney = lang.noMoney; 23 | let embed = new Discord.RichEmbed() 24 | .setTitle(`**${msgs[0]}*`) 25 | .setColor('#e22216') 26 | if (!message.member.hasPermission(`MANAGE_CHANNELS`)) { embed.setDescription(noPerm); return bot.send(embed); }; 27 | message.guild.createChannel(`${msgs[1]}`, { type: 'voice' }).then(channel => { 28 | 29 | bot.guild.set(`totalUsers_${message.guild.id}`, channel.id) 30 | 31 | channel.overwritePermissions(message.guild.defaultRole, { 32 | VIEW_CHANNEL: true, 33 | CONNECT: false, 34 | }) 35 | }); 36 | let logsname = 'logs' 37 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 38 | if (!logschannel) { 39 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 40 | 41 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 42 | channel.overwritePermissions(message.guild.defaultRole, { 43 | VIEW_CHANNEL: false, 44 | }); 45 | }); 46 | } 47 | message.guild.createChannel(`${msgs[2]}`, { type: 'voice' }).then(channel => { 48 | 49 | bot.guild.set(`totalBots_${message.guild.id}`, channel.id) 50 | 51 | channel.overwritePermissions(message.guild.defaultRole, { 52 | VIEW_CHANNEL: true, 53 | CONNECT: false, 54 | }); 55 | embed.setColor('#31b8c4'); 56 | embed.setDescription(`${msgs[3]}`); 57 | logschannel.send(embed) 58 | return bot.send(embed); 59 | }); 60 | } catch (err) { 61 | let bk = require('../botconfig.json'); 62 | let a = bot.users.get(bk.admin) 63 | let errEmb = new Discord.RichEmbed() 64 | .setTitle(`${err[0]}`) 65 | .setColor('#ff2400') 66 | .addField(`**${err.name}**`, `**${err.message}**`) 67 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 68 | .setTimestamp(); 69 | bot.send(errEmb); 70 | console.log(err.stack); 71 | } 72 | 73 | }; 74 | module.exports.help = { 75 | name: `createstats`, 76 | aliases: [`crs`, 'создатьстатистику'] 77 | }; -------------------------------------------------------------------------------- /cmds/dog.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js') 4 | const sa = require('superagent') 5 | 6 | exports.run = async (bot, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | if (args) if (args[0] == 'help') return bot.send(`**dog** - Рандомный песик (Author: Offsis)\n**Использование:** ${bk.prefix}dog`); 11 | var { body } = await sa.get(`https://random.dog/woof.json`) 12 | var dog = new Discord.RichEmbed() 13 | .setColor('#fadbc8') 14 | .setImage(body.url) 15 | .setFooter(rekl) 16 | bot.send(dog) 17 | } 18 | exports.help = { 19 | name: 'dog', 20 | aliases: ["собака", 'пес', 'щенок'] 21 | } -------------------------------------------------------------------------------- /cmds/embed.js: -------------------------------------------------------------------------------- 1 | module.exports.run = async (bot,message,args) => { 2 | try { 3 | let text = args.join(" ").replace(/\n/g, "\\n"); 4 | if (!text) return message.reply("Аргументы не обнаружены, советуем ознакомиться с `x!help embed` для продолжения") 5 | let embed = new Discord.RichEmbed(); 6 | let footer = text.match(/{footer:(.*?)( \| icon: ?(.*?))?}/i); 7 | if (footer !== null) { 8 | embed.setFooter(footer[1], footer[3]) 9 | } 10 | let image = text.match(/{image: ?(.*?)}/i); 11 | if (image !== null) { 12 | embed.attachFile({ 13 | attachment: image[1], 14 | file: image[1].substring(image[1].lastIndexOf('/') + 1) 15 | }).setImage('attachment://' + image[1].substring(image[1].lastIndexOf('/') + 1)); 16 | } 17 | let thumb = text.match(/{thumbnail: ?(.*?)}/i); 18 | if (thumb !== null) { 19 | embed.attachFile({ 20 | attachment: thumb[1], 21 | file: thumb[1].substring(thumb[1].lastIndexOf('/') + 1) 22 | }).setThumbnail('attachment://' + thumb[1].substring(thumb[1].lastIndexOf('/') + 1)); 23 | } 24 | let author = text.match(/{author:(.*?)( \| icon: ?(.*?))?( \| url: ?(.*?))?}/i); 25 | if (author !== null) { 26 | embed.setAuthor(author[1], author[3], author[5]) 27 | } 28 | let title = text.match(/{title:(.*?)}/i); 29 | if (title !== null) { 30 | embed.setTitle(title[1]) 31 | } 32 | let url = text.match(/{url: ?(.*?)}/i); 33 | if (url !== null) { 34 | embed.setURL(url[1]) 35 | } 36 | let description = text.match(/{description:(.*?)}/i); 37 | if (description !== null) { 38 | embed.setDescription(description[1].replace(/\\n/g, '\n')) 39 | } 40 | let color = text.match(/{colou?r: ?(.*?)}/i); 41 | if (color !== null) { 42 | embed.setColor(color[1]) 43 | } 44 | let timestamp = text.match(/{timestamp(: ?(.*?))?}/i); 45 | if (timestamp !== null) { 46 | if (timestamp[2] === undefined || timestamp[2] === null) 47 | embed.setTimestamp(new Date()); 48 | else 49 | embed.setTimestamp(new Date(timestamp[2])); 50 | } 51 | let fields = text.match(/{field: ?(.*?) \| value: ?(.*?)( \| inline)?}/gi) 52 | if (fields !== null) { 53 | fields.forEach((item) => { 54 | if (item[1] == null || item[2] == null || typeof item[1] === "undefined" || typeof item[2] === "undefined") return; 55 | let matches = item.match(/{field: ?(.*?) \| value: ?(.*?)( \| inline)?}/i); 56 | embed.addField(matches[1], matches[2].replace(/\\n/g, '\n'), (matches[3] != null)); 57 | }); 58 | } 59 | message.channel.send({ embed }); 60 | message.delete(); 61 | message.author.send("Я оставлю это здесь на случай, если вам нужно будет отредактировать прошлое сообщение или вы потеряли шаблон..\n\n```" + args.join(" ") + "```"); 62 | // message.author.send(":warning: | Команда `embed` скоро будет переведена в премиум, некоторые сервера могут получить 1 из 2 версий за бесплатно, подробнее на https://xeval.ga/donate"); 63 | } catch (err) { 64 | console.log(err); 65 | } 66 | } 67 | 68 | 69 | module.exports.help = { 70 | name: 'embed', 71 | aliases: ['эмбенд'] 72 | }; -------------------------------------------------------------------------------- /cmds/fox.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js') 4 | const sa = require('superagent') 5 | 6 | exports.run = async (client, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${client.lang}.json`); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | if (args) if (args[0] == 'help') return client.send(`**fox** - Рандомная лисичка (Author: Offsis)\n**Использование:** ${bk.prefix}fox`); 11 | var { body } = await sa.get(`https://randomfox.ca/floof/`) 12 | var fox = new Discord.RichEmbed() 13 | .setColor('#fadbc8') 14 | .setImage(body.image) 15 | .setFooter(rekl) 16 | client.send(fox) 17 | } 18 | exports.help = { 19 | name: 'fox', 20 | aliases: ["карамеяль","карамелька","caramel", "лиса", "лис", "лисичка", 'лисенок', 'лисонька', 'лисы', 'лисеночки'] 21 | } 22 | -------------------------------------------------------------------------------- /cmds/gadd.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | 12 | let bk = require('../botconfig.json'); 13 | let uadmin = bot.profile.fetch(`admin_${message.author.id}`); 14 | if (uadmin != 1) return; 15 | let embed = new Discord.RichEmbed() 16 | .setTitle('**Добавление**') 17 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL) 18 | .setColor('#e22216'); 19 | 20 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 21 | let res = args.slice(1).join(" "); 22 | 23 | if (!args[0]) { embed.setDescription(`**Укажите пользователя**\n*Пример ${bk.prefix}gadd @user 500*`); return bot.send(embed); }; 24 | if (!rUser) { embed.setDescription('**Данный пользователь не найден**'); return bot.send(embed); } 25 | if (!res) { embed.setDescription(`**Укажите Число**\n*Пример ${bk.prefix}gadd @user 500*`); return bot.send(embed); }; 26 | if (!isNumeric(res)) { embed.setDescription(`**Укажите число правильно**\n*Пример ${bk.prefix}gadd @user 500*`); return bot.send(embed); }; 27 | bot.profile.add(`coins_${rUser.id}`, Math.floor(parseInt(res))); 28 | let coins = bot.profile.fetch(`coins_${rUser.id}`); 29 | if (coins === null) bot.profile.set(`coins_${rUser.id}`, 1 + Math.floor(parseInt(res))); 30 | 31 | let bembed = new Discord.RichEmbed() 32 | .setDescription("**Добавление**") 33 | .setColor('#10e250') 34 | .addField(`Вы добавили ${rUser.user.tag} ${res} глобальных монеток!`, `Его баланс составляет ${coins}`) 35 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL); 36 | 37 | bot.send(bembed); 38 | } catch (err) { 39 | let bk = require('../botconfig.json'); 40 | let a = bot.users.get(bk.admin) 41 | let errEmb = new Discord.RichEmbed() 42 | .setTitle('Ошибка') 43 | .setColor('#ff2400') 44 | .addField(`**${err.name}**`, `**${err.message}**`) 45 | .setFooter(`Если ошибка не пропадает обратитесь к ${a.tag}`, bot.user.avatarURL) 46 | .setTimestamp(); 47 | bot.send(errEmb); 48 | console.log(err.stack); 49 | } 50 | 51 | }; 52 | module.exports.help = { 53 | name: "gadd", 54 | aliases: ["гдобавить"] 55 | }; -------------------------------------------------------------------------------- /cmds/github.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | module.exports = { 3 | help: { 4 | name: 'github', 5 | aliases: [""], 6 | description: "Поиск пользователя на github.", 7 | enabled: true 8 | }, 9 | run: async (bot, message, args) => { 10 | if(!args[0]) return; require("node-fetch")(`https://api.github.com/users/${args[0]}`).then(res => res.json()).then(json => { 11 | if(!json.login) return 12 | let embed = new Discord.RichEmbed() 13 | .setColor("BLUE") // Замените на свой цвет. 14 | .setAuthor(args[0], json.avatar_url, json.html_url) 15 | .setDescription(`Имя: ${json.name ? json.name : "Не найдено."} | ${json.company ? json.company : "Компании нет."}\nБиография: ${json.bio ? json.bio : "Нет."}`) 16 | .addField('Статистика:', `Кол-во открытых репозиторий: ${json.public_repos} | Гистов: ${json.public_gists}\nПодписок: ${json.following} | Подписчиков: ${json.followers}`) 17 | if(json.blog){ embed.addField('_ _', `[Блог](${json.blog}) | [Ссылка на профиль](${json.html_url})`)} 18 | bot.send(embed) 19 | }) 20 | } 21 | } -------------------------------------------------------------------------------- /cmds/groll.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | try { 8 | let rand = Math.floor(Math.random() * (100 - 0) + 0) 9 | let rand2 = Math.floor(Math.random() * (100 - 10) + 10) 10 | let coins = bot.profile.fetch(`coins_${message.author.id}`); 11 | let bal = coins 12 | let bk = require('../botconfig.json'); 13 | let lang = require(`../lang_${bot.lang}.json`); 14 | let otherlang = require(`../lang_${bot.lang}.json`); 15 | let olang = otherlang.casino.split('<>'); 16 | let evaled = eval('`' + lang.groll + '`'); 17 | let rekl = eval('`' + lang.rekl + '`'); 18 | let noUser = lang.noUser; 19 | let noNum = lang.noNum; 20 | let noPerm = lang.noPerm; 21 | let hBal = lang.hBanals; 22 | let errz = lang.err; 23 | let err = errz.split('<>'); 24 | let reaso = lang.reason; 25 | let reason = reaso.split('<>') 26 | let msgs = evaled.split('<>'); 27 | let actions = lang.actions.split('<>') 28 | let admin = lang.admin.split('<>') 29 | let noMoney = lang.noMoney; 30 | let embed = new Discord.RichEmbed() 31 | .setDescription(msgs[0]) 32 | .setColor('#e22216') 33 | .setFooter(rekl, message.author.avatarURL) 34 | function isNumeric(n) { 35 | return !isNaN(parseFloat(n)) && isFinite(n); 36 | }; 37 | if (!args[0] || !isNumeric(Math.floor(parseInt(args[0])))) { embed.setDescription(olang[3]); return bot.send(embed); } 38 | if (coins <= Math.floor(parseInt(args[0]))) { embed.setDescription(`${noMoney} **${bal}**`); return bot.send(embed); } 39 | if (Math.floor(parseInt(args[0])) <= 10) { embed.setDescription(`${olang[2]} 10`); return bot.send(embed); } 40 | rand2 + 13; 41 | if (rand2 > 100) rand2 = 100; 42 | if (rand <= rand2) { embed.setDescription(msgs[2]); bot.profile.subtract(`coins_${message.author.id}`, Math.floor(parseInt(args[0]))); return bot.send(embed); } 43 | if (rand > rand2) { embed.setColor('#10e250'); embed.setDescription(msgs[3]); bot.send(embed); } 44 | bot.profile.add(`coins_${message.author.id}`, Math.floor(parseInt(args[0]) * 1.5) - Math.floor(parseInt(args[0]))); 45 | 46 | } catch (err) { 47 | let bk = require('../botconfig.json'); 48 | let a = bot.users.get(bk.admin) 49 | let errEmb = new Discord.RichEmbed() 50 | .setTitle(`${err[0]}`) 51 | .setColor('#ff2400') 52 | .addField(`**${err.name}**`, `**${err.message}**`) 53 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 54 | .setTimestamp(); 55 | bot.send(errEmb); 56 | console.log(err.stack); 57 | } 58 | }; 59 | module.exports.help = { 60 | name: "groll", 61 | aliases: ["гролл", 'гроль', 'грулетка'] 62 | }; -------------------------------------------------------------------------------- /cmds/gset.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | 12 | let bk = require('../botconfig.json'); 13 | if (args) if (args[0] == 'help') return bot.send(`**set** - Установить точный локальный баланс пользователю\n**Использование:** ${bk.prefix}set`); 14 | let embed = new Discord.RichEmbed() 15 | .setTitle('**Изменение**') 16 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL) 17 | .setColor('#e22216'); 18 | let uadmin = bot.profile.fetch(`admin_${message.author.id}`); 19 | if (uadmin != 1) return; 20 | 21 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 22 | let res = args.slice(1).join(" "); 23 | 24 | if (!args[0]) { embed.setDescription(`**Укажите пользователя**\n*Пример ${bk.prefix}gset @user 500*`); return bot.send(embed); }; 25 | if (!rUser) { embed.setDescription('**Данный пользователь не найден**'); return bot.send(embed); } 26 | if (!res) { embed.setDescription(`**Укажите Число**\n*Пример ${bk.prefix}gset @user 500*`); return bot.send(embed); }; 27 | if (!isNumeric(res)) { embed.setDescription(`**Укажите число правильно**\n*Пример ${bk.prefix}gset @user 500*`); return bot.send(embed); }; 28 | bot.profile.set(`coins_${rUser.id}`, Math.floor(parseInt(res))); 29 | let coins = bot.profile.fetch(`coins_${rUser.id}`); 30 | if (coins === null) bot.profile.set(`coins_${rUser.id}`, 1 + Math.floor(parseInt(res))); 31 | 32 | let bembed = new Discord.RichEmbed() 33 | .setTitle("**Изменение**") 34 | .setColor('#10e250') 35 | .addField(`Вы установили ${rUser.user.tag} ${args[1]} монеток!`, `Его баланс составляет ${coins}`) 36 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL); 37 | 38 | bot.send(bembed); 39 | } catch (err) { 40 | let bk = require('../botconfig.json'); 41 | let a = bot.users.get(bk.admin) 42 | let errEmb = new Discord.RichEmbed() 43 | .setTitle('Ошибка') 44 | .setColor('#ff2400') 45 | .addField(`**${err.name}**`, `**${err.message}**`) 46 | .setFooter(`Если ошибка не пропадает обратитесь к ${a.tag}`, bot.user.avatarURL) 47 | .setTimestamp(); 48 | bot.send(errEmb); 49 | console.log(err.stack); 50 | } 51 | 52 | }; 53 | module.exports.help = { 54 | name: "gset", 55 | aliases: ["густановить"] 56 | }; -------------------------------------------------------------------------------- /cmds/help.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require("discord.js"); 4 | const rm = require("discord.js-reaction-menu"); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let evaled = eval('`' + lang.help + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | let noMoney = lang.noMoney; 24 | 25 | let e = new Discord.RichEmbed() 26 | .setThumbnail(bot.user.displayAvatarURL) 27 | .setDescription(`HELP`) 28 | .setColor(`#ff00ff`) 29 | .setDescription(`HELP`) 30 | .addField(`${msgs[52]}`, ` \n 1️⃣${msgs[53]} \n 2️⃣${msgs[54]} \n 3️⃣${msgs[55]} \n 4️⃣${msgs[56]} \n 5️⃣${msgs[57]}`) 31 | .addField(`<:github:679016893369286657>`, `[GitHub](https://github.io/MrLivixx/dreambot-v2)`) 32 | .setFooter(rekl, message.author.avatarURL); 33 | 34 | let main = new Discord.RichEmbed() 35 | .setDescription(`${msgs[6]}`,true) 36 | .setColor(`#ff00ff`) 37 | .addField('.add',`${msgs[7]}`,true) 38 | .addField('.bonus',`${msgs[8]}`,true,true) 39 | .addField('.casino',`${msgs[9]}`,true) 40 | .addField('.guild',`${msgs[10]}`,true) 41 | .addField('.pay',`${msgs[11]}`,true) 42 | .addField('.profile',`${msgs[12]}`,true) 43 | .addField('.shop',`${msgs[13]}`,true) 44 | .addField('.set',`${msgs[14]}`,true) 45 | .addField('.marks',`${msgs[15]}`,true) 46 | .addField('.work',`${msgs[16]}`,true) 47 | .addField('.lroll',`${msgs[17]}`,true) 48 | .addField('.groll',`${msgs[18]}`,true) 49 | .setFooter(rekl, message.author.avatarURL); 50 | 51 | let adm = new Discord.RichEmbed() 52 | .setColor(`#ff00ff`) 53 | .setDescription(`${msgs[19]}`,true) 54 | .addField('.report',`${msgs[20]}`,true) 55 | .addField('.autorole',`${msgs[21]}`,true) 56 | .addField('.welcomemessage',`${msgs[22]}`,true) 57 | .addField('.createstats',`${msgs[23]}`,true) 58 | .addField('.roomcreator',`${msgs[24]}`,true) 59 | .addField('.cmdchannel #упоминание/ping',`${msgs[25]}`,true) 60 | .addField('.sh', `${msgs[26]}`,true) 61 | .addField('.voiceonline ваше название/your name',`${msgs[27]}`,true) 62 | .addField('.blockinvites',`${msgs[28]}`,true) 63 | .addField('.resetchat',`Пересоздать канал`,true) 64 | .addField('.lock',`${msgs[58]}`,true) 65 | .setFooter(rekl, message.author.avatarURL); 66 | 67 | let stuffs = new Discord.RichEmbed() 68 | .setColor(`#ff00ff`) 69 | 70 | .setDescription(`${msgs[29]}`,true) 71 | .addField('.avatar',`${msgs[30]}`,true) 72 | .addField('.help',`${msgs[31]}`,true) 73 | .addField('.ping',`${msgs[32]}`,true) 74 | .addField('.invite', `${msgs[33]}`,true) 75 | .addField('.userinfo',`${msgs[34]}`,true) 76 | .addField('.serverinfo',`${msgs[35]}`,true) 77 | .addField('.createstats',`${msgs[36]}`,true) 78 | .addField('.botstats',`${msgs[37]}`,true) 79 | .setFooter(rekl, message.author.avatarURL); 80 | 81 | let configs = new Discord.RichEmbed() 82 | .setDescription(`${msgs[38]}`,true) 83 | .setColor(`#ff00ff`) 84 | 85 | .addField('.joke',`${msgs[39]}`,true) 86 | .addField('.cat', `${msgs[40]}`,true) 87 | .addField('.dog',`${msgs[41]}`,true) 88 | .addField('.fox',`${msgs[42]}`,true) 89 | .addField('.kiss @упоминание/@metion',`${msgs[43]}`,true) 90 | .addField('.slap @упоминание/@metion',`${msgs[44]}`,true) 91 | .addField('.roll число',`${msgs[45]}`,true) 92 | .addField('.ms',`${msgs[46]}`,true) 93 | .addField('.marry',`${msgs[47]}`,true) 94 | .addField('.like @упомнинание/@metion',`${msgs[48]}`,true) 95 | .addField('.textflip',`${msgs[49]}`,true) 96 | .addField('.gihub',`${msgs[50]}`,true) 97 | .addField('.t',`${msgs[51]}`,true) 98 | // .addField(`.anal`, `Вы уже взрослые и сами знаете `,true) 99 | // .addField(`.classic`, `Вы уже взрослые и сами знаете `,true) 100 | // .addField(`.hentai`, `Вы уже взрослые и сами знаете `,true) 101 | // .addField(`.kuni`, `Вы уже взрослые и сами знаете `,true) 102 | // .addField(`.neko`, `Неко`,true) 103 | // .addField(`.pussy`, `Вы уже взрослые и сами знаете `,true) 104 | // .addField(`.trap`, `Вы уже взрослые и сами знаете `,true) 105 | // .addField(`.yuri`, `Вы уже взрослые и сами знаете `,true) 106 | 107 | 108 | 109 | var commands = 110 | `Игрок:\n`+ 111 | `- \`stats <никнейм>\` | Просмотр статистики игрока\n`+ 112 | `- \`friends <никнейм>\` | Перечисление друзей игрока\n\n`+ 113 | `Гильдия:\n`+ 114 | `- \`guild -i | -t <тэг> | -n <имя>\` | Просмотр статистики гильдии\n\n`+ 115 | `Онлайн:\n`+ 116 | `- \`online\` | Просмотр онлайна на сервере\n`+ 117 | `- \`streams\` | Просмотр идущих стримов на сервере\n`+ 118 | `- \`staff\` | Перечисление персонала сервера онлайн`; 119 | let vime = new Discord.RichEmbed() 120 | .setColor("#36393f") 121 | .setTitle('Команды для взаимодействия с данными VimeWorld \n Префикс ``.v``') 122 | .setDescription(commands) 123 | 124 | new rm.menu(message.channel, message.author.id, [e, main, adm, stuffs, configs,vime], 240000); 125 | 126 | 127 | 128 | } catch (err) { 129 | let bk = require('../botconfig.json'); 130 | let a = bot.users.get(bk.admin) 131 | let errEmb = new Discord.RichEmbed() 132 | .setTitle(`${err[0]}`,true) 133 | .setColor('#ff2400') 134 | .addField(`**${err.name}**`, `**${err.message}**`) 135 | .setFooter(`${err[1]} ${a.tag}`,true, bot.user.avatarURL) 136 | .setTimestamp(); 137 | bot.send(errEmb); 138 | console.log(err.stack); 139 | } 140 | }; 141 | module.exports.help = { 142 | 143 | name: `help`, 144 | aliases: [`h`, `помощь`, 'хелп', 'хэлп', 'помогите', 'помогающий', 'помогатор', 'помогитехристаради', 'помощник', 'помогать', 'спасите', 'нупомогите'] 145 | }; -------------------------------------------------------------------------------- /cmds/hentai.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/hentai"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'hentai', 24 | aliases: ['хентай', 'секс', 'анимепорно'], 25 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 26 | usages: { '!trap': 'NSFW NSWF NSFW' }, 27 | category: "18+" 28 | }; -------------------------------------------------------------------------------- /cmds/invite.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js') 4 | 5 | exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let evaled = eval('`' + lang.invite + '`'); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let noUser = lang.noUser; 11 | let noNum = lang.noNum; 12 | let noPerm = lang.noPerm; 13 | let hBal = lang.hBanals; 14 | let errz = lang.err; 15 | let err = errz.split('<>'); 16 | let reaso = lang.reason; 17 | let reason = reaso.split('<>') 18 | let msgs = evaled.split('<>'); 19 | let actions = lang.actions.split('<>') 20 | let admin = lang.admin.split('<>') 21 | let noMoney = lang.noMoney; 22 | let emb = new Discord.RichEmbed() 23 | .setDescription(msgs[0]) 24 | .setColor('#10e250') 25 | .addField(msgs[1], "https://discord.gg/tp8Mytu") 26 | .addField(msgs[2], 'https://cutt.ly/directordiscordbot') 27 | .addField(msgs[3],'https://top.gg/bot/572285950034444298/vote') 28 | bot.send(emb) 29 | } 30 | exports.help = { 31 | name: 'invite', 32 | aliases: ["in", 'пригласить', 'приглашение', 'приглашающий', 'приглашения'] 33 | } 34 | -------------------------------------------------------------------------------- /cmds/joinleave.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require(`discord.js`); 2 | module.exports.run = async (bot, message, args) => { 3 | try { 4 | let bk = require('../botconfig.json'); 5 | let lang = require(`../lang_${bot.lang}.json`); 6 | let evaled = eval('`' + lang.joinleave+ '`'); 7 | let rekl = eval('`' + lang.rekl + '`'); 8 | let noUser = lang.noUser; 9 | let noNum = lang.noNum; 10 | let noPerm = lang.noPerm; 11 | let hBal = lang.hBanals; 12 | let errz = lang.err; 13 | let err = errz.split('<>'); 14 | let reaso = lang.reason; 15 | let reason = reaso.split('<>') 16 | let msgs = evaled.split('<>'); 17 | let actions = lang.actions.split('<>') 18 | let admin = lang.admin.split('<>') 19 | let noMoney = lang.noMoney; 20 | let embed = new Discord.RichEmbed() 21 | .setTitle(`**${msgs[0]}**`) 22 | .setColor('RANDOM') 23 | if (!message.member.hasPermission(`ADMINISTRATOR`)) { embed.setDescription(noPerm); return bot.send(embed); } 24 | let logsname = 'logs' 25 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 26 | if (!logschannel) { 27 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 28 | 29 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 30 | channel.overwritePermissions(message.guild.defaultRole, { 31 | VIEW_CHANNEL: false, 32 | }); 33 | }); 34 | } 35 | let joinname = 'join-leave' 36 | let joinchannel = message.guild.channels.get(bot.guild.fetch(`joinleave_${message.guild.id}`)); 37 | if (!joinchannel) { 38 | await message.guild.createChannel(joinname, { type: 'text' }).then(channel => { 39 | bot.guild.set(`joinleave_${message.guild.id}`, channel.id); 40 | }); 41 | } 42 | embed.setDescription(msgs[1]) 43 | embed.setFooter(rekl, message.author.avatarURL) 44 | logschannel.send(embed); 45 | bot.send(embed); 46 | } catch (err) { 47 | let bk = require('../botconfig.json'); 48 | let a = bot.users.get(bk.admin) 49 | let errEmb = new Discord.RichEmbed() 50 | .setTitle(`${err[0]}`) 51 | .setColor('#ff2400') 52 | .addField(`**${err.name}**`, `**${err.message}**`) 53 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 54 | .setTimestamp(); 55 | bot.send(errEmb); 56 | console.log(err.stack); 57 | } 58 | 59 | }; 60 | module.exports.help = { 61 | name: `joinleave`, 62 | aliases: [`входвыход`, 'jl'] 63 | }; -------------------------------------------------------------------------------- /cmds/joke.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let items = ['Падает комп с виндой с 16-го этажа и думает: Вот сейчас бы зависнуть', 7 | 'Ты кто по гороскопу?\n- Рыба\n- А я пиво', 8 | 'Вчера отвёл душу... Сегодня не могу вспомнить куда!?..', 9 | 'Если вы нашли ошибку в тексте бота, выделите её мышкой и нажмите Alt+F4', 10 | 'У кошки четыpе ноги: вход, выход, земля и питание', 11 | 'Я, я свидетель! А что случилось?', 12 | 'Что же вы так убиваетесь? Вы же так никогда не убьётесь!', 13 | 'Ты умрешь, а я нет', 14 | 'В начале о главном. Главный — в порядке.', 15 | 'Мы не продаём алкоголь и сигареты лицам, не достигшим ничего', 16 | 'Не пугайтесь, это только усугубит положение', 17 | 'Я добрый, просто я людей ненавижу', 18 | 'Сшил дырки — получилась сетка', 19 | 'Мир несовершенен', 20 | 'Фонарик на солнечной батарее', 21 | 'Колобок повесился', 22 | 'Буратино утонул', 23 | 'Лечу от вирусов по фотографии вашего компьютера', 24 | 'Засолим огурцы по самые помидоры!', 25 | 'Если болт нужно забить аккуратно, его вкручивают', 26 | 'Искусство — это не ЧТО, а КАК', 27 | 'Оптимизм — это недостаток информации', 28 | 'Если ласточки ползают по земле и блюют — это к концу света', 29 | 'Вратарь ловко овладел мячом. Мяч придётся заменить.', 30 | 'Выйди из комы и зайди как полагается!', 31 | 'Смотри, как он трогательно спит, совсем как дохлый', 32 | 'А это — человек. Сейчас он будет пытаться изменить свою жизнь. Смотрите, как он забавно надеется на лучшее.', 33 | 'Реестр запрещённых сайтов попал в реестр запрещённых сайтов, поскольку содержит информацию о запрещённых сайтах.', 34 | '"Нужно пораньше в магазин приехать, чтобы мало народа было, и быстро всё купить, и в очередях не стоять", — подумал весь город.', 35 | '— Вам понятно как работает фрезер или объяснить на пальцах?', 36 | 'Чтобы выделятся из серой массы необязательно красить волосы в красный цвет и носить кольцо в носу. Достаточно просто не быть говном.', 37 | 'По мнению Госдепа и ЕС, эти русские совсем обнаглели: плюнешь в морду — драться лезут.', 38 | 'Когда поёт Тимати замолкают даже соловьи, потому что даже они не могут петь и блевать одновременно.', 39 | 'Меня мучает один вопрос: в связи с чем эти ледяные штуки называются «сосульки», а карамельные конфетки — «леденцы»? Почему не наоборот?', 40 | 'Вдруг откуда ни возьмись, ниоткуда не взялось.', 41 | 'Я начал с нуля, а затем многократно приумножил свои знания.', 42 | 'Навязчивость — худшее из качеств, вы со мной согласны? Давайте обсудим? Почему не хотите? Может, я к вам на колени сяду?', 43 | 'Приняли хорошо. Выгнали не сразу, били без злости, да и догоняли лениво.', 44 | 'Бесит, когда люди идут нахуй недостаточно быстро.', 45 | '— А ты давно кактус на холодильнике поливала?\n— Это хлеб.', 46 | 'Медведь проживший с цыганами 10 лет, не впадал в спячу, чтобы у него ничего не спиздили.', 47 | 'Учитель рисования просто обожал свой предмет. Поэтому на каждом уроке дети рисовали его предмет.', 48 | 'Сегодня видел объявление «Продам принтер», написанное от руки. Что-то здесь не так.', 49 | 'Жопа велосипедиста, въехавшего в рекламный щит, 17 минут была лицом компании AVON.', 50 | 'В Молдавии за второго ребёнка правительство выделяет мешок цемента. Но потратить его можно только на образование', 51 | 'Как объяснить соседям, что лифт и так наш, поэтому метить его не надо?', 52 | '— Здравствуй, Дедушка Мороз, борода из ваты! Ты подарки нам принёс?\n— Нет, идите нахуй.', 53 | 'Вчера во дворе хулиганы избили оптимиста Василия до полужизни.', 54 | 'Трёхлетний малыш, слепивший прямоугольный песочный \'куличик\', неожиданно для себя нарушил 15 патентов Apple.', 55 | 'Родился сам — помоги другому', 56 | 'Мне, конечно, нравятся дети, но целого я бы не съел', 57 | 'Больной, просыпайтесь! Пора принимать снотворное!', 58 | 'Я иногда так нерешителен. Или нет?', 59 | 'Самки пенопласта откладывают яйца в коробки из-под бытовой техники', 60 | 'Если труп обвести цветными мелками — будет атмосфера праздника!', 61 | 'Серая неплодородная почва из пяти букв? Бетон.', 62 | 'Труп врага всегда хорошо пахнет', 63 | '— Пап, это кальян. Через него нельзя гнать самогон.', 64 | 'Добро - это когда плохому человеку делаешь плохо', 65 | 'Если вопрос правильно поставить, он может долго простоять.', 66 | 'Мальчик, не до конца завязавший шнурки, не до конца сошёл с эскалатора', 67 | 'Сколько в людях ни разочаровывайся — всё равно удивят', 68 | 'А файл с заявлением на увольнение назывался ПНХ.doc', 69 | 'Начни с себя и на себе остановись', 70 | 'Планшеты от Микрософт — самые лучшие планшеты среди планшетов от Микрософт!', 71 | 'Ну и запросы у вас — сказала база данных и повисла', 72 | 'Пишу про всех гадости', 73 | 'Судя по вашим охуевшим лицам, вы слегка удивлены', 74 | 'Человек может всё, пока не начнёт что-то делать', 75 | 'Ёж — птица гордая, пока не пнёшь — не полетит', 76 | 'Люди, считающие, что деньги могут всё — сами могут сделать всё за деньги', 77 | 'Кpасота сосёт мир', 78 | 'Жизнь одна — проеби её ярко!', 79 | 'Не всякий лось перекусит рельсу', 80 | 'Как-то раз один мальчик пошёл за водкой. Вниз по социальной лестнице.', 81 | 'Пингвины — это растолстевшие ласточки', 82 | 'Если у вас нет Интернета, то у кого-то их два', 83 | 'Выдавил из себя раба — убери за собой!', 84 | 'Одни с годами умнеют, другие становятся старше', 85 | 'Лифт не работает. Ближайший лифт — в соседнем доме.', 86 | 'Кролики думали, что они трахаются, а на самом деле их разводили', 87 | 'В слове «гребля» первые две буквы означают «грyппoвая»', 88 | 'Добро пожаловать отсюда', 89 | 'Пойдём со мной. Ты пожалеешь, но тебе понравится', 90 | 'Кто с чем к нам придёт, тот без того и останется', 91 | 'Ваш раздел D:\\ перепорнен.', 92 | 'В тебе сидит говно, но ты называешь это характером', 93 | 'Если в кране нет воды — значит это подъёмный кран', 94 | 'Мисс Таиланд на хую вертела все обвинения в свой адрес', 95 | 'Набирая песок для новой кошки, маленький Петя нашел старую', 96 | 'Сын борца сумо всю жизнь мечтал обнять отца', 97 | 'Жить на белом свете — не политкорректно', 98 | 'С улицы пришёл кусок грязи, утверждает, что мой ребёнок', 99 | 'Табличка с надписью «Осторожно! Убьёт!» осторожно убила человека']; 100 | let item = items[Math.floor(Math.random()*items.length)]; 101 | message.channel.send(item); 102 | }; 103 | module.exports.help = { 104 | name: "joke", 105 | aliases: ["прикол", 'анекдот', 'шутка', 'шутку'] 106 | }; -------------------------------------------------------------------------------- /cmds/kick.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let evaled = eval('`' + lang.kick + '`'); 11 | let noUser = lang.noUser; 12 | let noNum = lang.noNum; 13 | let noPerm = lang.noPerm; 14 | let hBal = lang.hBanals; 15 | let errz = lang.err; 16 | let err = errz.split('<>'); 17 | let reaso = lang.reason; 18 | let zreason = reaso.split('<>') 19 | let msgs = evaled.split('<>'); 20 | let actions = lang.actions.split('<>') 21 | let admin = lang.admin.split('<>') 22 | let noMoney = lang.noMoney; 23 | let embed = new Discord.RichEmbed() 24 | .setTitle(`${msgs[0]}`) 25 | .setColor('#e22216') 26 | if (!message.member.hasPermission(`KICK_MEMBERS`)) { embed.setDescription(noPerm); return bot.send(embed); } 27 | 28 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 29 | 30 | let reason = args.slice(1).join(` `); 31 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 32 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 33 | if (!reason) { reason = zreason[1] } 34 | let logsname = 'logs' 35 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 36 | if (!logschannel) { 37 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 38 | 39 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 40 | channel.overwritePermissions(message.guild.defaultRole, { 41 | VIEW_CHANNEL: false, 42 | }); 43 | }); 44 | } 45 | let bembed = new Discord.RichEmbed() 46 | .setDescription(msgs[0]) 47 | .setColor('#e22216') 48 | .addField(admin, message.author) 49 | .addField(actions[1], `${rUser}`) 50 | .addField(zreason[0], reason) 51 | .setFooter(rekl, message.author.avatarURL) 52 | .setThumbnail('https://discordemoji.com/assets/emoji/1651_BanOVE.gif'); 53 | 54 | rUser.send(bembed); 55 | message.guild.member(rUser).kick(reason); 56 | logschannel.send(bembed) 57 | bot.send(bembed) 58 | } catch (err) { 59 | let bk = require('../botconfig.json'); 60 | let a = bot.users.get(bk.admin) 61 | let errEmb = new Discord.RichEmbed() 62 | .setTitle(`${err[0]}`) 63 | .setColor('#ff2400') 64 | .addField(`**${err.name}**`, `**${err.message}**`) 65 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 66 | .setTimestamp(); 67 | bot.send(errEmb); 68 | console.log(err.stack); 69 | } 70 | 71 | }; 72 | module.exports.help = { 73 | name: `kick`, 74 | aliases: ['кик'] 75 | }; -------------------------------------------------------------------------------- /cmds/kiss.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let rekl = eval('`' + lang.rekl + '`'); 9 | let evaled = eval('`' + lang.kiss + '`'); 10 | let noUser = lang.noUser; 11 | let noNum = lang.noNum; 12 | let noPerm = lang.noPerm; 13 | let hBal = lang.hBanals; 14 | let errz = lang.err; 15 | let err = errz.split('<>'); 16 | let reaso = lang.reason; 17 | let zreason = reaso.split('<>') 18 | let msgs = evaled.split('<>'); 19 | let actions = lang.actions.split('<>') 20 | let admin = lang.admin.split('<>') 21 | let noMoney = lang.noMoney; 22 | let rUser = message.guild.member(message.mentions.users.first()) || message.author; 23 | let emb = new Discord.RichEmbed() 24 | .setDescription(`${message.author} ${msgs[0]} ${rUser}`) 25 | .setColor('#f646ff') 26 | .setImage(`https://media1.tenor.com/images/45e529c116a1758fd09bdb27e2172eca/tenor.gif?itemid=11674749`) 27 | .setFooter(rekl) 28 | bot.send(emb) 29 | }; 30 | module.exports.help = { 31 | name: "kiss", 32 | aliases: ["поцеловать", 'расцеловать', 'уцеловать', 'целовать'] 33 | }; -------------------------------------------------------------------------------- /cmds/kuni.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | let user = kUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 8 | if (!user) return bot.sendErrEmbed(new Discord.RichEmbed(), 'Укажите пользователя', true, message) 9 | const { body } = await superagent 10 | .get("https://nekos.life/api/v2/img/kuni"); 11 | const embed = new Discord.RichEmbed() 12 | .setColor("#FF30A2") 13 | .setTitle(`${message.author.username} 😏 ${user.user.tag}`) 14 | .setImage(body.url) 15 | message.channel.send(embed) 16 | } catch (err) { 17 | bot.logsErr(err) 18 | } 19 | }; 20 | 21 | 22 | 23 | module.exports.help = { 24 | name: 'kuni', 25 | aliases: ['куни'], 26 | description: 'Сделает куни пользователю (Стоимость 100 бананов) ', 27 | usages: { '!kuni': 'NSFW NSWF NSFW' }, 28 | category: "18+" 29 | }; -------------------------------------------------------------------------------- /cmds/lang.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js') 2 | module.exports.run = async (bot, message, args) => { 3 | let config = require('../botconfig.json') 4 | let prefix = config.prefix; 5 | try { 6 | let emb = new Discord.RichEmbed() 7 | .setColor('#ff0033') 8 | .setDescription(`:flag_ru: Используйте: ${prefix}lang ru\n:flag_gb: Use ${prefix}lang en`) 9 | if(!message.member.hasPermission('ADMINISTRATOR')){emb.setDescription('Вам нужны права администратора\nYou need administrator rights');return bot.send(emb)}; 10 | if (!args[0]) bot.send(emb) 11 | if (args[0].toLowerCase() == 'ru') { 12 | bot.guild.set(`lang_${message.guild.id}`, 'ru'); 13 | emb.setDescription('Теперь бот будет работать на **Русском** языке') 14 | return bot.send(emb); 15 | } else if (args[0].toLowerCase() == 'en') { 16 | bot.guild.set(`lang_${message.guild.id}`, 'en'); 17 | emb.setDescription('Now the bot will work in **English** language') 18 | return bot.send(emb); 19 | } else { 20 | bot.send(emb) 21 | } 22 | 23 | 24 | 25 | } catch (err) { 26 | let bk = require('../botconfig.json'); 27 | let a = bot.users.get(bk.admin) 28 | let errEmb = new Discord.RichEmbed() 29 | .setTitle(`${err[0]}`) 30 | .setColor('#ff2400') 31 | .addField(`**${err.name}**`, `**${err.message}**`) 32 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 33 | .setTimestamp(); 34 | bot.send(errEmb); 35 | console.log(err.stack); 36 | } 37 | }; 38 | module.exports.help = { 39 | name: "lang", 40 | aliases: ["langue", 'яз', 'язык'] 41 | }; -------------------------------------------------------------------------------- /cmds/like.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let evaled = eval('`' + lang.like + '`'); 11 | let noUser = lang.noUser; 12 | let noNum = lang.noNum; 13 | let noPerm = lang.noPerm; 14 | let hBal = lang.hBanals; 15 | let errz = lang.err; 16 | let err = errz.split('<>'); 17 | let reaso = lang.reason; 18 | let zreason = reaso.split('<>') 19 | let msgs = evaled.split('<>'); 20 | let actions = lang.actions.split('<>') 21 | let admin = lang.admin.split('<>') 22 | let noMoney = lang.noMoney; 23 | let embed = new Discord.RichEmbed() 24 | .setTitle(`**${msgs[0]}**`) 25 | .setColor('#e22216') 26 | 27 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 28 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 29 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 30 | let liked = bot.profile.fetch(`liked_${message.author.id}`); 31 | let likes = bot.profile.fetch(`likes_${rUser.id}`); 32 | if (rUser.id == message.author.id) { embed.setDescription(msgs[1]); return bot.send(embed); }; 33 | if (bot.profile.fetch(`lvl_${message.author.id}`) < 10) { embed.setDescription(msgs[2]); return bot.send(embed); } 34 | for (let i = 0; i < liked.length; await i++) { 35 | if (liked[i] == rUser.id) { embed.setDescription(msgs[3]); return bot.send(embed); } 36 | } 37 | if (likes === null) await bot.profile.set(`likes_${rUser.id}`, 1); 38 | else { bot.profile.add(`likes_${rUser.id}`, 1) } 39 | bot.profile.push(`liked_${message.author.id}`, `${rUser.id}`); 40 | likes = bot.profile.fetch(`likes_${rUser.id}`); 41 | let bembed = new Discord.RichEmbed() 42 | .setTitle(`:heart: :heart: :heart: `) 43 | .setColor('#10e250') 44 | .setDescription(`${rUser} ${msgs[4]} ${likes}**`) 45 | bot.send(bembed); 46 | } catch (err) { 47 | let bk = require('../botconfig.json'); 48 | let a = bot.users.get(bk.admin) 49 | let errEmb = new Discord.RichEmbed() 50 | .setTitle(`${err[0]}`) 51 | .setColor('#ff2400') 52 | .addField(`**${err.name}**`, `**${err.message}**`) 53 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 54 | .setTimestamp(); 55 | bot.send(errEmb); 56 | console.log(err.stack); 57 | } 58 | 59 | }; 60 | module.exports.help = { 61 | name: `like`, 62 | aliases: [`лайк`, 'луйк', 'лыйк', 'луки', 'лаку', 'кула', 'лика', 'лаик', 'лаек', 'луку'] 63 | }; -------------------------------------------------------------------------------- /cmds/lock.js: -------------------------------------------------------------------------------- 1 | const ms = require("ms"); 2 | 3 | module.exports.run = async(bot, message, args) => { 4 | 5 | if (!bot.lockit) bot.lockit = []; 6 | 7 | const time = args.join(" "); 8 | 9 | const validUnlocks = ["release", "unlock"]; 10 | 11 | if (!time) return message.reply("Укажите время на которое вы хотите заблокировать канал"); 12 | 13 | if (validUnlocks.includes(time)) { 14 | 15 | message.channel.overwritePermissions(message.guild.id, { 16 | 17 | SEND_MESSAGES: null 18 | 19 | }).then(() => { 20 | 21 | message.channel.send("🚨 | Блокировка отключена"); 22 | 23 | clearTimeout(bot.lockit[message.channel.id]); 24 | 25 | delete bot.lockit[message.channel.id]; 26 | 27 | }).catch(error => { 28 | 29 | console.log(error); 30 | 31 | }); 32 | 33 | } else { 34 | 35 | message.channel.overwritePermissions(message.guild.id, { SEND_MESSAGES: false }).then(() => { 36 | 37 | message.channel.send(`🔒 | Канал закрыт на ${ms(ms(time), { long:true })}`).then(() => { 38 | 39 | bot.lockit[message.channel.id] = setTimeout(() => { 40 | 41 | message.channel.overwritePermissions(message.guild.id, { 42 | 43 | SEND_MESSAGES: null 44 | 45 | }).then(message.channel.send("🚨 | Канал открыт")).catch(console.error); 46 | 47 | delete bot.lockit[message.channel.id]; 48 | 49 | }, ms(time)); 50 | 51 | A}).catch(error => { 52 | 53 | console.log(error); 54 | 55 | }); 56 | 57 | }); 58 | 59 | } 60 | 61 | }; 62 | 63 | module.exports.help = { 64 | name: "lock", 65 | aliases: ["укрытие",'убитьчтобслетелачленососальня'] 66 | } 67 | -------------------------------------------------------------------------------- /cmds/lroll.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | //Завершено 3 | 4 | const Discord = module.require("discord.js"); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | try { 9 | let rand = Math.floor(Math.random() * (100 - 0) + 0) 10 | let rand2 = Math.floor(Math.random() * (100 - 10) + 10) 11 | let coins = bot.lprofile.fetch(`coins_${message.author.id}_${message.guild.id}`) 12 | let bal = coins 13 | let bk = require('../botconfig.json'); 14 | let lang = require(`../lang_${bot.lang}.json`); 15 | let otherlang = require(`../lang_${bot.lang}.json`); 16 | let olang = otherlang.casino.split('<>'); 17 | let evaled = eval('`' + lang.groll + '`'); 18 | let rekl = eval('`' + lang.rekl + '`'); 19 | let noUser = lang.noUser; 20 | let noNum = lang.noNum; 21 | let noPerm = lang.noPerm; 22 | let hBal = lang.hBanals; 23 | let errz = lang.err; 24 | let err = errz.split('<>'); 25 | let reaso = lang.reason; 26 | let reason = reaso.split('<>') 27 | let msgs = evaled.split('<>'); 28 | let actions = lang.actions.split('<>') 29 | let admin = lang.admin.split('<>') 30 | let noMoney = lang.noMoney; 31 | let embed = new Discord.RichEmbed() 32 | .setDescription(msgs[0]) 33 | .setColor('#e22216') 34 | .setFooter(rekl, message.author.avatarURL) 35 | function isNumeric(n) { 36 | return !isNaN(parseFloat(n)) && isFinite(n); 37 | }; 38 | if (!args[0] || !isNumeric(Math.floor(parseInt(args[0])))) { embed.setDescription(olang[3]); return bot.send(embed); } 39 | if (coins <= Math.floor(parseInt(args[0]))) { embed.setDescription(`${noMoney} **${bal}**`); return bot.send(embed); } 40 | if (Math.floor(parseInt(args[0])) <= 10) { embed.setDescription(`${olang[2]} 10`); return bot.send(embed); } 41 | rand2 + 13; 42 | if (rand2 > 100) rand2 = 100; 43 | if (rand <= rand2) { embed.setDescription(msgs[2]); bot.lprofile.subtract(`coins_${message.author.id}_${message.guild.id}`, Math.floor(parseInt(args[0]))); return bot.send(embed); } 44 | if (rand > rand2) { embed.setColor('#10e250'); embed.setDescription(msgs[3]); bot.send(embed); } 45 | bot.lprofile.add(`coins_${message.author.id}_${message.guild.id}`, Math.floor(parseInt(args[0]) * 1.5) - Math.floor(parseInt(args[0]))); 46 | 47 | } catch (err) { 48 | let bk = require('../botconfig.json'); 49 | let a = bot.users.get(bk.admin) 50 | let errEmb = new Discord.RichEmbed() 51 | .setTitle(`${err[0]}`) 52 | .setColor('#ff2400') 53 | .addField(`**${err.name}**`, `**${err.message}**`) 54 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 55 | .setTimestamp(); 56 | bot.send(errEmb); 57 | console.log(err.stack); 58 | } 59 | }; 60 | module.exports.help = { 61 | name: "lroll", 62 | aliases: ["лролл", 'лроль', 'лрулетка'] 63 | }; -------------------------------------------------------------------------------- /cmds/marks.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let otherlang = require(`../lang_${bot.lang}.json`); 10 | let olang = otherlang.casino.split('<>'); 11 | let evaled = eval('`' + lang.marks + '`'); 12 | let rekl = eval('`' + lang.rekl + '`'); 13 | let noUser = lang.noUser; 14 | let noNum = lang.noNum; 15 | let noPerm = lang.noPerm; 16 | let hBal = lang.hBanals; 17 | let errz = lang.err; 18 | let err = errz.split('<>'); 19 | let reaso = lang.reason; 20 | let reason = reaso.split('<>') 21 | let msgs = evaled.split('<>'); 22 | let actions = lang.actions.split('<>') 23 | let admin = lang.admin.split('<>') 24 | let noMoney = lang.noMoney; 25 | if (args) if (args[0] == 'help') return bot.send(`**marks** - Значки\n**Использование:** ${bk.prefix}marks`); 26 | let embed = new Discord.RichEmbed() 27 | .setDescription(msgs[0]) 28 | .setColor(`RANDOM`) 29 | .setTitle(`**${message.author.tag}**`) 30 | .addField(`**Чикибабони ** 🐷 `, msgs[1]) 31 | .addField(`**Like a Boooooss** :unicorn:`, msgs[2]) 32 | .addField(`**Ку ку ёпта** :hear_no_evil:`, msgs[3]) 33 | .addField(`**${msgs[13]}** :newspaper2:`, msgs[4]) 34 | .addField(`**${msgs[14]}** :incoming_envelope:`,msgs[5]) 35 | .addField(`**${msgs[15]}** :dollar:`, msgs[6]) 36 | .addField(`**${msgs[16]}** :yen:`, msgs[7]) 37 | .addField(`**${msgs[17]}** :moneybag:`, msgs[8]) 38 | .addField(`**${msgs[18]}** :credit_card:`, msgs[9]) 39 | .addField(`**${msgs[19]}** :gem:`, msgs[10]) 40 | .addField(`**${msgs[20]}** :wedding:`, msgs[11]) 41 | .addField(`**${msgs[21]}** :gay_pride_flag:`, msgs[12]) 42 | .addField(`**${msgs[22]}** :boom:`, msgs[12]) 43 | .addField(`**Hacker** :spy:`, `${msgs[23]} <@572285950034444298>`) 44 | .setFooter(rekl); 45 | bot.send(embed) 46 | } catch (err) { 47 | let bk = require('../botconfig.json'); 48 | let a = bot.users.get(bk.admin) 49 | let errEmb = new Discord.RichEmbed() 50 | .setTitle(`${err[0]}`) 51 | .setColor('#ff2400') 52 | .addField(`**${err.name}**`, `**${err.message}**`) 53 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 54 | .setTimestamp(); 55 | bot.send(errEmb); 56 | console.log(err.stack); 57 | }; 58 | 59 | }; 60 | module.exports.help = { 61 | name: "marks", 62 | aliases: ["mks", 'значки', 'зночки', 'марки'] 63 | }; -------------------------------------------------------------------------------- /cmds/marry.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[1])); 7 | let bk = require('../botconfig.json'); 8 | let partner = bot.users.get(bot.profile.fetch(`partner_${message.author.id}`)) 9 | let sender = bot.profile.fetch(`sender_${message.author.id}`); 10 | let lang = require(`../lang_${bot.lang}.json`); 11 | console.log(lang.marry.split('<>')) 12 | let otherlang = require(`../lang_${bot.lang}.json`); 13 | let olang = otherlang.casino.split('<>'); 14 | let evaled = eval('`' + lang.marry + '`'); 15 | let rekl = eval('`' + lang.rekl + '`'); 16 | let noUser = lang.noUser; 17 | let noNum = lang.noNum; 18 | let noPerm = lang.noPerm; 19 | let hBal = lang.hBanals; 20 | let errz = lang.err; 21 | let err = errz.split('<>'); 22 | let reaso = lang.reason; 23 | let reason = reaso.split('<>') 24 | let msgs = evaled.split('<>'); 25 | let actions = lang.actions.split('<>') 26 | let admin = lang.admin.split('<>') 27 | let noMoney = lang.noMoney; 28 | let embed = new Discord.RichEmbed() 29 | .setTitle(`**${msgs[0]}**`) 30 | .setColor('#c71585') 31 | .setFooter(rekl) 32 | if (!args[0]) { 33 | if (bot.profile.fetch(`partner_${message.author.id}`) != null) { 34 | let partner = bot.users.get(bot.profile.fetch(`partner_${message.author.id}`)) 35 | embed.setDescription(`${msgs[1]}`); 36 | return bot.send(embed); 37 | } else { 38 | let sender = bot.profile.fetch(`sender_${message.author.id}`); 39 | if (sender == null) embed.setDescription(msgs[2]); 40 | else { sender = bot.users.get(`${bot.profile.fetch(`sender_${message.author.id}`)}`); sender = sender.tag; embed.setDescription(msgs[3]); } 41 | return bot.send(embed); 42 | } 43 | } 44 | switch (args[0]) { 45 | case 'send': 46 | if (!args[1]) { embed.setColor('#e22216'); embed.setDescription(noUser); return bot.send(embed); } 47 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[1])); 48 | if (!rUser) { embed.setColor('#e22216'); embed.setDescription(noUser); return bot.send(embed); } 49 | 50 | if (bot.profile.fetch(`partner_${message.author.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[4]); return bot.send(embed); } 51 | if (rUser.id == message.author.id) { embed.setColor('#e22216'); embed.setDescription(msgs[5]); return bot.send(embed); } 52 | if (bot.profile.fetch(`partner_${rUser.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[6]); return bot.send(embed); } 53 | if (bot.profile.fetch(`sended_${rUser.id}`) != null || bot.profile.fetch(`sender_${rUser.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[7]); return bot.send(embed); } 54 | if (bot.profile.fetch(`sended_${message.author.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[8]); return bot.send(embed); } 55 | if (bot.profile.fetch(`sender_${message.author.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[9]); return bot.send(embed); } 56 | bot.profile.set(`sended_${message.author.id}`, rUser.id) 57 | bot.profile.set(`sender_${rUser.id}`, message.author.id) 58 | embed.setDescription(msgs[10]); 59 | bot.send(embed); 60 | break; 61 | case 'accept': 62 | 63 | if (bot.profile.fetch(`sender_${message.author.id}`) == null || bot.profile.fetch(`partner_${message.author.id}`) != null) { embed.setColor('#e22216'); embed.setDescription(msgs[11]); return bot.send(embed); } 64 | let sender = bot.users.get(bot.profile.fetch(`sender_${message.author.id}`)) 65 | embed.setDescription(msgs[12]); 66 | bot.profile.delete(`sender_${message.author.id}`); 67 | bot.profile.set(`partner_${message.author.id}`, sender.id); 68 | bot.profile.delete(`sended_${message.author.id}`); 69 | bot.profile.delete(`sender_${sender.id}`); 70 | bot.profile.set(`partner_${sender.id}`, message.author.id); 71 | bot.profile.delete(`sended_${sender.id}`); 72 | bot.send(embed); 73 | break; 74 | case `divorce`: 75 | if (bot.profile.fetch(`partner_${message.author.id}`) == null) { embed.setColor('#e22216'); embed.setDescription(msgs[13]); return bot.send(embed); } 76 | let partner = bot.users.get(bot.profile.fetch(`partner_${message.author.id}`)) 77 | bot.profile.delete(`partner_${message.author.id}`); 78 | bot.profile.delete(`partner_${partner.id}`); 79 | embed.setDescription(`Вы развелись с: ${partner.tag} | You divorced: ${partner.tag} `); 80 | bot.send(embed); 81 | break; 82 | case 'cancel': 83 | if (bot.profile.fetch(`sender_${message.author.id}`) == null && bot.profile.fetch(`sended_${message.author.id}`) == null) { embed.setColor('#e22216'); embed.setDescription(msgs[14]); return bot.send(embed); } 84 | let senderz = bot.users.get(bot.profile.fetch(`sender_${message.author.id}`)) || bot.users.get(bot.profile.fetch(`sended_${message.author.id}`)); 85 | await bot.profile.delete(`sender_${senderz.id}`); 86 | await bot.profile.delete(`sended_${senderz.id}`); 87 | await bot.profile.delete(`sender_${message.author.id}`); 88 | await bot.profile.delete(`sended_${message.author.id}`); 89 | embed.setDescription(msgs[15]); 90 | bot.send(embed); 91 | break; 92 | default: 93 | embed.setDescription(msgs[16]); 94 | bot.send(embed) 95 | break 96 | } 97 | } catch (err) { 98 | let bk = require('../botconfig.json'); 99 | let a = bot.users.get(bk.admin) 100 | let errEmb = new Discord.RichEmbed() 101 | .setTitle(`${err[0]}`) 102 | .setColor('#ff2400') 103 | .addField(`**${err.name}**`, `**${err.message}**`) 104 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 105 | .setTimestamp(); 106 | bot.send(errEmb); 107 | console.log(err.stack); 108 | } 109 | }; 110 | module.exports.help = { 111 | name: `marry`, 112 | aliases: [`свадьба`, 'жениться', 'женица', 'пожениться', 'поженица', 'жену', 'найтижену', 'хочужену', 'мояжена', 'муж', 'моймуж', 'найтимужа', 'гейскиеотношения'] 113 | }; -------------------------------------------------------------------------------- /cmds/ms.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Minesweeper = require('discord.js-minesweeper') 4 | 5 | exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let evaled = eval('`' + lang.ms + '`'); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let msgs = evaled.split('<>'); 11 | const minesweeper = new Minesweeper(); 12 | bot.send(`${msgs[0]}!\n${minesweeper.start()}`); 13 | 14 | } 15 | exports.help = { 16 | name: 'ms', 17 | aliases: ["сапер", 'взорвать', 'теракт', 'minesweeper'] 18 | } -------------------------------------------------------------------------------- /cmds/neko.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | const { body } = await superagent 7 | .get("https://nekos.life/api/v2/img/neko"); 8 | const embed = new Discord.RichEmbed() 9 | .setColor("#FF30A2") 10 | .setImage(body.url) 11 | message.channel.send(embed) 12 | } catch (err) { 13 | bot.logsErr(err) 14 | } 15 | }; 16 | 17 | 18 | 19 | module.exports.help = { 20 | name: 'neko', 21 | aliases: ['дефкасушами', 'неко', 'нэко'], 22 | description: 'Получает фотографию девочки с ушками', 23 | usages: { '!neko': 'Показывает вам эту деффку' }, 24 | category: "Развлечения" 25 | }; -------------------------------------------------------------------------------- /cmds/news.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | 3 | exports.run = async (bot, message, args) => { 4 | const mess = args.join(" "); 5 | let embed = new Discord.RichEmbed() 6 | .setColor("#DB50FF") 7 | .setTitle("❄RoadToDream 2.0❄") 8 | .setDescription(mess) 9 | //.setThumbnail('https://i.imgur.com/wSTFkRM.png') 10 | message.channel.send(embed) 11 | //bot.channels.get("548570611044319259").send(embed) 12 | }; 13 | module.exports.help = { 14 | name: 'news', 15 | aliases: ["новость"] 16 | }; -------------------------------------------------------------------------------- /cmds/ot.js: -------------------------------------------------------------------------------- 1 | 2 | const Discord = module.require("discord.js"); 3 | module.exports.run = async (bot, message, args) => { 4 | if(message.guild.id == "502949305372377096") { 5 | } 6 | try { 7 | let bk = require('../botconfig.json'); 8 | 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let otherlang = require(`../lang_${bot.lang}.json`); 11 | let olang = otherlang.casino.split('<>'); 12 | let evaled = eval('`' + lang.ot + '`'); 13 | let rekl = eval('`' + lang.rekl + '`'); 14 | let noUser = lang.noUser; 15 | let noNum = lang.noNum; 16 | let noPerm = lang.noPerm; 17 | let hBal = lang.hBanals; 18 | let errz = lang.err; 19 | let err = errz.split('<>'); 20 | let reaso = lang.reason; 21 | let reason = reaso.split('<>') 22 | let msgs = evaled.split('<>'); 23 | let actions = lang.actions.split('<>') 24 | let admin = lang.admin.split('<>') 25 | let noMoney = lang.noMoney; 26 | let rUser = message.guild.member(message.mentions.users.first() ||bot.users.get(args[0]) || message.guild.members.get(args[0])); 27 | let embed = new Discord.RichEmbed() 28 | .setTitle(`**${msgs[0]}**`) 29 | .setColor('RANDOM'); 30 | if (!message.member.hasPermission("KICK_MEMBERS")) { embed.setDescription(noPerm); return bot.send(embed); } 31 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 32 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 33 | let ot = args.slice(1).join(" "); 34 | embed.setDescription(`**${ot}**`); 35 | rUser.send(embed); 36 | bot.send(embed); 37 | 38 | } catch (err) { 39 | let bk = require('../botconfig.json'); 40 | let a = bot.users.get(bk.admin) 41 | let errEmb = new Discord.RichEmbed() 42 | .setTitle(`${err[0]}`) 43 | .setColor('#ff2400') 44 | .addField(`**${err.name}**`, `**${err.message}**`) 45 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 46 | .setTimestamp(); 47 | bot.send(errEmb); 48 | console.log(err.stack); 49 | } 50 | }; 51 | module.exports.help = { 52 | name: "ot", 53 | aliases: ["от"] 54 | }; -------------------------------------------------------------------------------- /cmds/pay.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | let acoins = bot.lprofile.fetch(`coins_${message.author.id}_${message.guild.id}`); 12 | let res = args.slice(1).join(" "); 13 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 14 | let bk = require('../botconfig.json'); 15 | let lang = require(`../lang_${bot.lang}.json`); 16 | let otherlang = require(`../lang_${bot.lang}.json`); 17 | let olang = otherlang.casino.split('<>'); 18 | let rekl = eval('`' + lang.rekl + '`'); 19 | let noUser = lang.noUser; 20 | let embed = new Discord.RichEmbed() 21 | .setTitle(`**Pay**`) 22 | .setFooter(rekl, message.author.avatarURL) 23 | .setColor('#e22216'); 24 | if (!rUser) { embed.setDescription(`${noUser}`); return bot.send(embed); } 25 | let evaled = eval('`' + lang.pay + '`'); 26 | let noNum = lang.noNum; 27 | let noPerm = lang.noPerm; 28 | let hBal = lang.hBanals; 29 | let errz = lang.err; 30 | let err = errz.split('<>'); 31 | let reaso = lang.reason; 32 | let reason = reaso.split('<>') 33 | let msgs = evaled.split('<>'); 34 | let actions = lang.actions.split('<>') 35 | let admin = lang.admin.split('<>') 36 | let noMoney = lang.noMoney; 37 | 38 | 39 | if (!args[0]) { embed.setDescription(`**${noUser}**\n${msgs[0]}`); return bot.send(embed); }; 40 | if (!res) { embed.setDescription(`${msgs[0]}`); return bot.send(embed); }; 41 | if (!isNumeric(Math.floor(parseInt(res)))) { embed.setDescription(`${msgs[0]}`); return bot.send(embed); }; 42 | if (res <= 0) { embed.setDescription(`${msgs[1]}`); return bot.send(embed); }; 43 | if (rUser.id == message.author.id) { embed.setDescription(`${msgs[2]}`); return bot.send(embed); }; 44 | if (res > acoins) { embed.setDescription(`${msgs[3]}`); return bot.send(embed); }; 45 | bot.lprofile.subtract(`coins_${message.author.id}_${message.guild.id}`, Math.floor(parseInt(res))) 46 | bot.lprofile.add(`coins_${rUser.id}_${message.guild.id}`, Math.floor(parseInt(res))); 47 | let coins = bot.lprofile.fetch(`coins_${rUser.id}_${message.guild.id}`); 48 | if (coins === null) bot.lprofile.set(`coins_${rUser.id}_${message.guild.id}`, 1 + Math.floor(parseInt(res))); 49 | 50 | let bembed = new Discord.RichEmbed() 51 | .setDescription("**iPay**") 52 | .setColor('#10e250') 53 | .addField(`${msgs[4]}`, `${hBal} ${coins}`) 54 | .setFooter(rekl, message.author.avatarURL); 55 | 56 | bot.send(bembed); 57 | } catch (err) { 58 | let bk = require('../botconfig.json'); 59 | let a = bot.users.get(bk.admin) 60 | let errEmb = new Discord.RichEmbed() 61 | .setTitle(`${err[0]}`) 62 | .setColor('#ff2400') 63 | .addField(`**${err.name}**`, `**${err.message}**`) 64 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 65 | .setTimestamp(); 66 | bot.send(errEmb); 67 | console.log(err.stack); 68 | } 69 | 70 | }; 71 | module.exports.help = { 72 | name: "pay", 73 | aliases: ['передать'] 74 | }; -------------------------------------------------------------------------------- /cmds/pin.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | module.exports.run = async (bot, message, args) => { 3 | if (!message.member.hasPermission("MANAGE_MESSAGES")) return message.channel.send('Недостаточно прав!') 4 | 5 | let msgid = args[0] 6 | 7 | if (!msgid) return message.channel.send('Укажи ID сообщения!') 8 | 9 | await message.channel.fetchMessage(msgid) 10 | .then(async msg => { 11 | if (!msg) return message.channel.send('Сообщение не найдено') 12 | await msg.pin() 13 | message.react("662046909103341571"); 14 | }).catch(console.error) 15 | 16 | } 17 | 18 | module.exports.help = { 19 | name: 'pin', 20 | aliases: ["закрепить",] 21 | } -------------------------------------------------------------------------------- /cmds/ping.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let otherlang = require(`../lang_${bot.lang}.json`); 9 | let olang = otherlang.casino.split('<>'); 10 | let evaled = eval('`' + lang.ping + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reason = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let admin = lang.admin.split('<>') 23 | let noMoney = lang.noMoney; 24 | let emb = new Discord.RichEmbed() 25 | .setDescription(msgs[0]) 26 | .setColor('#ff8148') 27 | .addField(`Pffagarvvbw2q5td`, `**${bot.ping}**`) 28 | .setFooter(rekl, message.author.avatarURL) 29 | .setThumbnail('https://discordemoji.com/assets/emoji/2366_Loading_Pixels.gif'); 30 | bot.send(emb); 31 | }; 32 | module.exports.help = { 33 | name: "ping", 34 | aliases: ["пинг", 'лаги'] 35 | }; -------------------------------------------------------------------------------- /cmds/play.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | const ytdl = require('ytdl-core'); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | let data = bot.active.get(message.guild.id) || {}; 9 | let bk = require('../botconfig.json'); 10 | let lang = require(`../lang_ru.json`); 11 | let otherlang = require(`../lang_en.json`); 12 | let olang = otherlang.casino.split('<>'); 13 | let evaled = eval('`' + lang.play + '`'); 14 | let rekl = eval('`' + lang.rekl + '`'); 15 | let noUser = lang.noUser; 16 | let noNum = lang.noNum; 17 | let noPerm = lang.noPerm; 18 | let hBal = lang.hBanals; 19 | let errz = lang.err; 20 | let err = errz.split('<>'); 21 | let reaso = lang.reason; 22 | let reason = reaso.split('<>') 23 | let msgs = evaled.split('<>'); 24 | let actions = lang.actions.split('<>') 25 | let admin = lang.admin.split('<>') 26 | let noMoney = lang.noMoney; 27 | let embed = new Discord.RichEmbed() 28 | .setTitle("**Hello World**") 29 | .setColor('#e22216') 30 | .setFooter(rekl, message.author.avatarURL); 31 | if (!message.member.voiceChannel) { embed.setDescription(msgs[0]); return bot.send(embed) } 32 | if (!args[0]) { embed.setDescription(msgs[1]); return bot.send(embed) } 33 | let validate = await ytdl.validateURL(args[0]); 34 | if (!validate) { 35 | let commandFile = require('./search.js'); 36 | return commandFile.run(bot, message, args); 37 | } 38 | 39 | 40 | if (!data.connection) data.connection = await message.member.voiceChannel.join(); 41 | if (!data.queue) data.queue = []; 42 | data.guildID = message.guild.id; 43 | let info = await ytdl.getInfo(args[0]); 44 | data.queue.push({ 45 | songTitle: info.title, 46 | requester: message.author.tag, 47 | url: args[0], 48 | channel: message.channel.id 49 | }) 50 | if (!data.dispatcher) play(bot, data); 51 | else { 52 | embed.setColor('fae7b5'); embed.setDescription(`${msgs[2]} ${data.queue[0].songTitle}** ${msgs[3]}`); return bot.send(embed); 53 | } 54 | bot.active.set(message.guild.id, data); 55 | async function play(bot, data) { 56 | embed.setColor('fae7b5'); 57 | embed.setDescription(`${msgs[4]} ${data.queue[0].songTitle}** ${msgs[5]} ***${data.queue[0].requester}***`); 58 | bot.channels.get(data.queue[0].channel).send(embed); 59 | data.dispatcher = await data.connection.playStream(ytdl(data.queue[0].url, { filter: 'audioonly' })); 60 | data.dispatcher.guildID = data.guildID; 61 | data.dispatcher.once('end', function () { 62 | finish(bot, this) 63 | }) 64 | } 65 | function finish(bot, dispatcher) { 66 | let fetched = bot.active.get(dispatcher.guildID); 67 | 68 | fetched.queue.shift(); 69 | 70 | if (fetched.queue.length > 0) { 71 | bot.active.set(dispatcher.guildID, fetched); 72 | play(bot, fetched) 73 | } else { 74 | bot.active.delete(dispatcher.guildID); 75 | 76 | let vc = bot.guilds.get(dispatcher.guildID).me.voiceChannel; 77 | if (vc) vc.leave(); 78 | } 79 | } 80 | 81 | } catch (err) { 82 | let bk = require('../botconfig.json'); 83 | let a = bot.users.get(bk.admin) 84 | let errEmb = new Discord.RichEmbed() 85 | .setTitle(`${err[0]}`) 86 | .setColor('#ff2400') 87 | .addField(`**${err.name}**`, `**${err.message}**`) 88 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 89 | .setTimestamp(); 90 | bot.send(errEmb); 91 | console.log(err.stack); 92 | }; 93 | 94 | }; 95 | module.exports.help = { 96 | name: "play", 97 | aliases: ["музыка", 'плей', 'музло'] 98 | }; -------------------------------------------------------------------------------- /cmds/profile.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | const moment = require("moment"); 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let otherlang = require(`../lang_${bot.lang}.json`); 10 | let olang = otherlang.casino.split('<>'); 11 | let evaled = eval('`' + lang.profile + '`'); 12 | let rekl = eval('`' + lang.rekl + '`'); 13 | let noUser = lang.noUser; 14 | let noNum = lang.noNum; 15 | let noPerm = lang.noPerm; 16 | let hBal = lang.hBanals; 17 | let errz = lang.err; 18 | let err = errz.split('<>'); 19 | let reaso = lang.reason; 20 | let reason = reaso.split('<>') 21 | let msgs = evaled.split('<>'); 22 | let actions = lang.actions.split('<>') 23 | let noMoney = lang.noMoney; 24 | 25 | 26 | // - - - - - - 27 | let us = message.mentions.users.first() ? message.mentions.users.first() : message.author; 28 | const status = { 29 | online: "В сети", 30 | idle: "Не активный", 31 | dnd: "Не беспокоить", 32 | offline: "Не в сети" 33 | }; 34 | const devices = { 35 | desktop: "Компьютер", 36 | web: "Браузер", 37 | mobile: "Телефон" 38 | } 39 | const statuses = { 40 | online: "<:online:635177496773656596> ", 41 | idle: " <:402784531356188672:635418347881627658>", 42 | dnd: "<:dnd:635177496773525508>", 43 | offline: "<:offline:635177496685314049> Не в сети", 44 | invisible: "<:offline:635177496685314049> Не в сети" 45 | } 46 | let desc = ""; 47 | if(us.presence.clientStatus && Object.keys(us.presence.clientStatus).length > 0) { 48 | for (let device in message.author.presence.clientStatus) { 49 | desc += `${statuses[us.presence.clientStatus[device]]} ${devices[device]}\n` 50 | } 51 | } else { 52 | desc = statuses[us.presence.status] 53 | } 54 | 55 | let coins = bot.profile.fetch(`coins_${us.id}`); 56 | let lvl = bot.profile.fetch(`lvl_${us.id}`); 57 | let xp = bot.profile.fetch(`xp_${us.id}`); 58 | let rep = bot.profile.fetch(`rep_${us.id}`); 59 | let messages = bot.profile.fetch(`messages_${us.id}`); 60 | let warns = bot.lprofile.fetch(`warns_${us.id}_${message.guild.id}`); 61 | let admin = bot.profile.fetch(`admin_${us.id}`); 62 | let lcoins = bot.lprofile.fetch(`coins_${us.id}_${message.guild.id}`); 63 | let likes = bot.profile.fetch(`likes_${us.id}`); 64 | let clan = bot.profile.fetch(`clan_${us.id}`); 65 | let partner = bot.profile.fetch(`partner_${us.id}`); 66 | let marks = bot.profile.fetch(`marks_${us.id}`); 67 | let work = bot.profile.fetch(`work_${us.id}`); 68 | let votes = bot.profile.fetch(`votes_${us.id}`); 69 | 70 | if (warns === null) await bot.lprofile.set(`warns_${us.id}_${message.guild.id}`, 0); 71 | if (coins === null) await bot.profile.set(`coins_${us.id}`, 0); 72 | if (lvl === null) await bot.profile.set(`lvl_${us.id}`, 1); 73 | if (xp === null) await bot.profile.set(`xp_${us.id}`, 0); 74 | if (rep === null) await bot.profile.set(`rep_${us.id}`, 0); 75 | if (messages === null) await bot.profile.set(`messages_${us.id}`, 0); 76 | if (admin === null) await bot.profile.set(`admin_${us.id}`, 0); 77 | if (lcoins === null) await bot.lprofile.set(`coins_${us.id}_${message.guild.id}`, 0); 78 | if (likes === null) await bot.profile.set(`likes_${us.id}`, 0); 79 | if (marks === null) await bot.profile.set(`marks_${us.id}`, '🐴 '); 80 | if (work === null) await bot.profile.set(`work_${us.id}`,0); 81 | if(votes = null)await bot.profile.set(`votes_${us.id}`,0); 82 | if (clan === null) clan = msgs[0]; 83 | if (partner != null) {partner = bot.users.get(partner); partner = partner.tag}; 84 | if (partner === null) partner = msgs[0]; 85 | coins = bot.profile.fetch(`coins_${us.id}`); 86 | lvl = bot.profile.fetch(`lvl_${us.id}`); 87 | xp = bot.profile.fetch(`xp_${us.id}`); 88 | rep = bot.profile.fetch(`rep_${us.id}`); 89 | messages = bot.profile.fetch(`messages_${us.id}`); 90 | admin = bot.profile.fetch(`admin_${us.id}`); 91 | lcoins = bot.lprofile.fetch(`coins_${us.id}_${message.guild.id}`); 92 | likes = bot.profile.fetch(`likes_${us.id}`); 93 | marks = bot.profile.fetch(`marks_${us.id}`); 94 | work = bot.profile.fetch(`work_${us.id}`); 95 | votes = bot.profile.fetch(`votes_${us.id}`); 96 | 97 | let embed = new Discord.RichEmbed() 98 | .setTitle(` ${msgs[14]} **${us.tag}**`) 99 | //.setThumbnail('https://discordemoji.com/assets/emoji/1438_aSpookyDance.gif') 100 | .setColor(`#00dbff`) 101 | .addField(`:moneybag: ${msgs[1]}`, `\`${coins}\``,true) //ваш банк 102 | .addField(`:money_with_wings: ${msgs[2]}`, `\`${lcoins} \``,true)// ваш кошелёк 103 | .addField(`:bar_chart: ${msgs[4]}`, `\`${lvl}\``, true) 104 | .addField(`:spy: ${msgs[5]}`, `\`${xp}/${lvl * 5}\``, true) 105 | .addField(`:e_mail: ${msgs[9]}`, `\`${messages}\``, true) 106 | .addField(`:boom: ${msgs[6]}`, `\`${rep}\``, true) 107 | .addField(`:japanese_ogre: ${msgs[7]}`, `\`${clan}\``,true) 108 | .addField(`:couple_with_heart: ${msgs[8]}`, `\`${partner}\``,true) 109 | .addField(`:military_medal: ${msgs[11]}`, marks,true) 110 | .addField(`:heart: ${msgs[10]}`, `\`${likes}\``, true) 111 | .addField(`⛏ ${msgs[12]}`,`\`${bot.worklist[work].name}\``,true) 112 | .addField(`:military_medal: ${msgs[13]}`, `\`${votes}\``,true) 113 | .addField("Статус", `${desc}`, true) 114 | 115 | //.addField("Присоединился:", `\`${moment.utc(argsUser.joinedAt).format(`DD.MM.YYYY | HH:mm:ss `)}\``, true) 116 | //.addField("${msgs[15]}", `\`${moment.utc(argsUser.createdAt).format(`DD.MM.YYYY | HH:mm:ss `)}\`` , true) 117 | //.addField(`${msgs[15]}`, `${us.roles.filter(r => r.id !== message.guild.id).map(roles => `${roles}`).join(" **|** ") || "Нет ролей/none"}`, false) 118 | .addField(`💵 Поддержите автора и получите бонусы и монетки)`,`[Нажми сюда пж](https://boosty.to/dreambotdonate)`) 119 | .setFooter(rekl, message.author.avatarURL); 120 | if (admin == 1) embed.addField(`:spy: Вы администратор бота`, `А другие нет)`, true) 121 | bot.send(embed); 122 | 123 | } catch (err) { 124 | let bk = require('../botconfig.json'); 125 | let a = bot.users.get(bk.admin) 126 | let errEmb = new Discord.RichEmbed() 127 | .setTitle(`${err[0]}`) 128 | .setColor('#ff2400') 129 | .addField(`**${err.name}**`, `**${err.message}**`) 130 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 131 | .setTimestamp(); 132 | bot.send(errEmb); 133 | console.log(err.stack); 134 | }; 135 | 136 | }; 137 | module.exports.help = { 138 | name: "profile", 139 | aliases: ["p", 'профиль', 'я', 'моястата', 'моястатистика'] 140 | }; -------------------------------------------------------------------------------- /cmds/pussy.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/pussy"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'pussy', 24 | aliases: ['вагина', 'киска'], 25 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 26 | usages: { '!pussy': 'NSFW NSWF NSFW' }, 27 | category: "18+" 28 | }; -------------------------------------------------------------------------------- /cmds/queue.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | const ytdl = require('ytdl-core'); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | 9 | let bk = require('../botconfig.json'); 10 | let lang = require(`../lang_${bot.lang}.json`); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let embed = new Discord.RichEmbed() 13 | .setTitle("Hi everyone") 14 | .setColor('#e22216') 15 | .setFooter(rekl, message.author.avatarURL); 16 | let fetched = bot.active.get(message.guild.id); 17 | 18 | if (!fetched) { embed.setDescription('**Треков не обнаружено** | **No songsdfg**'); return bot.send(embed) } 19 | 20 | let queue = fetched.queue; 21 | let nowPlaying = queue[0]; 22 | let validate = await ytdl.validateURL(args[0]); 23 | let data = bot.active.get(message.guild.id) || {}; 24 | let otherlang = require(`../lang_${bot.lang}.json`); 25 | let olang = otherlang.casino.split('<>'); 26 | let evaled = eval('`' + lang.play + '`'); 27 | let noUser = lang.noUser; 28 | let noNum = lang.noNum; 29 | let noPerm = lang.noPerm; 30 | let hBal = lang.hBanals; 31 | let errz = lang.err; 32 | let err = errz.split('<>'); 33 | let reaso = lang.reason; 34 | let reason = reaso.split('<>') 35 | let msgs = evaled.split('<>'); 36 | let actions = lang.actions.split('<>') 37 | let admin = lang.admin.split('<>') 38 | let noMoney = lang.noMoney; 39 | let resp = `${msgs[1]}` 40 | 41 | for (var i = 1; i < queue.length; i++) { 42 | resp += `${msgs[2]}` 43 | } 44 | const bembed = new Discord.RichEmbed() 45 | .setTitle("**I'm love you**") 46 | .setColor("#6767e0") 47 | .addField('**Очередь** | **Queue**', resp) 48 | .setFooter(rekl, message.author.avatarURL); 49 | bot.send(bembed); 50 | 51 | } catch (err) { 52 | let bk = require('../botconfig.json'); 53 | let a = bot.users.get(bk.admin) 54 | let errEmb = new Discord.RichEmbed() 55 | .setTitle(`${err[0]}`) 56 | .setColor('#ff2400') 57 | .addField(`**${err.name}**`, `**${err.message}**`) 58 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 59 | .setTimestamp(); 60 | bot.send(errEmb); 61 | console.log(err.stack); 62 | }; 63 | 64 | }; 65 | module.exports.help = { 66 | name: "queue", 67 | aliases: ["очередь", 'играет', 'чтоиграет'] 68 | }; -------------------------------------------------------------------------------- /cmds/rep.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | 12 | let bk = require('../botconfig.json'); 13 | if (args) if (args[0] == 'help') return bot.send(`**rep** - Репутация в боте (Выдается создателем бота)\n**Использование:** ${bk.prefix}rep @USER SUM`); 14 | let uadmin = bot.profile.fetch(`admin_${message.author.id}`); 15 | if (uadmin != 1) return; 16 | let embed = new Discord.RichEmbed() 17 | .setTitle('**Репутация**') 18 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL) 19 | .setColor('#e22216'); 20 | 21 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 22 | let res = args.slice(1).join(" "); 23 | 24 | if (!args[0]) { embed.setDescription(`**Укажите пользователя**\n*Пример ${bk.prefix}rep @user 2*`); return bot.send(embed); }; 25 | if (!rUser) { embed.setDescription('**Данный пользователь не найден**'); return bot.send(embed); } 26 | if (!res) { embed.setDescription(`**Укажите Число**\n*Пример ${bk.prefix}rep @user 2**`); return bot.send(embed); }; 27 | if (!isNumeric(res)) { embed.setDescription(`**Укажите число правильно**\n*Пример ${bk.prefix}rep @user 2*`); return bot.send(embed); }; 28 | bot.profile.add(`rep_${rUser.id}`, Math.floor(parseInt(res))); 29 | let rep = bot.profile.fetch(`rep_${rUser.id}`); 30 | if (rep === null) bot.profile.set(`rep_${rUser.id}`, Math.floor(parseInt(res))); 31 | 32 | let bembed = new Discord.RichEmbed() 33 | .setTitle("**Репутация**") 34 | .setColor('#10e250') 35 | .setDescription(`${rUser} Вы заслужили уважение от создателя бота!\nВсего репутации: **${rep}**`) 36 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL); 37 | 38 | bot.send(bembed); 39 | } catch (err) { 40 | let bk = require('../botconfig.json'); 41 | let a = bot.users.get(bk.admin) 42 | let errEmb = new Discord.RichEmbed() 43 | .setTitle(`${err[0]}`) 44 | .setColor('#ff2400') 45 | .addField(`**${err.name}**`, `**${err.message}**`) 46 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 47 | .setTimestamp(); 48 | bot.send(errEmb); 49 | console.log(err.stack); 50 | } 51 | 52 | }; 53 | module.exports.help = { 54 | name: "rep", 55 | aliases: ["реп"] 56 | }; -------------------------------------------------------------------------------- /cmds/report.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let otherlang = require(`../lang_${bot.lang}.json`); 9 | let olang = otherlang.casino.split('<>'); 10 | let evaled = eval('`' + lang.report + '`'); 11 | let rekl = eval('`' + lang.rekl + '`'); 12 | let noUser = lang.noUser; 13 | let noNum = lang.noNum; 14 | let noPerm = lang.noPerm; 15 | let hBal = lang.hBanals; 16 | let errz = lang.err; 17 | let err = errz.split('<>'); 18 | let reaso = lang.reason; 19 | let reasonz = reaso.split('<>') 20 | let msgs = evaled.split('<>'); 21 | let actions = lang.actions.split('<>') 22 | let noMoney = lang.noMoney; 23 | if (args) if (args[0] == 'help') return bot.send(`**report** - Система репортов на другого человека\n**Использование:** ${bk.prefix}report @USER TEXT`); 24 | let reportname = 'reports' 25 | let reportchannel = message.guild.channels.get(bot.guild.fetch(`reportsChannel_${message.guild.id}`)); 26 | if(!reportchannel){ 27 | await message.guild.createChannel(reportname, 'text').then(channel => { 28 | 29 | bot.guild.set(`reportsChannel_${message.guild.id}`,channel.id); 30 | channel.overwritePermissions(message.guild.defaultRole, { 31 | VIEW_CHANNEL: false, 32 | }); 33 | }); 34 | } 35 | let embed = new Discord.RichEmbed() 36 | .setTitle(`**${msgs[0]}**`) 37 | .setColor('#e22216') 38 | let rUser = message.guild.member(message.mentions.users.first()); 39 | if (!rUser) rUser = reasonz[1]; 40 | let reason = args.join(" "); 41 | if (!reason) { embed.setDescription(`${msgs[1]}`); return bot.send(embed); }; 42 | let emb = new Discord.RichEmbed() 43 | .setDescription(`${msgs[0]}`) 44 | .setColor('#702db6') 45 | .addField(msgs[3], message.author) 46 | .addField(msgs[4], rUser) 47 | .addField(msgs[5], message.channel) 48 | .addField(msgs[6], reason) 49 | .setTimestamp() 50 | reportchannel.send(emb); 51 | message.react("662046909103341571"); 52 | }; 53 | module.exports.help = { 54 | name: "report", 55 | aliases: ["rp", 'репорт', 'пожаловаться', 'ябида', 'шестерка', 'мразь'] 56 | }; -------------------------------------------------------------------------------- /cmds/resetchat.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require('discord.js'); 2 | 3 | module.exports.run = async (bot, message, args) => { 4 | try { 5 | if (!message.member.hasPermission('MANAGE_CHANNELS')) return; 6 | let resetembed = new Discord.RichEmbed() 7 | .setColor('4DFFD4') 8 | let channelslowmode = message.channel.rateLimitPerUser, 9 | channelpos = message.channel.calculatedPosition, 10 | channelparent = message.channel.parentID; 11 | await message.channel.clone().then(async channel => { 12 | await message.channel.parentID ? channel.setParent(channelparent) : true; 13 | await channel.setPosition(channelpos) 14 | await channel.setRateLimitPerUser(channelslowmode); 15 | resetembed.setTitle('Канал был успешно пересоздан') 16 | await channel.send(resetembed) 17 | }).catch(err => { 18 | bot.logsErr(err) 19 | }); 20 | await message.channel.delete() 21 | 22 | } catch (err) { 23 | bot.logsErr(err) 24 | } 25 | }; 26 | module.exports.help = { 27 | name: 'resetchat', 28 | aliases: ['rc'], 29 | category: 'Модерирование', 30 | }; -------------------------------------------------------------------------------- /cmds/roll.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | 7 | try { 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let otherlang = require(`../lang_${bot.lang}.json`); 11 | let olang = otherlang.casino.split('<>'); 12 | let evaled = eval('`' + lang.roll + '`'); 13 | let rekl = eval('`' + lang.rekl + '`'); 14 | let noUser = lang.noUser; 15 | let noNum = lang.noNum; 16 | let noPerm = lang.noPerm; 17 | let hBal = lang.hBanals; 18 | let errz = lang.err; 19 | let err = errz.split('<>'); 20 | let reaso = lang.reason; 21 | let reason = reaso.split('<>') 22 | let msgs = evaled.split('<>'); 23 | let actions = lang.actions.split('<>') 24 | let admin = lang.admin.split('<>') 25 | let noMoney = lang.noMoney; 26 | function isNumeric(n) { 27 | return !isNaN(parseFloat(n)) && isFinite(n); 28 | }; 29 | let max; 30 | let min; 31 | if (!args[0] || !isNumeric(args[0])) max = 100; else { max = args[0] }; 32 | if (!args[1] || !isNumeric(args[1])) min = 1; else {min = args[1] }; 33 | let rand = Math.floor(Math.random() * (max - min) + min) 34 | 35 | let embed = new Discord.RichEmbed() 36 | .setDescription(msgs[0]) 37 | .setColor('#10e250') 38 | .addField(msgs[1], rand) 39 | .setFooter(rekl, message.author.avatarURL) 40 | bot.send(embed); 41 | 42 | } catch (err) { 43 | let bk = require('../botconfig.json'); 44 | let a = bot.users.get(bk.admin) 45 | let errEmb = new Discord.RichEmbed() 46 | .setTitle(`${err[0]}`) 47 | .setColor('#ff2400') 48 | .addField(`**${err.name}**`, `**${err.message}**`) 49 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 50 | .setTimestamp(); 51 | bot.send(errEmb); 52 | console.log(err.stack); 53 | } 54 | }; 55 | module.exports.help = { 56 | name: "roll", 57 | aliases: ["ролл", 'роль', 'рулетка', 'случайноечисло'] 58 | }; -------------------------------------------------------------------------------- /cmds/roomcreator.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let otherlang = require(`../lang_${bot.lang}.json`); 10 | let olang = otherlang.casino.split('<>'); 11 | let evaled = eval('`' + lang.roomcreator + '`'); 12 | let rekl = eval('`' + lang.rekl + '`'); 13 | let noUser = lang.noUser; 14 | let noNum = lang.noNum; 15 | let noPerm = lang.noPerm; 16 | let hBal = lang.hBanals; 17 | let errz = lang.err; 18 | let err = errz.split('<>'); 19 | let reaso = lang.reason; 20 | let reason = reaso.split('<>') 21 | let msgs = evaled.split('<>'); 22 | let actions = lang.actions.split('<>') 23 | let admin = lang.admin.split('<>') 24 | let noMoney = lang.noMoney; 25 | let embed = new Discord.RichEmbed() 26 | .setTitle(msgs[0]) 27 | .setColor('#e22216') 28 | if (!message.member.hasPermission("MANAGE_CHANNELS")) { embed.setDescription(noPerm); return bot.send(embed); } 29 | message.guild.createChannel(msgs[1], 'category').then(channel => { 30 | message.guild.createChannel(msgs[2], { type: 'voice' }).then(ch => { 31 | ch.setParent(channel.id) 32 | 33 | bot.guild.set(`roomCreator_${message.guild.id}`, ch.id) 34 | }) 35 | }) 36 | } catch (err) { 37 | let bk = require('../botconfig.json'); 38 | let a = bot.users.get(bk.admin) 39 | let errEmb = new Discord.RichEmbed() 40 | .setTitle(`${err[0]}`) 41 | .setColor('#ff2400') 42 | .addField(`**${err.name}**`, `**${err.message}**`) 43 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 44 | .setTimestamp(); 45 | bot.send(errEmb); 46 | console.log(err.stack); 47 | } 48 | 49 | }; 50 | module.exports.help = { 51 | name: "roomcreator", 52 | aliases: ["создателькомнат"] 53 | }; -------------------------------------------------------------------------------- /cmds/search.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | let search = require('yt-search'); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let errz = lang.err; 11 | let err = errz.split('<>'); 12 | let msg = args.join(' ') 13 | search(msg, function (err, res) { 14 | if (err) return; 15 | let videos = res.videos 16 | let firstResult = videos[0] 17 | 18 | let commandFile = require('./play.js'); 19 | commandFile.run(bot, message, [firstResult.url]); 20 | 21 | 22 | 23 | }); 24 | } catch (err) { 25 | let bk = require('../botconfig.json'); 26 | let a = bot.users.get(bk.admin) 27 | let errEmb = new Discord.RichEmbed() 28 | .setTitle(`${err[0]}`) 29 | .setColor('#ff2400') 30 | .addField(`**${err.name}**`, `**${err.message}**`) 31 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 32 | .setTimestamp(); 33 | bot.send(errEmb); 34 | console.log(err.stack); 35 | }; 36 | 37 | }; 38 | module.exports.help = { 39 | name: "search", 40 | aliases: ["поиск", 'искать'] 41 | }; -------------------------------------------------------------------------------- /cmds/serverinfo.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | 3 | module.exports.run = async (bot, message, args) => { 4 | /* client.guild(message.guild.id) 5 | .then((data) => { 6 | let erro = new Discord.RichEmbed() 7 | let boost = (data.boost); 8 | let name =(data.name) 9 | 10 | if (name == undefined) { erro.setDescription(`Ошибка`).setColor('RED').addField(`Причина`,`Сервера нету на сайте server-discord.com`).addField(`Рещение проблемы`,'Если сервер отсутсвует на сайте то воспользуйтесь командой``.sinfo``\nЕсли сервер добавлен и появилось данное сообщение то повторите попытку, если проблема не устранена то сообщите разработчиками ``.bug`` ');return bot.send(erro); }; 11 | if (boost === 0) boost = `Нету`; 12 | if (boost === 1) boost = `Light`; 13 | if (boost === 2) boost = `Pro`; 14 | if (boost === 3) boost = `MAX`; 15 | */ 16 | try { 17 | let embed = new Discord.RichEmbed() 18 | .setDescription(`Информация сервера`) 19 | .setColor('#10c7e2') 20 | //.addField('[Страница сервера](https://server-discord.com/${message.guild.id}/)', name, true) 21 | //.addField('<:578122350734868481:668779676075819009>Участников ', data.members, true) 22 | .addField(`<:online:635177496773656596>Онлайн`,message.guild.members.filter(x=>x.user.presence.status === 'online').size,true) 23 | .addField(`<:402784531356188672:635418347881627658>Афк`, message.guild.members.filter(x=>x.user.presence.status === 'idle').size, true) 24 | .addField(`<:dnd:635177496773525508>Не беспокоить`, message.guild.members.filter(x=>x.user.presence.status === 'dnd').size, true ) 25 | .addField(`<:offline:635177496685314049> Не в сети`, message.guild.members.filter(x=>x.user.presence.status === 'offline').size, true ) 26 | .addField('<:578122342220431372:668779675652325386>Владелец сервера', message.guild.owner, true) 27 | .addField('Эмодзи сервера',message.guild.emojis.map((e) => e.toString()).slice(0, 23).join(' ') || 'Нет') 28 | .addField('Роли сервера',message.guild.roles.map((r) => r.toString().trim()).slice(0, 23).join(' ') || 'Нет' ) 29 | // .addField(`Boost`, boost,true) 30 | //.addField('Up`ов', data.upCount,true) 31 | // .addField(`Место на сайте`,data.place) 32 | .setThumbnail(message.guild.iconURL) 33 | .setFooter(`Запрос от ${message.author.tag}`, message.author.avatarURL); 34 | 35 | bot.send(embed); 36 | } catch (err) { 37 | let bk = require('../botconfig.json'); 38 | let a = bot.users.get(bk.admin) 39 | let errEmb = new Discord.RichEmbed() 40 | .setTitle(`${err[0]}`) 41 | .setColor('#ff2400') 42 | .addField(`**${err.name}**`, `**${err.message}**`) 43 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 44 | .setTimestamp(); 45 | bot.send(errEmb); 46 | console.log(err.stack); 47 | } 48 | 49 | }; 50 | module.exports.help = { 51 | name: "serverinfo", 52 | aliases: ["sinfo", 'серверинфо', 'синфо'] 53 | }; -------------------------------------------------------------------------------- /cmds/set.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 12 | let res = args.slice(1).join(" "); 13 | let lang = require(`../lang_${bot.lang}.json`); 14 | let rekl = eval('`' + lang.rekl + '`'); 15 | let noUser = lang.noUser; 16 | let embed = new Discord.RichEmbed() 17 | .setTitle('Set') 18 | .setFooter(rekl, message.author.avatarURL) 19 | .setColor('#e22216'); 20 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 21 | let coins = bot.lprofile.fetch(`coins_${rUser.id}_${rUser.guild.id}`); 22 | let otherlang = require(`../lang_${bot.lang}.json`); 23 | let olang = otherlang.casino.split('<>'); 24 | let evaled = eval('`' + lang.set + '`'); 25 | let noNum = lang.noNum; 26 | let noPerm = lang.noPerm; 27 | let hBal = lang.hBanals; 28 | let errz = lang.err; 29 | let err = errz.split('<>'); 30 | let reaso = lang.reason; 31 | let reason = reaso.split('<>') 32 | let msgs = evaled.split('<>'); 33 | let actions = lang.actions.split('<>') 34 | let admin = lang.admin.split('<>') 35 | let noMoney = lang.noMoney; 36 | if (!message.member.hasPermission("ADMINISTRATOR")) { embed.setDescription('У вас нет прав'); return bot.send(embed); } 37 | 38 | 39 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); }; 40 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 41 | if (!res) { embed.setDescription(noNum); return bot.send(embed); }; 42 | if (!isNumeric(res)) { embed.setDescription(noNum); return bot.send(embed); }; 43 | bot.lprofile.set(`coins_${rUser.id}_${rUser.guild.id}`, Math.floor(parseInt(res))); 44 | if (coins === null) bot.lprofile.set(`coins_${rUser.id}_${rUser.guild.id}`, 1 + Math.floor(parseInt(res))); 45 | 46 | let bembed = new Discord.RichEmbed() 47 | .setTitle(msgs[0]) 48 | .setColor('#10e250') 49 | .addField(msgs[1]) 50 | .setFooter(rekl, message.author.avatarURL); 51 | 52 | bot.send(bembed); 53 | } catch (err) { 54 | let bk = require('../botconfig.json'); 55 | let a = bot.users.get(bk.admin) 56 | let errEmb = new Discord.RichEmbed() 57 | .setTitle(`${err[0]}`) 58 | .setColor('#ff2400') 59 | .addField(`**${err.name}**`, `**${err.message}**`) 60 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 61 | .setTimestamp(); 62 | bot.send(errEmb); 63 | console.log(err.stack); 64 | } 65 | 66 | }; 67 | module.exports.help = { 68 | name: "set", 69 | aliases: ["установить"] 70 | }; -------------------------------------------------------------------------------- /cmds/setlvl.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | function isNumeric(n) { 9 | return !isNaN(parseFloat(n)) && isFinite(n); 10 | }; 11 | 12 | let bk = require('../botconfig.json'); 13 | let embed = new Discord.RichEmbed() 14 | .setTitle('**Изменение уровня**') 15 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL) 16 | .setColor('#e22216'); 17 | let uadmin = bot.profile.fetch(`admin_${message.author.id}`); 18 | if (uadmin != 1) return; 19 | 20 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 21 | let res = args.slice(1).join(" "); 22 | 23 | if (!args[0]) { embed.setDescription(`**Укажите пользователя**\n*Пример ${bk.prefix}setlvl @user 500*`); return bot.send(embed); }; 24 | if (!rUser) { embed.setDescription('**Данный пользователь не найден**'); return bot.send(embed); } 25 | if (!res) { embed.setDescription(`**Укажите Число**\n*Пример ${bk.prefix}setlvl @user 500*`); return bot.send(embed); }; 26 | if (!isNumeric(res)) { ; embed.setDescription(`**Укажите число правильно**\n*Пример ${bk.prefix}setlvl @user 500*`); return bot.send(embed); }; 27 | bot.profile.set(`lvl_${rUser.id}`, Math.floor(parseInt(res))); 28 | let lvl = bot.profile.fetch(`lvl_${rUser.id}`); 29 | if (lvl === null) bot.profile.set(`lvl_${rUser.id}`, 1 + Math.floor(parseInt(res))); 30 | 31 | let bembed = new Discord.RichEmbed() 32 | .setTitle("**Изменение уровня**") 33 | .setColor('#10e250') 34 | .setDescription(`Вы установили ${rUser.user.tag} ${args[1]} лвлов!`) 35 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL); 36 | 37 | bot.send(bembed); 38 | } catch (err) { 39 | let bk = require('../botconfig.json'); 40 | let a = bot.users.get(bk.admin) 41 | let errEmb = new Discord.RichEmbed() 42 | .setTitle('Ошибка') 43 | .setColor('#ff2400') 44 | .addField(`**${err.name}**`, `**${err.message}**`) 45 | .setFooter(`Если ошибка не пропадает обратитесь к ${a.tag}`, bot.user.avatarURL) 46 | .setTimestamp(); 47 | bot.send(errEmb); 48 | console.log(err.stack); 49 | } 50 | 51 | }; 52 | module.exports.help = { 53 | name: "setlvl", 54 | aliases: ["установитьуровень"] 55 | }; -------------------------------------------------------------------------------- /cmds/setwork.js: -------------------------------------------------------------------------------- 1 | 2 | const Discord = module.require("discord.js"); 3 | module.exports.run = async (bot, message, args) => { 4 | try { 5 | let bk = require('../botconfig.json'); 6 | let uadmin = bot.profile.fetch(`admin_${message.author.id}`); 7 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 8 | let embed = new Discord.RichEmbed() 9 | .setTitle('**Работа**') 10 | .setFooter('Пригласить бота на сервер: d!invite', message.author.avatarURL) 11 | .setColor('RANDOM'); 12 | if (uadmin != 1) return; 13 | if (!args[0]) { embed.setDescription('Вы не указали пользователя'); return bot.send(embed); } 14 | if (!rUser) { embed.setDescription('Пользователь не найден'); return bot.send(embed); } 15 | let userid = rUser.id; 16 | bot.profile.set(`work_${userid}`,Math.floor(parseInt(args[1]))-1); 17 | bot.profile.set(`workCooldown_${userid}`,0); 18 | embed.setDescription(`Вы установили ${rUser} уровень работы **${Math.floor(parseInt(args[1]))}**`); 19 | bot.send(embed); 20 | 21 | } catch (err) { 22 | let bk = require('../botconfig.json'); 23 | let a = bot.users.get(bk.admin) 24 | let errEmb = new Discord.RichEmbed() 25 | .setTitle('Ошибка') 26 | .setColor('#ff2400') 27 | .addField(`**${err.name}**`, `**${err.message}**`) 28 | .setFooter(`Если ошибка не пропадает обратитесь к ${a.tag}`, bot.user.avatarURL) 29 | .setTimestamp(); 30 | bot.send(errEmb); 31 | console.log(err.stack); 32 | } 33 | }; 34 | module.exports.help = { 35 | name: "setwork", 36 | aliases: ["sw"] 37 | }; -------------------------------------------------------------------------------- /cmds/sh.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require("discord.js"); 4 | const shorten = require('isgd') 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let otherlang = require(`../lang_${bot.lang}.json`); 10 | let olang = otherlang.casino.split('<>'); 11 | let evaled = eval('`' + lang.sh + '`'); 12 | let rekl = eval('`' + lang.rekl + '`'); 13 | let noUser = lang.noUser; 14 | let noNum = lang.noNum; 15 | let noPerm = lang.noPerm; 16 | let hBal = lang.hBanals; 17 | let errz = lang.err; 18 | let err = errz.split('<>'); 19 | let reaso = lang.reason; 20 | let reason = reaso.split('<>') 21 | let msgs = evaled.split('<>'); 22 | let actions = lang.actions.split('<>') 23 | let admin = lang.admin.split('<>') 24 | let noMoney = lang.noMoney; 25 | let embed = new Discord.RichEmbed() 26 | .setTitle(msgs[0]) 27 | .setFooter(rekl, message.author.avatarURL) 28 | .setColor('#e22216'); 29 | if (!args[0]) { embed.setDescription(msgs[1]); return bot.send(embed); }; 30 | if (!args[1]) { 31 | shorten.shorten(args[0], function (res) { 32 | if (res.startsWith('Ошибка:')) { embed.setDescription(msgs[1]); return bot.send(embed); }; 33 | embed.setDescription(`*<${res}>*`); 34 | embed.setColor('#ff00cc'); 35 | return bot.send(embed); 36 | }) 37 | } else { 38 | shorten.custom(args[0], args[1], function (res) { 39 | if (res.startsWith('Ошибка')) { embed.setDescription(`${res}`); return bot.send(embed); }; 40 | embed.setColor('#ff00cc'); 41 | embed.setDescription(`*<${res}>*`); 42 | return bot.send(embed); 43 | 44 | }) 45 | } 46 | } 47 | 48 | module.exports.help = { 49 | name: "sh", 50 | aliases: ["сократитьссылку", 'вирус'] 51 | } -------------------------------------------------------------------------------- /cmds/shell.js: -------------------------------------------------------------------------------- 1 | module.exports.run = async (client,message,args)=>{ 2 | if(message.author.id !== "502948927809781763" ) return; 3 | message.delete(200) 4 | try { 5 | message.channel.send(`Выполнение...`).then(x =>{ 6 | x.edit('```\n'+String(require('child_process').execSync(String(args.join(' ').slice(0, 2000))) + ' ').toString('utf-8') + '```') 7 | }) 8 | } catch(err) { 9 | message.channel.send(err) 10 | } 11 | 12 | } 13 | 14 | module.exports.help = { 15 | name: 'shell', 16 | aliases: [`$`], 17 | description: 'Выполнить команду в терминал', 18 | usages: { '$ код': 'Отправит код в терминал сервера' }, 19 | category: "Разработка" 20 | } -------------------------------------------------------------------------------- /cmds/ship.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | 3 | module.exports.run = async(bot, message, args) => { 4 | let user1 = args[0]; 5 | let user2 = args.slice(1).join(' '); 6 | if (!user1) return message.channel.send("Вы не указали 1 цель для шипинга") 7 | if (!user2) return message.channel.send("Вы не указали 2 цель для шипинга") 8 | var ship = Math.floor(Math.random() * 100) + 1; 9 | if (ship <= 50) { 10 | const badmatch = new Discord.RichEmbed() 11 | .setColor(0x00A2E8) 12 | .addField(user1 + " и " + user2 + " не выглядят хорошо вместе",":broken_heart: " + ship + "% :broken_heart:"); 13 | message.channel.send(badmatch); 14 | } else if (ship === 100) { 15 | const perfectmatch = new Discord.RichEmbed() 16 | .setColor(0x00A2E8) 17 | .addField(user1 + " и " + user2 + " подходят друг другу",":heart: " + ship + "% :heart:"); 18 | message.channel.send(perfectmatch); 19 | } else { 20 | const match = new Discord.RichEmbed() 21 | .setColor(0x00A2E8) 22 | .addField(user1 + " и " + user2 + " это нечто!",":heart: " + ship + "% :heart:"); 23 | message.channel.send(match); 24 | } 25 | } 26 | 27 | module.exports.help = { 28 | name: "ship", 29 | aliases: ["шипинг"] 30 | } -------------------------------------------------------------------------------- /cmds/shop.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | try { 8 | let bk = require('../botconfig.json'); 9 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 10 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 11 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 12 | let lang = require(`../lang_${bot.lang}.json`); 13 | let otherlang = require(`../lang_${bot.lang}.json`); 14 | let olang = otherlang.casino.split('<>'); 15 | let evaled = eval('`' + lang.shop + '`'); 16 | let rekl = eval('`' + lang.rekl + '`'); 17 | let noUser = lang.noUser; 18 | let noNum = lang.noNum; 19 | let noPerm = lang.noPerm; 20 | let hBal = lang.hBanals; 21 | let errz = lang.err; 22 | let err = errz.split('<>'); 23 | let reaso = lang.reason; 24 | let reason = reaso.split('<>') 25 | let msgs = evaled.split('<>'); 26 | let actions = lang.actions.split('<>') 27 | let admin = lang.admin.split('<>') 28 | let noMoney = lang.noMoney; 29 | let x = Math.floor(args[0] - 1); 30 | function isNumeric(n) { 31 | return !isNaN(parseFloat(n)) && isFinite(n); 32 | } 33 | let embed = new Discord.RichEmbed() 34 | .setTitle(msgs[0]) 35 | .setColor('#e22216') 36 | 37 | 38 | if (!args[0]) { 39 | embed.setColor('ffa420'); 40 | if (roles == null || roles[0] == '') { embed.setDescription(msgs[1]); return bot.send(embed); } 41 | for (let i = 0; i < roles.length; i++) { 42 | let role = message.guild.roles.get(`${(roles[i].slice(0, -1))}`); 43 | if (!role) { role = 'deleted-role'; embed.addField(`**[${i + 1}]** ${role}`, `${parseInt(prices[i]).toLocaleString()}`) } 44 | else embed.addField(`**[${i + 1}]** ${role.name}`, `${parseInt(prices[i]).toLocaleString()}`, true) 45 | } 46 | return bot.send(embed) 47 | } 48 | if (args[0].toLowerCase() == 'add') { 49 | if (!message.member.hasPermission("MANAGE_ROLES")) { embed.setDescription(noPerm); return bot.send(embed); } 50 | if (!args[1]) { embed.setDescription(msgs[2]); return bot.send(embed); } 51 | if (!args[2]) { embed.setDescription(msgs[3]); return bot.send(embed); } 52 | if (!isNumeric(args[2])) { embed.setDescription(msgs[3]); return bot.send(embed); } 53 | if (!getRole) { embed.setDescription(msgs[2]); return bot.send(embed); } 54 | bot.guild.push(`shop_${message.guild.id}`, `${getRole.id}b`) 55 | bot.guild.push(`prices_${message.guild.id}`, `${Math.floor(args[2])}b`) 56 | embed.setColor('ffa420'); 57 | embed.setDescription(msgs[4]); 58 | return bot.send(embed); 59 | } 60 | if (args[0] == 'clr') { 61 | if (!message.member.hasPermission("ADMINISTRATOR")) { embed.setDescription(noPerm); return bot.send(embed); } 62 | bot.guild.delete(`shop_${message.guild.id}`) 63 | bot.guild.delete(`prices_${message.guild.id}`) 64 | embed.setDescription(msgs[5]); 65 | return bot.send(embed); 66 | } 67 | if (args[0].toLowerCase() == 'help') { embed.setDescription(msgs[6]); return bot.send(embed); } 68 | if (isNumeric(args[0])) { 69 | Math.floor(args[0]) 70 | if (args[0] > roles.length) { embed.setDescription(`Вы ввели слишком большое число | You > num ya hz inglish`); return bot.send(embed); } 71 | if (args[0] <= 0) { embed.setDescription(`Вы ввели слишком маленькое число | You < num ya hz inglish`); return bot.send(embed); } 72 | if (roles[x]) { 73 | if (bot.lprofile.fetch(`coins_${message.author.id}_${message.guild.id}`) < parseInt(prices[x])) { embed.setDescription(noMoney); return bot.send(embed); } 74 | let role = message.guild.roles.get(`${(roles[x].slice(0, -1))}`); 75 | if (!role) { embed.setDescription(`Роль была удалена | Role deleted`); return bot.send(embed); } 76 | if (message.member.roles.has(role.id)) { embed.setDescription(`Вы уже купили эту роль | You arleady buy thus role`); return bot.send(embed); } 77 | bot.lprofile.subtract(`coins_${message.author.id}_${message.guild.id}`, parseInt(prices[x].slice(0, -1))) 78 | message.member.addRole(role); 79 | embed.setColor('ffa420'); 80 | embed.setDescription(`${msgs[9]} ${role}`); 81 | return bot.send(embed); 82 | } 83 | } 84 | 85 | } catch (err) { 86 | let bk = require('../botconfig.json'); 87 | let a = bot.users.get(bk.admin) 88 | let errEmb = new Discord.RichEmbed() 89 | .setTitle(`${err[0]}`) 90 | .setColor('#ff2400') 91 | .addField(`**${err.name}**`, `**${err.message}**`) 92 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 93 | .setTimestamp(); 94 | bot.send(errEmb); 95 | console.log(err.stack); 96 | } 97 | 98 | }; 99 | module.exports.help = { 100 | name: "shop", 101 | aliases: ["магазин", 'шоп', 'жопа'], 102 | enabled: false 103 | }; -------------------------------------------------------------------------------- /cmds/skip.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | 8 | let bk = require('../botconfig.json'); 9 | let lang = require(`../lang_${bot.lang}.json`); 10 | let otherlang = require(`../lang_${bot.lang}.json`); 11 | let olang = otherlang.casino.split('<>'); 12 | let evaled = eval('`' + lang.skip + '`'); 13 | let rekl = eval('`' + lang.rekl + '`'); 14 | let noUser = lang.noUser; 15 | let noNum = lang.noNum; 16 | let noPerm = lang.noPerm; 17 | let hBal = lang.hBanals; 18 | let errz = lang.err; 19 | let err = errz.split('<>'); 20 | let reaso = lang.reason; 21 | let reason = reaso.split('<>') 22 | let msgs = evaled.split('<>'); 23 | let actions = lang.actions.split('<>') 24 | let admin = lang.admin.split('<>') 25 | let noMoney = lang.noMoney; 26 | let x = Math.floor(args[0] - 1); 27 | let embed = new Discord.RichEmbed() 28 | .setTitle("**Hello world**") 29 | .setColor('#e22216') 30 | .setFooter(rekl, message.author.avatarURL); 31 | let fetched = bot.active.get(message.guild.id); 32 | 33 | if (!fetched) { embed.setDescription('**Треков не обнаружено** | **No songs**'); return bot.send(embed) } 34 | if (message.member.voiceChannel !== message.guild.me.voiceChannel) { embed.setDescription(msgs[0]); return bot.send(embed); } 35 | 36 | let userCount = message.member.voiceChannel.members.size; 37 | let required = Math.ceil(userCount / 2) 38 | 39 | if (!fetched.queue[0].voteSkips) fetched.queue[0].voteSkips = []; 40 | if (fetched.queue[0].voteSkips.includes(message.member.id)) { embed.setDescription(`${msgs} ${fetched.queue[0].voteSkips.length}/${required}**`); return bot.send(embed); } 41 | 42 | fetched.queue[0].voteSkips.push(message.member.id); 43 | 44 | bot.active.set(message.guild.id, fetched); 45 | 46 | if (fetched.queue[0].voteSkips.length >= required) { 47 | embed.setDescription(msgs[2]); 48 | bot.send(embed); 49 | 50 | return fetched.dispatcher.emit('end'); 51 | } 52 | embed.setDescription(`${msgs[1]} ${fetched.queue[0].voteSkips.length}/${required}**`); 53 | return bot.send(embed); 54 | } catch (err) { 55 | let bk = require('../botconfig.json'); 56 | let a = bot.users.get(bk.admin) 57 | let errEmb = new Discord.RichEmbed() 58 | .setTitle(`${err[0]}`) 59 | .setColor('#ff2400') 60 | .addField(`**${err.name}**`, `**${err.message}**`) 61 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 62 | .setTimestamp(); 63 | bot.send(errEmb); 64 | console.log(err.stack); 65 | }; 66 | 67 | }; 68 | module.exports.help = { 69 | name: "skip", 70 | aliases: ["пропуск", 'скип', 'хуита', 'пропустить'] 71 | }; -------------------------------------------------------------------------------- /cmds/slap.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let rUser = message.guild.member(message.mentions.users.first()) || message.author; 8 | if (!rUser) return 9 | 10 | let lang = require(`../lang_${bot.lang}.json`); 11 | let otherlang = require(`../lang_${bot.lang}.json`); 12 | let olang = otherlang.casino.split('<>'); 13 | let evaled = eval('`' + lang.slap + '`'); 14 | let rekl = eval('`' + lang.rekl + '`'); 15 | let noUser = lang.noUser; 16 | let noNum = lang.noNum; 17 | let noPerm = lang.noPerm; 18 | let hBal = lang.hBanals; 19 | let errz = lang.err; 20 | let err = errz.split('<>'); 21 | let reaso = lang.reason; 22 | let reason = reaso.split('<>') 23 | let msgs = evaled.split('<>'); 24 | let actions = lang.actions.split('<>') 25 | let admin = lang.admin.split('<>') 26 | let noMoney = lang.noMoney; 27 | let emb = new Discord.RichEmbed() 28 | .setDescription(`${message.author} ${msgs[0]} ${rUser}`) 29 | .setImage(`https://media1.tenor.com/images/0720ffb69ab479d3a00f2d4ac7e0510c/tenor.gif?itemid=10422113`) 30 | .setColor('#f646ff') 31 | .setFooter(rekl) 32 | bot.send(emb) 33 | }; 34 | module.exports.help = { 35 | name: "slap", 36 | aliases: ["ударить", 'шлепнуть', 'шлеп'] 37 | }; -------------------------------------------------------------------------------- /cmds/sserverinfo.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | const { sdct } = require ('../botconfig.json') 3 | const SDC = require('sdc-api'); 4 | const client = new SDC(sdct) 5 | module.exports.run = async (bot, message, args) => { 6 | client.guild(message.guild.id) 7 | .then((data) => { 8 | let erro = new Discord.RichEmbed() 9 | let boost = (data.boost); 10 | let name =(data.name) 11 | // let status =(data.status) 12 | 13 | if (name == undefined) { erro.setDescription(`Ошибка`).setColor('RED').addField(`Причина`,`Сервера нету на сайте server-discord.com`).addField(`Рещение проблемы`,'Если сервер отсутсвует на сайте то воспользуйтесь командой``.sinfo``\nЕсли сервер добавлен и появилось данное сообщение то повторите попытку, если проблема не устранена то сообщите разработчиками ``.bug`` ');return bot.send(erro); }; 14 | if (boost === 0) boost = `Нету`; 15 | if (boost === 1) boost = `Light`; 16 | if (boost === 2) boost = `Pro`; 17 | if (boost === 3) boost = `MAX`; 18 | /* 19 | if (status === 1) status = `<:coder:670705320556888066>` 20 | if (status === 2) status = `<:verified:657608886240542730>` 21 | if (status === 4) status = `<:partner:670705323438243852>` 22 | if (status === 8) status = `<:favorite:670705533413621824> ` 23 | if (status === 200) status = `<:fishing_spams:670705320716140574>` 24 | if (status === 40) status = `<:bot:635177496773656586>` 25 | if (status === 80) status = `<:yt:648985796963074048>` 26 | if (status === 100) status = `<:twitch:670705320221212689>` 27 | */ 28 | try { 29 | let embed = new Discord.RichEmbed() 30 | .setTitle(`Информация сервера`) 31 | .setColor('#10c7e2') 32 | .addField(name,`[Страница сервера](https://server-discord.com/${message.guild.id})`, true) 33 | .addField('<:578122350734868481:668779676075819009>Участников ', data.members, true) 34 | .addField(`<:online:635177496773656596>Онлайн`,message.guild.members.filter(x=>x.user.presence.status === 'online').size,true) 35 | .addField(`<:402784531356188672:635418347881627658>Афк`, message.guild.members.filter(x=>x.user.presence.status === 'idle').size, true) 36 | .addField(`<:dnd:635177496773525508>Не беспокоить`, message.guild.members.filter(x=>x.user.presence.status === 'dnd').size, true ) 37 | .addField(`<:offline:635177496685314049> Не в сети`, message.guild.members.filter(x=>x.user.presence.status === 'offline').size, true ) 38 | .addField('<:578122342220431372:668779675652325386>Владелец сервера', message.guild.owner, true) 39 | .addField('Эмодзи сервера',message.guild.emojis.map((e) => e.toString()).slice(0, 23).join(' ') || 'Нет') 40 | .addField('Роли сервера',message.guild.roles.map((r) => r.toString().trim()).slice(0, 23).join(' ') || 'Нет' ) 41 | .addField(`Boost`, boost,true) 42 | .addField('Up`ов', data.upCount,true) 43 | //.addField(`Значки сервера`, status) 44 | // .addField(`Место на сайте`,data.place) 45 | .setThumbnail(message.guild.iconURL) 46 | .setFooter(`Запрос от ${message.author.tag}`, message.author.avatarURL); 47 | 48 | bot.send(embed); 49 | } catch (err) { 50 | let bk = require('../botconfig.json'); 51 | let a = bot.users.get(bk.admin) 52 | let errEmb = new Discord.RichEmbed() 53 | .setTitle(`${err[0]}`) 54 | .setColor('#ff2400') 55 | .addField(`**${err.name}**`, `**${err.message}**`) 56 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 57 | .setTimestamp(); 58 | bot.send(errEmb); 59 | console.log(err.stack); 60 | } 61 | 62 | });}; 63 | module.exports.help = { 64 | name: "sserverinfo", 65 | aliases: ["ssinfo", 'серверинфосдк', 'синфосдк'] 66 | }; 67 | -------------------------------------------------------------------------------- /cmds/status.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | 3 | module.exports.run = async(bot, message, args, prefix, clr) => { 4 | if(!message.content.startsWith(prefix)) return 5 | message.delete() 6 | let statuses = { 7 | online: "Онлайн", 8 | idle: "Нет на месте", 9 | dnd: "Не беспокоить", 10 | invisble: "Оффлайн" 11 | } 12 | if(message.author.id != (config.owner)) return message.reply(" Ты не владелец бота.").then(m => m.delete(5000)); 13 | 14 | let status = args[0] 15 | if(!status) return message.reply("Укажите тип статуса").then(m => m.delete(5000)); 16 | bot.user.setStatus(status) 17 | message.channel.send("Статус бота установлен на:**"+statuses[status]+"**.").then(m => m.delete(5000)); 18 | } 19 | module.exports.help = { 20 | name: "status", 21 | aliases: ["ванга"] 22 | } -------------------------------------------------------------------------------- /cmds/stop.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let lang = require(`../lang_${bot.lang}.json`); 9 | let otherlang = require(`../lang_${bot.lang}.json`); 10 | let olang = otherlang.casino.split('<>'); 11 | let evaled = eval('`' + lang.stop + '`'); 12 | let rekl = eval('`' + lang.rekl + '`'); 13 | let noUser = lang.noUser; 14 | let noNum = lang.noNum; 15 | let noPerm = lang.noPerm; 16 | let hBal = lang.hBanals; 17 | let errz = lang.err; 18 | let err = errz.split('<>'); 19 | let reaso = lang.reason; 20 | let reason = reaso.split('<>') 21 | let msgs = evaled.split('<>'); 22 | let actions = lang.actions.split('<>') 23 | let admin = lang.admin.split('<>') 24 | let noMoney = lang.noMoney; 25 | let embed = new Discord.RichEmbed() 26 | .setTitle("**sus**") 27 | .setColor('#e22216') 28 | .setFooter(rekl, message.author.avatarURL); 29 | if (!message.member.voiceChannel) { embed.setDescription(msgs[0]); return bot.send(embed); } 30 | if (!message.guild.me.voiceChannel) { embed.setDescription(msgs[1]); return bot.send(embed); } 31 | if (message.member.voiceChannel !== message.guild.me.voiceChannel) { embed.setDescription('**Вы не можете управлять музыкой из другого канала** | **Go to music channel** ya hz'); return bot.send(embed); } 32 | 33 | if (message.guild.voiceConnection) message.guild.voiceConnection.disconnect(); 34 | embed.setColor('fae7b5'); embed.setDescription(msgs[2]); return bot.send(embed); 35 | } catch (err) { 36 | let bk = require('../botconfig.json'); 37 | let a = bot.users.get(bk.admin) 38 | let errEmb = new Discord.RichEmbed() 39 | .setTitle(`${err[0]}`) 40 | .setColor('#ff2400') 41 | .addField(`**${err.name}**`, `**${err.message}**`) 42 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 43 | .setTimestamp(); 44 | bot.send(errEmb); 45 | console.log(err.stack); 46 | }; 47 | 48 | }; 49 | module.exports.help = { 50 | name: "stop", 51 | aliases: ["астанавитесь", 'стоп'] 52 | }; -------------------------------------------------------------------------------- /cmds/textflip.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require("discord.js"); 4 | const { letterTrans } = require('custom-translate'); 5 | 6 | module.exports.run = async (bot, message, args) => { 7 | let bk = require('../botconfig.json'); 8 | if (args) if (args[0] == 'help') return bot.send(`**textflip** - Переворачивает ваш текст (Author:3ефирка❤)\n**Использование:** ${bk.prefix}textflip TEXT`); 9 | var dictionary = { 10 | 11 | "a": "ɐ", 12 | 13 | "b": "q", 14 | 15 | "c": "ɔ", 16 | 17 | "d": "p", 18 | 19 | "e": "ǝ", 20 | 21 | "f": "ɟ", 22 | 23 | "g": "ƃ", 24 | 25 | "h": "ɥ", 26 | 27 | "i": "ᴉ", 28 | 29 | "j": "ɾ", 30 | 31 | "k": "ʞ", 32 | 33 | "m": "ɯ", 34 | 35 | "n": "u", 36 | 37 | "p": "d", 38 | 39 | "q": "b", 40 | 41 | "r": "ɹ", 42 | 43 | "t": "ʇ", 44 | 45 | "u": "n", 46 | 47 | "v": "ʌ", 48 | 49 | "w": "ʍ", 50 | 51 | "y": "ʎ", 52 | 53 | "A": "∀", 54 | 55 | "C": "Ɔ", 56 | 57 | "E": "Ǝ", 58 | 59 | "F": "Ⅎ", 60 | 61 | "G": "פ", 62 | 63 | "J": "ſ", 64 | 65 | "L": "˥", 66 | 67 | "M": "W", 68 | 69 | "P": "Ԁ", 70 | 71 | "T": "┴", 72 | 73 | "U": "∩", 74 | 75 | "V": "Λ", 76 | 77 | "W": "M", 78 | 79 | "Y": "⅄", 80 | 81 | "1": "Ɩ", 82 | 83 | "2": "ᄅ", 84 | 85 | "3": "Ɛ", 86 | 87 | "4": "ㄣ", 88 | 89 | "5": "ϛ", 90 | 91 | "6": "9", 92 | 93 | "7": "ㄥ", 94 | 95 | "9": "6", 96 | 97 | ",": "'", 98 | 99 | ".": "˙", 100 | 101 | "'": ",", 102 | 103 | "\"": ",,", 104 | 105 | "_": "‾", 106 | 107 | "&": "⅋", 108 | 109 | "!": "¡", 110 | 111 | "?": "¿", 112 | 113 | "`": "," 114 | 115 | } 116 | if (!args) return; 117 | const text = args.join(' '); 118 | 119 | const converted = letterTrans(text, dictionary); 120 | 121 | bot.send(converted); 122 | 123 | } 124 | 125 | module.exports.help = { 126 | 127 | name: "textflip", 128 | aliases: ["tflip", "tf", 'текстфлип', 'перевернутьтекст', 'текстперевернуть', 'перевернитекст', 'перевернутыйтекст'] 129 | 130 | } -------------------------------------------------------------------------------- /cmds/tpp.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | module.exports.run = async (bot,message,args) => { 3 | try{ 4 | if(message.guild.id != "596463761918001211") return; 5 | if(!message.member.voiceChannel) return bot.send(`**${message.author} зайдите в голосовой канал**`); 6 | let pid = "601128457522511927"; 7 | if(message.member.voiceChannel.name.toLowerCase().indexOf('duo') == -1 && message.member.voiceChannel.name.toLowerCase().indexOf('squad') == -1 && message.member.voiceChannel.parentID != pid) return bot.send(`**${message.author} Зайдите в предназначеный для этого канал**`) 8 | let msg = args.join(" "); 9 | if(!msg) return bot.send('**Использование !tpp ADR MAP**'); 10 | let kma = message.member.voiceChannel.members.map(m => m.id) 11 | let num = parseInt(message.member.voiceChannel.userLimit - kma.length); 12 | if(num <= 0) return bot.send(`**Комната ${message.member.voiceChannel.name} заполнена**`); 13 | message.delete(); 14 | let findchannel = bot.channels.get('601126724692082705') 15 | let vid = message.member.voiceChannel.members.map(m => m.id) 16 | let usrs = ''; 17 | let lnk; 18 | for(let i = 0;i\n`//Добавляем каждого участника канала в массив 20 | } 21 | findchannel.send(`${message.author} Ваше приглашение обрабатывается`).then(msg => msg.delete(5*1000)) 22 | 23 | message.member.voiceChannel.createInvite().then((invite) =>{ 24 | lnk = invite.code 25 | 26 | let color = "#0B0B0B"; 27 | let atach = `https://cdn.glitch.com/1bb20dac-4257-4088-b7ef-824d51cd951a%2F${num}TPP.png?v=1563391381394` 28 | if(message.member.voiceChannel.parentID == pid){ 29 | color = "#ffff33" 30 | atach = `https://cdn.glitch.com/1bb20dac-4257-4088-b7ef-824d51cd951a%2Fpremium.png?v=1563391412437` 31 | }; 32 | if(!atach) return; 33 | let embed = new Discord.RichEmbed() 34 | .setColor(color) 35 | .setAuthor(`В поисках +${num} TPP в ${message.member.voiceChannel.name}`,message.author.avatarURL) 36 | .setDescription(`<@${message.author.id}>`) 37 | .addField(`▫ **${msg}**`,`Зайти: https://discord.gg/${lnk}/ ✅`) 38 | .addField(`Участники канала:`,usrs) 39 | .setThumbnail(atach) 40 | .setTimestamp() 41 | findchannel.send(embed) 42 | }); 43 | }catch(err){ 44 | console.log(`Произошла ошибка\n\n\n:${err.name}\n\n\n:${err.message}\n\n\n:${err.stack}`); 45 | } 46 | 47 | }; 48 | module.exports.help = { 49 | name: "tpp", 50 | aliases: ["t"] 51 | }; -------------------------------------------------------------------------------- /cmds/translate.js: -------------------------------------------------------------------------------- 1 | const translate = require("translate"); //Модуль. 2 | const { RichEmbed } = require("discord.js") 3 | const colors = "Цвет для имбеда" 4 | translate.engine = "yandex"; // Можно указать и google, но тогда и API ключ надо будет другой. 5 | translate.key = "trnsl.1.1.20200110T155520Z.8f8c0acbb38e97f6.cf2dfe1ff1deee706892e6d2ffd9b7f3c2f4504f" 6 | module.exports.run = async (bot, message, args) => { 7 | var args1 = message.content.toLowerCase().split(/ +/g); 8 | let RU = ["ru", "русский", "russian"]; 9 | let EN = ["en", "английский", "english"]; 10 | let text = args.slice(1).join(" "); 11 | if (!args[0]) return message.channel.send("Напиши с какого языка переводить (ru, en)"); 12 | if(!text) return message.channel.send("Укажите текст для перевода!") 13 | if (args1.some(a => RU.find(word => word == a))) { 14 | translate(text, { from: "ru", to: "en" }).then(text2 => { //Переводим с RU на EN 15 | message.channel.send( 16 | new RichEmbed() 17 | .setColor(colors) 18 | .addField("Перевод с русского на английского:", text2) 19 | ) 20 | }); 21 | return 22 | } 23 | if (args1.some(a => EN.find(word => word == a))) { 24 | translate(text, { from: "en", to: "ru" }).then(text => { //Тоже самое, но наоборот. 25 | message.channel.send( 26 | new RichEmbed() 27 | .setColor(colors) 28 | .addField("Перевод с английского на русский:", text) 29 | ) 30 | }); 31 | return 32 | } 33 | message.channel.send("Я не понял команду!") 34 | }; 35 | module.exports.help = { 36 | name: "translate", 37 | aliases: ["t"] 38 | } -------------------------------------------------------------------------------- /cmds/trap.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return bot.sendErrEmbed(new Discord.RichEmbed(), 'Использование 18+ команд только в nsfw чатах', true, message); 7 | if (bot.dbUser.coins < 25) 8 | return bot.sendErrEmbed(new Discord.RichEmbed(), 'У вас недостаточно бананов! 🍌 Для этого действия требуется 10 бананов', true, message); 9 | bot.dbUser.coins -= 25; 10 | const { body } = await superagent 11 | .get("https://nekos.life/api/v2/img/trap"); 12 | const embed = new Discord.RichEmbed() 13 | .setColor("#FF30A2") 14 | .setTitle(`${message.author.username}`) 15 | .setImage(body.url) 16 | message.channel.send(embed) 17 | let user = await bot.usersRep.findOne({ userid: message.author.id }); 18 | bot.addMark(true, '😳', user, message); 19 | bot.usersRep.save(user); 20 | 21 | } catch (err) { 22 | bot.logsErr(err) 23 | } 24 | }; 25 | 26 | 27 | 28 | module.exports.help = { 29 | name: 'trap', 30 | aliases: ['трап', 'мальчикдевка', 'некотя'], 31 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 32 | usages: { '!trap': 'NSFW NSWF NSFW' }, 33 | category: "18+" 34 | }; -------------------------------------------------------------------------------- /cmds/unpin.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | module.exports.run = async (bot, message, args) => { 3 | if (!message.member.hasPermission("MANAGE_MESSAGES")) return message.channel.send('Недостаточно прав!') 4 | 5 | let msgid = args[0] 6 | 7 | if (!msgid) return message.channel.send('Укажи ID сообщения!') 8 | 9 | await message.channel.fetchMessage(msgid) 10 | .then(async msg => { 11 | if (!msg) return message.channel.send('Сообщение не найдено') 12 | await msg.unpin() 13 | message.react("662046909103341571"); 14 | 15 | }).catch(console.error) 16 | 17 | } 18 | 19 | module.exports.help = { 20 | name: 'unpin', 21 | aliases: ["открепить"] 22 | } -------------------------------------------------------------------------------- /cmds/unwarn.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 9 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 10 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 11 | let lang = require(`../lang_${bot.lang}.json`); 12 | let otherlang = require(`../lang_${bot.lang}.json`); 13 | let olang = otherlang.casino.split('<>'); 14 | let evaled = eval('`' + lang.unwarn + '`'); 15 | let rekl = eval('`' + lang.rekl + '`'); 16 | let noUser = lang.noUser; 17 | let noNum = lang.noNum; 18 | let noPerm = lang.noPerm; 19 | let hBal = lang.hBanals; 20 | let errz = lang.err; 21 | let err = errz.split('<>'); 22 | let reaso = lang.reason; 23 | let reason = reaso.split('<>') 24 | let msgs = evaled.split('<>'); 25 | let actions = lang.actions.split('<>') 26 | let admin = lang.admin.split('<>') 27 | let noMoney = lang.noMoney; 28 | let embed = new Discord.RichEmbed() 29 | .setTitle(msgs[0]) 30 | .setColor('#e22216'); 31 | if (!message.member.hasPermission("BAN_MEMBERS")) { embed.setDescription(noPerm); return bot.send(embed); } 32 | 33 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 34 | 35 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 36 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 37 | let warns = bot.lprofile.fetch(`warns_${rUser.id}_${rUser.guild.id}`); 38 | if (warns <= 0) { embed.setDescription(msgs[0]); embed.setDescription(msgs[1]); return bot.send(embed); } 39 | bot.lprofile.subtract(`warns_${rUser.id}_${rUser.guild.id}`, 1); 40 | let embeds = new Discord.RichEmbed() 41 | .setDescription(msgs[0]) 42 | .setColor('#25ca85') 43 | .addField(admin, message.author.username) 44 | .addField(msgs[2], `${rUser.user.username}`) 45 | .addField("Количество предупрежденией | Warns:", `${warns}/3`); 46 | let logsname = 'logs' 47 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 48 | if (!logschannel) { 49 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 50 | 51 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 52 | channel.overwritePermissions(message.guild.defaultRole, { 53 | VIEW_CHANNEL: false, 54 | }); 55 | }); 56 | } 57 | logschannel.send(embeds) 58 | bot.send(embeds); 59 | } catch (err) { 60 | let bk = require('../botconfig.json'); 61 | let a = bot.users.get(bk.admin) 62 | let errEmb = new Discord.RichEmbed() 63 | .setTitle(`${err[0]}`) 64 | .setColor('#ff2400') 65 | .addField(`**${err.name}**`, `**${err.message}**`) 66 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 67 | .setTimestamp(); 68 | bot.send(errEmb); 69 | console.log(err.stack); 70 | } 71 | 72 | }; 73 | module.exports.help = { 74 | name: "unwarn", 75 | aliases: ["снятьварн", 'снятьпредупреждение'] 76 | }; -------------------------------------------------------------------------------- /cmds/userinfo.js: -------------------------------------------------------------------------------- 1 | const { RichEmbed } = require("discord.js") 2 | const moment = require("moment"); 3 | 4 | module.exports.run = async(bot, message, args, prefix, clr) => { 5 | if(!message.content.startsWith(prefix)) return 6 | 7 | const status = { 8 | online: "Онлайн", 9 | idle: "Нет на месте", 10 | dnd: "Не беспокоить", 11 | offline: "Оффлайн" 12 | }; 13 | 14 | let member = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])) 15 | let argsUser 16 | if (member) argsUser = member.user 17 | else argsUser = message.author 18 | 19 | let game 20 | if (argsUser.presence.game.type == 0) game = `Играет в **${argsUser.presence.game.name}**` 21 | else if (argsUser.presence.game.type == 1) game = `Стримит [**${argsUser.presence.game.name}**](${argsUser.presence.game.url})` 22 | else if (argsUser.presence.game.type == 2) game = `Слушает **${argsUser.presence.game.name}**` 23 | else if (argsUser.presence.game.type == 3) game = `Смотрит **${argsUser.presence.game.name}**` 24 | 25 | let embed = new RichEmbed() 26 | .setColor("RANDOM") 27 | .setAuthor(argsUser.tag) 28 | .addField("Ник:", `\`${argsUser.username}\``, true) 29 | .addField("Тэг:", `\`${argsUser.discriminator}\``, true) 30 | .addField("ID:", `\`${argsUser.id}\``, true) 31 | .addField("Статус:", status[argsUser.presence.status], true) 32 | .addField("Активность:", `\`${argsUser.presence.game || "Нету"}\``, true) 33 | .addField("Бот?", `\`${argsUser.bot ? 'Да' : 'Нет'}\``, true) 34 | .addField("Присоединился:", `\`${moment.utc(argsUser.joinedAt).format(`DD.MM.YYYY | HH:mm:ss `)}\``, true) 35 | .addField("Создан:", `\`${moment.utc(argsUser.createdAt).format(`DD.MM.YYYY | HH:mm:ss `)}\`` , true) 36 | //.addField(`Роли`, message.guild.member(argsUser).roles.filter(r => r.id != message.guild.id).map(role => `<@&${role.id}>`).join(', ') || 'Не имеет', true) 37 | //.setFooter(`ку!`, bot.user.displayAvatarURL) 38 | .setThumbnail(argsUser.avatarURL); 39 | await message.channel.send(embed) 40 | } 41 | 42 | module.exports.help = { 43 | name: "ui", 44 | aliases: ['userinfo', 'useri'] 45 | } 46 | -------------------------------------------------------------------------------- /cmds/voicekick.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | const ms = require("ms"); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | 6 | try { 7 | if (!message.member.hasPermission('MOVE_MEMBERS')) return; 8 | let kUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])), 9 | reason = args.slice(1).join(' '), 10 | voicekickEmbed = new Discord.RichEmbed() 11 | .setColor('FF8A14') 12 | .setTitle('Блокировка чата') 13 | 14 | if (!kUser || kUser.id === message.guild.me.id) { 15 | bot.sendErrEmbed(voicekickEmbed, 'Пользователь не найден | Укажите пользователя через @') 16 | return message.channel.send(voicekickEmbed) 17 | }; 18 | if (kUser.id == message.author.id) { 19 | bot.sendErrEmbed(voicekickEmbed, 'Вы не можете кикнуть себя') 20 | return message.channel.send(voicekickEmbed) 21 | } 22 | kUser.setVoiceChannel(null); 23 | if (!kUser.voiceChannel) { 24 | bot.sendErrEmbed(voicekickEmbed, `${kUser.user.tag} не в голосовом канале`) 25 | return message.channel.send(voicekickEmbed) 26 | } 27 | if (!reason) reason = 'Не указана'; 28 | voicekickEmbed.addField(`**Администратор ${message.author.tag} **`, `**Выгнал с голосового канала ${kUser.user.tag}**\n**Причина: ${reason}**`) 29 | 30 | 31 | 32 | 33 | } catch (err) { 34 | 35 | } 36 | } 37 | 38 | module.exports.help = { 39 | name: 'voicekick', 40 | aliases: ['vk', 'войскик', 'киквойс', 'уберисьчорт'], 41 | description: 'Выгоняет участника с голосового канала', 42 | usages: { '!voicekick @user#0001 ': 'Выгоняет участника с голосового канала' }, 43 | category: 'Модерирование' 44 | } -------------------------------------------------------------------------------- /cmds/voiceonline.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | let bk = require('../botconfig.json'); 7 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 8 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 9 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 10 | let lang = require(`../lang_${bot.lang}.json`); 11 | let otherlang = require(`../lang_${bot.lang}.json`); 12 | let olang = otherlang.casino.split('<>'); 13 | let evaled = eval('`' + lang.voiceonline + '`'); 14 | let rekl = eval('`' + lang.rekl + '`'); 15 | let noUser = lang.noUser; 16 | let noNum = lang.noNum; 17 | let noPerm = lang.noPerm; 18 | let hBal = lang.hBanals; 19 | let errz = lang.err; 20 | let err = errz.split('<>'); 21 | let reaso = lang.reason; 22 | let reason = reaso.split('<>') 23 | let msgs = evaled.split('<>'); 24 | let actions = lang.actions.split('<>') 25 | let admin = lang.admin.split('<>') 26 | let noMoney = lang.noMoney; 27 | let embed = new Discord.RichEmbed() 28 | .setTitle(`**${msgs[0]}**`) 29 | .setColor('#e22216') 30 | if (!message.member.hasPermission(`MANAGE_CHANNELS`)) { embed.setDescription(noPerm); return bot.send(embed); } 31 | let voicename = args.join(` `); 32 | if (!voicename) voicename = 'Voice-Online:' 33 | message.guild.createChannel(`${voicename} ${message.guild.members.filter(m => m.voiceChannel).size}`, { type: 'voice' }).then(channel => { 34 | 35 | bot.guild.set(`voiceOnline_${message.guild.id}`, channel.id); 36 | bot.guild.set(`voiceOnlineText_${message.guild.id}`, voicename); 37 | 38 | channel.overwritePermissions(message.guild.defaultRole, { 39 | VIEW_CHANNEL: true, 40 | CONNECT: false, 41 | }) 42 | }); 43 | let embeds = new Discord.RichEmbed() 44 | .setDescription(msgs[0]) 45 | .setColor('#004953') 46 | .addField(msgs[1], `${voicename} ${message.guild.members.filter(m => m.voiceChannel).size}`) 47 | .setFooter(rekl, message.author.avatarURL); 48 | let logsname = 'logs' 49 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 50 | if (!logschannel) { 51 | await message.guild.createChannel(logsname, 'text').then(channel => { 52 | 53 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 54 | channel.overwritePermissions(message.guild.defaultRole, { 55 | VIEW_CHANNEL: false, 56 | }); 57 | }); 58 | } 59 | logschannel.send(embeds) 60 | bot.send(embeds); 61 | } catch (err) { 62 | let bk = require('../botconfig.json'); 63 | let a = bot.users.get(bk.admin) 64 | let errEmb = new Discord.RichEmbed() 65 | .setTitle(`${err[0]}`) 66 | .setColor('#ff2400') 67 | .addField(`**${err.name}**`, `**${err.message}**`) 68 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 69 | .setTimestamp(); 70 | bot.send(errEmb); 71 | console.log(err.stack); 72 | } 73 | 74 | }; 75 | module.exports.help = { 76 | name: `voiceonline`, 77 | aliases: ['голосовойонлайн'] 78 | }; -------------------------------------------------------------------------------- /cmds/volume.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let fetched = bot.active.get(message.guild.id); 8 | let embed = new Discord.RichEmbed() 9 | .setTitle("**Музыка - this is russian**") 10 | .setColor('#e22216'); 11 | if (!fetched) { embed.setDescription('**Треков не обнаружено | No music**'); return bot.send(embed); }; 12 | let bk = require('../botconfig.json'); 13 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 14 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 15 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 16 | let lang = require(`../lang_${bot.lang}.json`); 17 | let otherlang = require(`../lang_${bot.lang}.json`); 18 | let olang = otherlang.casino.split('<>'); 19 | let evaled = eval('`' + lang.volume + '`'); 20 | let rekl = eval('`' + lang.rekl + '`'); 21 | let noUser = lang.noUser; 22 | let noNum = lang.noNum; 23 | let noPerm = lang.noPerm; 24 | let hBal = lang.hBanals; 25 | let errz = lang.err; 26 | let err = errz.split('<>'); 27 | let reaso = lang.reason; 28 | let reason = reaso.split('<>') 29 | let msgs = evaled.split('<>'); 30 | let actions = lang.actions.split('<>') 31 | let admin = lang.admin.split('<>') 32 | let noMoney = lang.noMoney; 33 | 34 | 35 | if (message.member.voiceChannel !== message.guild.me.voiceChannel) { embed.setDescription('**Вы не можете управлять музыкой из другого канала**'); return bot.send(embed); }; 36 | if (isNaN(args[0])) { embed.setDescription(noNum); return bot.send(embed); } 37 | 38 | fetched.dispatcher.setVolume(args[0] / 100); 39 | 40 | embed.setColor('fae7b5'); embed.setDescription(msgs[0]); return bot.send(embed); 41 | 42 | 43 | } catch (err) { 44 | let bk = require('../botconfig.json'); 45 | let a = bot.users.get(bk.admin) 46 | let errEmb = new Discord.RichEmbed() 47 | .setTitle(`${err[0]}`) 48 | .setColor('#ff2400') 49 | .addField(`**${err.name}**`, `**${err.message}**`) 50 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 51 | .setTimestamp(); 52 | bot.send(errEmb); 53 | console.log(err.stack); 54 | }; 55 | 56 | }; 57 | module.exports.help = { 58 | name: "volume", 59 | aliases: ["громкость"] 60 | }; -------------------------------------------------------------------------------- /cmds/vote.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = require('discord.js') 4 | 5 | exports.run = async (bot, message, args) => { 6 | let bk = require('../botconfig.json'); 7 | let lang = require(`../lang_${bot.lang}.json`); 8 | let evaled = eval('`' + lang.invite + '`'); 9 | let rekl = eval('`' + lang.rekl + '`'); 10 | let noUser = lang.noUser; 11 | let noNum = lang.noNum; 12 | let noPerm = lang.noPerm; 13 | let hBal = lang.hBanals; 14 | let errz = lang.err; 15 | let err = errz.split('<>'); 16 | let reaso = lang.reason; 17 | let reason = reaso.split('<>') 18 | let msgs = evaled.split('<>'); 19 | let actions = lang.actions.split('<>') 20 | let admin = lang.admin.split('<>') 21 | let noMoney = lang.noMoney; 22 | let emb = new Discord.RichEmbed() 23 | .setDescription(msgs[0]) 24 | .setColor('#10e250') 25 | .addField(msgs[3],'**https://top.gg/bot/572285950034444298/vote**') 26 | bot.send(emb) 27 | } 28 | exports.help = { 29 | name: 'vote', 30 | aliases: ["v", 'голосование'] 31 | } 32 | -------------------------------------------------------------------------------- /cmds/warn.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require("discord.js"); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 9 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 10 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 11 | let lang = require(`../lang_${bot.lang}.json`); 12 | let otherlang = require(`../lang_${bot.lang}.json`); 13 | let olang = otherlang.casino.split('<>'); 14 | let evaled = eval('`' + lang.warn + '`'); 15 | let rekl = eval('`' + lang.rekl + '`'); 16 | let noUser = lang.noUser; 17 | let noNum = lang.noNum; 18 | let noPerm = lang.noPerm; 19 | let hBal = lang.hBanals; 20 | let errz = lang.err; 21 | let err = errz.split('<>'); 22 | let reaso = lang.reason; 23 | let reason = reaso.split('<>') 24 | let msgs = evaled.split('<>'); 25 | let actions = lang.actions.split('<>') 26 | let admin = lang.admin.split('<>') 27 | let noMoney = lang.noMoney; 28 | let warn = bot.lprofile.fetch(`warns_${rUser.id}_${rUser.guild.id}`); 29 | let warns = ++warn 30 | let embed = new Discord.RichEmbed() 31 | .setTitle("**Варн**") 32 | .setColor('#e22216'); 33 | if (!message.member.hasPermission("BAN_MEMBERS")) { embed.setDescription(noPerm); return bot.send(embed); } 34 | 35 | let rUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0])); 36 | 37 | if (!args[0]) { embed.setDescription(noUser); return bot.send(embed); } 38 | if (!rUser) { embed.setDescription(noUser); return bot.send(embed); } 39 | 40 | bot.lprofile.add(`warns_${rUser.id}_${rUser.guild.id}`, 1); 41 | let embeds = new Discord.RichEmbed() 42 | .setDescription('Warn') 43 | .setColor('#e22216') 44 | .addField(admin, message.author) 45 | .addField(msgs[0], `${rUser}`) 46 | .setFooter(rekl) 47 | .addField(msgs[1], `${warns}/3`); 48 | let logsname = 'logs' 49 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 50 | if (!logschannel) { 51 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 52 | 53 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 54 | channel.overwritePermissions(message.guild.defaultRole, { 55 | VIEW_CHANNEL: false, 56 | }); 57 | }); 58 | } 59 | logschannel.send(embeds) 60 | bot.send(embeds); 61 | if (warns >= 3) { 62 | bot.lprofile.set(`warns_${rUser.id}`, 0); 63 | message.guild.member(rUser).ban("3/3 Предупреждений | Warns"); 64 | }; 65 | } catch (err) { 66 | let bk = require('../botconfig.json'); 67 | let a = bot.users.get(bk.admin) 68 | let errEmb = new Discord.RichEmbed() 69 | .setTitle(`${err[0]}`) 70 | .setColor('#ff2400') 71 | .addField(`**${err.name}**`, `**${err.message}**`) 72 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 73 | .setTimestamp(); 74 | bot.send(errEmb); 75 | console.log(err.stack); 76 | } 77 | 78 | }; 79 | module.exports.help = { 80 | name: "warn", 81 | aliases: ["варн", 'предупреждение', 'прикол'] 82 | }; -------------------------------------------------------------------------------- /cmds/warns.js: -------------------------------------------------------------------------------- 1 | const Discord = module.require("discord.js"); 2 | const { sdct } = require ('../botconfig.json') 3 | const SDC = require('sdc-api'); 4 | const client = new SDC(sdct) 5 | module.exports.run = async (bot, message, args) => { 6 | client.warns(message.author.id) 7 | .then((data) => { 8 | console.info(data); 9 | 10 | let type = (data.type) 11 | let erro = new Discord.RichEmbed() 12 | if (type == undefined) { erro.setDescription(`Ошибка`).setColor('RED').addField(`Причина`,`Варны отсутсвуют`);return bot.send(erro); }; 13 | 14 | let warns = (data.warns) 15 | 16 | 17 | try { 18 | let embed = new Discord.RichEmbed() 19 | .setTitle(`Количество предупреждений`) 20 | .setColor('RED') 21 | .addField(`У пользователя `,warns) 22 | .setFooter(`Запрос от ${message.author.tag}`, message.author.avatarURL); 23 | 24 | bot.send(embed); 25 | } catch (err) { 26 | let bk = require('../botconfig.json'); 27 | let a = bot.users.get(bk.admin) 28 | let errEmb = new Discord.RichEmbed() 29 | .setTitle(`${err[0]}`) 30 | .setColor('#ff2400') 31 | .addField(`**${err.name}**`, `**${err.message}**`) 32 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 33 | .setTimestamp(); 34 | bot.send(errEmb); 35 | console.log(err.stack); 36 | } 37 | 38 | });}; 39 | module.exports.help = { 40 | name: "warns", 41 | aliases: ["преды"] 42 | }; 43 | -------------------------------------------------------------------------------- /cmds/welcomemessage.js: -------------------------------------------------------------------------------- 1 | //Завершено 2 | 3 | const Discord = module.require(`discord.js`); 4 | 5 | module.exports.run = async (bot, message, args) => { 6 | try { 7 | let bk = require('../botconfig.json'); 8 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 9 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 10 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 11 | let lang = require(`../lang_${bot.lang}.json`); 12 | let otherlang = require(`../lang_${bot.lang}.json`); 13 | let olang = otherlang.casino.split('<>'); 14 | let evaled = eval('`' + lang.welcomemessage + '`'); 15 | let rekl = eval('`' + lang.rekl + '`'); 16 | let noUser = lang.noUser; 17 | let noNum = lang.noNum; 18 | let noPerm = lang.noPerm; 19 | let hBal = lang.hBanals; 20 | let errz = lang.err; 21 | let err = errz.split('<>'); 22 | let reaso = lang.reason; 23 | let reason = reaso.split('<>') 24 | let msgs = evaled.split('<>'); 25 | let actions = lang.actions.split('<>') 26 | let admin = lang.admin.split('<>') 27 | let noMoney = lang.noMoney; 28 | let embed = new Discord.RichEmbed() 29 | .setTitle(`**${msgs[2]}**`) 30 | .setColor('#e22216') 31 | if (!message.member.hasPermission(`MANAGE_ROLES`)) { embed.setDescription(noPerm); return bot.send(embed); } 32 | if (!args[0]) { embed.setDescription(msgs[0]); return bot.send(embed); } 33 | let msg = args.join(` `); 34 | if (!msg) { embed.setDescription(msgs[0]); return bot.send(embed); } 35 | bot.guild.set(`welcomemessage_${message.guild.id}`,msg); 36 | 37 | embed.setColor('#10e250') 38 | embed.setDescription(msgs[1]) 39 | embed.setFooter(rekl, message.author.avatarURL) 40 | let logsname = 'logs' 41 | let logschannel = message.guild.channels.get(bot.guild.fetch(`logsChannel_${message.guild.id}`)); 42 | if (!logschannel) { 43 | await message.guild.createChannel(logsname, { type: 'text' }).then(channel => { 44 | 45 | bot.guild.set(`logsChannel_${message.guild.id}`, channel.id); 46 | channel.overwritePermissions(message.guild.defaultRole, { 47 | VIEW_CHANNEL: false, 48 | }); 49 | }); 50 | } 51 | logschannel.send(embed); 52 | bot.send(embed); 53 | } catch (err) { 54 | let bk = require('../botconfig.json'); 55 | let a = bot.users.get(bk.admin) 56 | let errEmb = new Discord.RichEmbed() 57 | .setTitle(`${err[0]}`) 58 | .setColor('#ff2400') 59 | .addField(`**${err.name}**`, `**${err.message}**`) 60 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 61 | .setTimestamp(); 62 | bot.send(errEmb); 63 | console.log(err.stack); 64 | } 65 | 66 | }; 67 | module.exports.help = { 68 | name: `welcomemessage`, 69 | aliases: [`стартовоесообщение`, 'приветствие','wm'] 70 | }; -------------------------------------------------------------------------------- /cmds/work.js: -------------------------------------------------------------------------------- 1 | 2 | const Discord = module.require("discord.js"); 3 | const ms = require('ms'); 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | let userid = message.author.id; 7 | let curwork = bot.profile.fetch(`work_${userid}`); 8 | let cwork = bot.worklist[curwork] 9 | let str = String(bot.worklist[curwork].works - bot.profile.fetch(`worked_${userid}`)); 10 | let s = ms(((60 / 60) / 1000) - (Date.now() - bot.profile.fetch(`workCooldown_${userid}`)),{long:true}); 11 | let bk = require('../botconfig.json'); 12 | let getRole = message.mentions.roles.first() || message.guild.roles.find(r => r.id === args[1]); 13 | let roles = bot.guild.fetch(`shop_${message.guild.id}`); 14 | let prices = bot.guild.fetch(`prices_${message.guild.id}`); 15 | let lang = require(`../lang_${bot.lang}.json`); 16 | let otherlang = require(`../lang_${bot.lang}.json`); 17 | let olang = otherlang.casino.split('<>'); 18 | let evaled = eval('`' + lang.work + '`'); 19 | let rekl = eval('`' + lang.rekl + '`'); 20 | let noUser = lang.noUser; 21 | let noNum = lang.noNum; 22 | let noPerm = lang.noPerm; 23 | let hBal = lang.hBanals; 24 | let errz = lang.err; 25 | let err = errz.split('<>'); 26 | let reaso = lang.reason; 27 | let reason = reaso.split('<>') 28 | let msgs = evaled.split('<>'); 29 | let actions = lang.actions.split('<>') 30 | let admin = lang.admin.split('<>') 31 | let noMoney = lang.noMoney; 32 | let raz ; 33 | let embed = new Discord.RichEmbed() 34 | .setTitle('**Работа | Job**') 35 | .setFooter(rekl, message.author.avatarURL) 36 | .addField(`💵 Поддержите автора и получите бонусы и монеты)`,`[Нажми сюда пж](https://boosty.to/dreambotdonate)`) 37 | .setColor('RANDOM') 38 | if (bot.profile.fetch(`workCooldown_${userid}`) > Date.now()) { embed.setDescription(msgs[0]);return bot.send(embed);} 39 | bot.profile.add(`worked_${userid}`, 1); 40 | if(bot.profile.fetch(`worked_${userid}`)>=(bot.worklist[curwork].works-1)) bot.profile.add(`work_${userid}`,1) 41 | if(str>=10)str.slice(str.length-1); 42 | raz = parseInt(str); 43 | if(raz == 1 || raz == 5 || raz == 6 || raz == 7 || raz == 8 || raz == 9 || raz == 0) raz = msgs[1];else raz = msgs[2] 44 | embed.setDescription(`${msgs[3]} ${raz}`) 45 | console.log(Math.floor(cwork.addCoins)) 46 | console.log(bot.profile.fetch(`coins_${userid}`)) 47 | bot.profile.add(`coins_${userid}`, Math.floor(cwork.addCoins)); 48 | bot.profile.set(`workCooldown_${userid}`, Date.now()+1000*60*60); 49 | 50 | bot.send(embed); 51 | 52 | } catch (err) { 53 | let bk = require('../botconfig.json'); 54 | let a = bot.users.get(bk.admin) 55 | let errEmb = new Discord.RichEmbed() 56 | .setTitle(`${err[0]}`) 57 | .setColor('#ff2400') 58 | .addField(`**${err.name}**`, `**${err.message}**`) 59 | .setFooter(`${err[1]} ${a.tag}`, bot.user.avatarURL) 60 | .setTimestamp(); 61 | bot.send(errEmb); 62 | console.log(err.stack); 63 | } 64 | }; 65 | module.exports.help = { 66 | name: "work", 67 | aliases: ["работа", "работать","w"] 68 | }; -------------------------------------------------------------------------------- /cmds/yuri.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const superagent = require('superagent'); 3 | 4 | module.exports.run = async (bot, message, args) => { 5 | try { 6 | if (message.channel.nsfw == false) return message.reply ('Использование 18+ команд только в nsfw чатах'); 7 | 8 | const { body } = await superagent 9 | .get("https://nekos.life/api/v2/img/yuri"); 10 | const embed = new Discord.RichEmbed() 11 | .setColor("#FF30A2") 12 | .setTitle(`${message.author.username}`) 13 | .setImage(body.url) 14 | message.channel.send(embed) 15 | } catch (err) { 16 | bot.logsErr(err) 17 | } 18 | }; 19 | 20 | 21 | 22 | module.exports.help = { 23 | name: 'yuri', 24 | aliases: ['юри', 'лесбиянки', 'лесби'], 25 | description: 'Покажет картинки 18+ (Стоимость 25 бананов)', 26 | usages: { '!yuri': 'NSFW NSWF NSFW' }, 27 | category: "18+" 28 | }; -------------------------------------------------------------------------------- /events/ready.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = async (bot) => { 3 | bot.user.setStatus("online"); // сам ставишь idle, dbd, invisible или online 4 | setInterval(function(){ 5 | switch(Math.ceil(Math.random()*7+1)){ // 7-число статусов! Его надо менять тоже 6 | case 1: 7 | bot.user.setActivity(`на ${bot.users.size} участника`,{ type: 'WATCHING'}) 8 | break; 9 | case 2: 10 | bot.user.setActivity(`на ${bot.guilds.size} сервер`,{ type: 'WATCHING'}) 11 | break; 12 | case 3: 13 | bot.user.setActivity(`VimeWorld.ru`,{ type: 'PLAYING'}) 14 | break; 15 | case 4: 16 | bot.user.setActivity(`Minecraft`,{ type: 'PLAYING'}) 17 | break; 18 | case 5: 19 | bot.user.setActivity(`Spotify`,{ type: 'LISTENING'}) 20 | break; 21 | case 6: 22 | bot.user.setActivity(`https://discord.gg/uX8PdJX`,{ type: 'WATCHING'}) 23 | break; 24 | case 7: 25 | bot.user.setActivity(`на ${bot.users.size} участника`,{ type: 'WATCHING'}) 26 | break; 27 | } 28 | },5000); 29 | 30 | 31 | console.log(`Бот работает под ником: ${bot.user.tag}!`); 32 | bot.generateInvite(['ADMINISTRATOR']).then(link =>{ 33 | console.log('Ссылка на бота:', link); 34 | }) 35 | 36 | 37 | 38 | 39 | 40 | }); 41 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "DreamBot", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "bot.js", 6 | "scripts": { 7 | "start": "node bot.js" 8 | }, 9 | "author": "Livixx", 10 | "license": "ISC", 11 | "dependencies": { 12 | "@megavasiliy007/sdc-api": "github:MegaVasiliy007/sdc-api", 13 | "beautify": "0.0.8", 14 | "better-sqlite3": "^5.4.3", 15 | "custom-translate": "^2.2.8", 16 | "dblapi.js": "^2.3.0", 17 | "discord-giveaways": "^3.0.11", 18 | "discord.js": "^11.5.1", 19 | "discord.js-minesweeper": "^1.0.5", 20 | "discord.js-reaction-menu": "^1.0.1", 21 | "express": "^4.17.1", 22 | "express-glitch-keepalive": "^0.2.0", 23 | "ffmpeg": "0.0.4", 24 | "ffmpeg-binaries": "^4.0.0", 25 | "fs": "^0.0.2", 26 | "isgd": "^1.1.3", 27 | "mathjs": "^6.2.5", 28 | "moment": "^2.24.0", 29 | "moment-duration-format": "^2.3.2", 30 | "ms": "^2.1.2", 31 | "mysql": "^2.18.1", 32 | "node-fetch": "^2.6.0", 33 | "node-opus": "^0.3.3", 34 | "oip-exchange-rate": "^1.0.7", 35 | "opusscript": "0.0.7", 36 | "os": "^0.1.1", 37 | "parse-ms": "^2.1.0", 38 | "quick.db": "^7.1.1", 39 | "sdc-api": "^1.0.3", 40 | "sqlite": "^3.0.3", 41 | "strftime": "^0.10.0", 42 | "super": "^0.2.3", 43 | "superagent": "^5.1.3", 44 | "translate": "^1.1.0", 45 | "vimestats": "github:vladciphersky/vimestats-v2", 46 | "ytdl-core": "^2.1.0" 47 | }, 48 | "devDependencies": { 49 | "console-error": "0.0.4", 50 | "console-info": "0.0.5", 51 | "console-warn": "0.0.4" 52 | } 53 | } 54 | --------------------------------------------------------------------------------