const { Client, Intents } = require('discord.js'); const client = new Client({ intents: [ Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MESSAGE_REACTIONS ] }); require("dotenv").config() var hugGifs = ["https://c.tenor.com/9e1aE_xBLCsAAAAC/anime-hug.gif", "https://c.tenor.com/Ct4bdr2ZGeAAAAAC/teria-wang-kishuku-gakkou-no-juliet.gif", "https://c.tenor.com/ztEJgrjFe54AAAAd/hug-anime.gif", "https://c.tenor.com/UhcyGsGpLNIAAAAd/hug-anime.gif", "https://c.tenor.com/fLxZt7jo1YEAAAAd/loli-dragon.gif", "https://c.tenor.com/qF7mO4nnL0sAAAAd/abra%C3%A7o-hug.gif"] client.once('ready', () => { console.log('Running'); }); client.on('message', gotMessage); function gotMessage(message){ // console.log(message) if(message.content.includes('https://media.discordapp.net')) { if(message.content.includes('webm') || message.content.includes('mov') || message.content.includes('mp4')) { let linkArr = message.content.split('https://media.discordapp.net'); message.channel.send('https://cdn.discordapp.com' +linkArr[1]) } } let msg = message.content.toLowerCase() let content = message.content.trim() var msgContentSplit = content.split(/[ ]+/); if(message.reference != null){ move(message, msgContentSplit) } let isBot = message.author.bot if (!isBot){ if (msg.includes("henlo")) { henlo(message) } else if (msg.includes("how ye")) { mood(message) } else if (msg.includes("tylko jedno")) { message.channel.send("Koksu pięć gram odlecieć sam"); } if (msgContentSplit[0] == "hug") { hug(message) } else if (msgContentSplit[0] == "!say") { say(message) } } } // Responses function henlo(message){ var emojis = ["🥰", "🐄", "🐮", "❤️", "👋", "🤠", "😊"]; let randomNum = RNG(emojis.length); message.channel.send("Henlooo " + message.author.username + " " + emojis[randomNum]); } function hug(message){ var mentionedUsers = message.mentions.users.values() var mentionedUsersSize = message.mentions.users.size var mentionedRoles = message.mentions.roles.values() var mentionedRolesSize = message.mentions.roles.size var msg = message.content.toLowerCase() let randomNum = RNG(hugGifs.length) let title = message.author.username + " hugs" let embed; if (mentionedUsersSize > 0 || mentionedRolesSize > 0){ let allMentions = "" for (let i = 0; i < mentionedUsersSize; i++) { let user = mentionedUsers.next() allMentions = allMentions + ", <@" + user.value.id + ">" } for (let i = 0; i < mentionedRolesSize; i++) { let role = mentionedRoles.next() allMentions = allMentions + ", <@&" + role.value.id + ">" } allMentions = allMentions.slice(2) embed = createEmbed(title, hugGifs[randomNum], allMentions) message.channel.send(embed) } else if (msg.includes("@here") || msg.includes("all")){ embed = createEmbed(title, hugGifs[randomNum], "@here") message.channel.send(embed) } else if (msg.includes("@everyone")){ embed = createEmbed(title, hugGifs[randomNum], "@everyone") message.channel.send(embed) } else { embed = new Discord.MessageEmbed().setImage(hugGifs[randomNum]).setColor(randomColor()) message.channel.send(embed) } } function mood(message){ var responses = ["Not bad, how yee?", "MOOdy", "A bit sad 😢", "Good, how yee?", "I'm fine, how yee?"]; let randomNum = RNG(responses.length); message.channel.send(responses[randomNum]); } function move(message, splits){ var replyChannelId; var mentionedChannelId; if(splits.length == 1 && message.mentions.channels.first() != undefined){ message.react('🐮') var replyMessageId = message.reference.messageID; mentionedChannelId = splits[0].substring(2, splits[0].length - 1); replyChannelId = message.reference.channelID; var replyChannel = client.channels.cache.get(replyChannelId); // create embed // add field for every attachment // keď je tam emebed tak možnosť cez emotes či vymazať original post alebo nie // zisti ako sa robia replies ako robia normálny usery replyChannel.messages.fetch(replyMessageId).then(msg => { let newMessage = [] let allAttachments = msg.attachments.values() for (let i = 0; i < msg.attachments.size; i++){ let currAttachment = allAttachments.next().value newMessage.push(new Discord.MessageAttachment(currAttachment.url)) } if (newMessage.length > 0){ client.channels.cache.get(mentionedChannelId).send(newMessage).then(msgToEdit => { msgToEdit.edit(`Sent by ${msg.author}\nmooved ${message.author}\n`) }) msg.delete({timeout: 3000}); } else { if (msg.embeds.length > 0){ message.channel.send("Can't really moove embeds, sowwy :c") } else { let newMsg = new Discord.MessageEmbed() .setColor(randomColor()) .addField("MOO", `Sent by ${msg.author}\nmooved ${message.author}`) .addField("Message:", msg.content) client.channels.cache.get(mentionedChannelId).send(newMsg) msg.delete({timeout: 3000}) } } }); message.delete({timeout: 3000}); } } function say(message){ let tmp = message.content.split("!say ") let content = tmp[1] message.channel.send(content) message.delete() } function createEmbed(title, img, desc){ let embed = new Discord.MessageEmbed() .setTitle(title) .setImage(img) .setDescription(desc) .setColor(randomColor()) return embed } function randomColor() { let color = '#'; for (let i = 0; i < 6; i++){ const random = Math.random(); const bit = (random * 16) | 0; color += (bit).toString(16); }; return color; }; function RNG(max){ return Math.floor(Math.random() * max) } // narodeniny? // vianoce, novy rok a tak // hug cez tenor // headpat cez tenor // .gif client.login(process.env.TOKEN)