nyx

The first CODM discrod bot -- cath.exe Template
git clone https://codeberg.org/night0721/nyx
Log | Files | Refs | LICENSE

commit 3d35e1d838f1c2294b83273527337a069be62aee
parent f44ab76d850c1dea406bbf50c1a9c9288d53e9a6
Author: ThunderEmperor <>
Date:   Tue, 22 Feb 2022 19:37:07 +0000

Merge remote-tracking branch 'origin/main' into main

Diffstat:
Dcommand/NSFW/ass.js | 40----------------------------------------
Dcommand/NSFW/blowjob.js | 48------------------------------------------------
Dcommand/NSFW/boobs.js | 40----------------------------------------
Dcommand/NSFW/hentai.js | 40----------------------------------------
Dcommand/NSFW/pussy.js | 42------------------------------------------
Dcommand/Owner/nsfw.js | 137-------------------------------------------------------------------------------
Acommand/Utilities/nsfw.js | 150+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mutil/Data/domains.json | 5+++++
Mutil/functions/common.js | 3++-
9 files changed, 157 insertions(+), 348 deletions(-)

diff --git a/command/NSFW/ass.js b/command/NSFW/ass.js @@ -1,40 +0,0 @@ -const { MessageEmbed } = require("discord.js"); -const { getreddit } = require("cath"); -module.exports = { - name: "ass", - description: "Get some ass images", - run: async (client, interaction) => { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - interaction.followUp({ embeds: [embed] }); - } else { - const subreddits = ["ass", "BestBooties", "BootyGIFs", "booty_queens"]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - interaction.followUp({ - embeds: [ - new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }), - ], - }); - } - }, -}; diff --git a/command/NSFW/blowjob.js b/command/NSFW/blowjob.js @@ -1,48 +0,0 @@ -const { MessageEmbed } = require("discord.js"); -const { getreddit } = require("cath"); -module.exports = { - name: "blowjob", - description: "Get some blowjob images", - run: async (client, interaction) => { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - - interaction.followUp({ embeds: [embed] }); - } else { - const subreddits = [ - "BlowJob", - "blowjobs", - "blowjobgifs", - "OralSex", - "PushHerHead", - "ThroatFuck", - ]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - interaction.followUp({ - embeds: [ - new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }), - ], - }); - } - }, -}; diff --git a/command/NSFW/boobs.js b/command/NSFW/boobs.js @@ -1,40 +0,0 @@ -const { MessageEmbed } = require("discord.js"); -const { getreddit } = require("cath"); -module.exports = { - name: "boobs", - description: "Get some boobie images", - run: async (client, interaction) => { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - interaction.followUp({ embeds: [embed] }); - } else { - const subreddits = ["boobs", "GrabHerTitties", "titfuck"]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - interaction.followUp({ - embeds: [ - new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }), - ], - }); - } - }, -}; diff --git a/command/NSFW/hentai.js b/command/NSFW/hentai.js @@ -1,40 +0,0 @@ -const { MessageEmbed } = require("discord.js"); -const { getreddit } = require("cath"); -module.exports = { - name: "hentai", - description: "Get some hentai images", - run: async (client, interaction) => { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - interaction.followUp({ embeds: [embed] }); - } else { - const subreddits = ["hentai", "HentaiAnime", "nekogirls"]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - interaction.followUp({ - embeds: [ - new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }), - ], - }); - } - }, -}; diff --git a/command/NSFW/pussy.js b/command/NSFW/pussy.js @@ -1,42 +0,0 @@ -const { MessageEmbed } = require("discord.js"); -const { getreddit } = require("cath"); - -module.exports = { - name: "pussy", - description: "Get some vagina images", - run: async (client, interaction) => { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - interaction.followUp({ embeds: [embed] }); - return; - } else { - const subreddits = ["vagina", "GodPussy", "peachlips"]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - interaction.followUp({ - embeds: [ - new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }), - ], - }); - } - }, -}; diff --git a/command/Owner/nsfw.js b/command/Owner/nsfw.js @@ -1,137 +0,0 @@ -const { getreddit } = require("cath"); -const { MessageActionRow, MessageButton, MessageEmbed } = require("discord.js"); -module.exports = { - name: "nsfw", - description: "nsfw command", - run: async (client, interaction) => { - const msg = await interaction.channel.send({ content: "Getting images" }); - async function embed() { - if (!interaction.channel.nsfw) { - const embed = new MessageEmbed() - .setTitle(`AYO Calm Yo Cheeks`) - .setDescription("This command only works in NSFW Channels!") - .setImage( - "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" - ) - .setColor(client.color) - .setFooter(`Made by ${client.author}`, client.user.displayAvatarURL()) - .setTimestamp(); - interaction.followUp({ embeds: [embed] }); - } - let subreddits = [ - "GoneWild", - "WorkGoneWild", - "GoneWild30Plus", - "hentai", - "HentaiAnime", - "nekogirls", - "ass", - "BestBooties", - "BootyGIFs", - "booty_queens", - "BlowJob", - "blowjobs", - "blowjobgifs", - "OralSex", - "boobs", - "GrabHerTitties", - "titfuck", - "milf", - "OnlyHotMilfs", - "realmoms", - "thighs", - "PerfectThighs", - "thickthighs", - ]; - const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; - const data = await getreddit(reddit); - let embed1 = null; - embed1 = new MessageEmbed({ - title: data.title, - url: data.url, - image: { url: data.image }, - timestamp: Date.now(), - footer: { text: data.footer }, - color: client.color, - author: { - name: interaction.user.tag, - iconURL: interaction.user.displayAvatarURL({ dynamic: true }), - }, - }); - return embed1; - } - - const row = new MessageActionRow().addComponents( - new MessageButton() - .setCustomId("reload") - .setLabel("Reload") - .setStyle("SUCCESS") - ); - const disabled = new MessageActionRow().addComponents( - new MessageButton() - .setCustomId("reload") - .setLabel("Reload") - .setStyle("SECONDARY") - .setDisabled(true) - ); - await msg.delete(); - let m = await interaction.followUp({ - embeds: [await embed()], - components: [row], - }); - - const collector = m.createMessageComponentCollector({ - componentType: "BUTTON", - time: 120000, - }); - collector.on("collect", async i => { - if (i.user.id === interaction.user.id) { - i.deferUpdate(); - await update(m); - collector.stop(); - } else { - i.reply({ - content: `These buttons aren't for you!`, - ephemeral: true, - }); - } - }); - collector.on("end", (mes, r) => { - if (r == "time") { - m.edit({ - components: [disabled], - }); - } - }); - - async function update(m) { - m.edit({ - embeds: [await embed()], - }).catch(null); - - const collector = m.createMessageComponentCollector({ - componentType: "BUTTON", - time: 120000, - }); - collector.on("collect", async i => { - if (i.user.id === interaction.user.id) { - i.deferUpdate(); - await update(m); - collector.stop(); - } else { - i.reply({ - content: `These buttons aren't for you!`, - ephemeral: true, - }); - } - }); - collector.on("end", (mes, r) => { - if (r == "time") { - m.edit({ - components: [disabled], - }); - } - }); - } - }, -}; diff --git a/command/Utilities/nsfw.js b/command/Utilities/nsfw.js @@ -0,0 +1,150 @@ +const { getreddit } = require("cath"); +const { MessageActionRow, MessageButton, MessageEmbed } = require("discord.js"); +module.exports = { + name: "nsfw", + description: "NSFW command", + run: async (client, interaction) => { + const msg = await interaction.channel.send({ content: "Getting images" }); + async function embed() { + if (!interaction.channel.nsfw) { + const embed = new MessageEmbed() + .setTitle(`AYO Calm Yo Cheeks`) + .setDescription("This command only works in NSFW Channels!") + .setImage( + "https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif" + ) + .setColor(client.color) + .setFooter({ + text: `Made by ${client.author}`, + iconURL: client.user.displayAvatarURL(), + }) + .setTimestamp(); + interaction.followUp({ embeds: [embed] }); + } + let subreddits = [ + "GodPussy", + "peachlips", + "vagina", + "GoneWild", + "WorkGoneWild", + "GoneWild30Plus", + "hentai", + "HentaiAnime", + "nekogirls", + "ass", + "BestBooties", + "BootyGIFs", + "booty_queens", + "BlowJob", + "blowjobs", + "blowjobgifs", + "OralSex", + "boobs", + "GrabHerTitties", + "titfuck", + "milf", + "OnlyHotMilfs", + "realmoms", + "thighs", + "PerfectThighs", + "thickthighs", + "PushHerHead", + "ThroatFuck", + ]; + const reddit = subreddits[Math.round(Math.random() * subreddits.length)]; + let data = await getreddit(reddit); + while (data.length === 0) { + while (data.image.length === 0) { + data = await getreddit(reddit); + } + } + let embed1 = null; + embed1 = new MessageEmbed({ + title: data.title, + url: data.url, + image: { url: data.image }, + timestamp: Date.now(), + footer: { text: data.footer }, + color: client.color, + author: { + name: interaction.user.tag, + iconURL: interaction.user.displayAvatarURL({ dynamic: true }), + }, + }); + return embed1; + } + + const row = new MessageActionRow().addComponents( + new MessageButton() + .setCustomId("reload") + .setLabel("Reload") + .setStyle("SUCCESS") + ); + const disabled = new MessageActionRow().addComponents( + new MessageButton() + .setCustomId("reload") + .setLabel("Reload") + .setStyle("SECONDARY") + .setDisabled(true) + ); + await msg.delete(); + let m = await interaction.followUp({ + embeds: [await embed()], + components: [row], + }); + + const collector = m.createMessageComponentCollector({ + componentType: "BUTTON", + time: 120000, + }); + collector.on("collect", async i => { + if (i.user.id === interaction.user.id) { + i.deferUpdate(); + await update(m); + collector.stop(); + } else { + i.reply({ + content: `These buttons aren't for you!`, + ephemeral: true, + }); + } + }); + collector.on("end", (mes, r) => { + if (r == "time") { + m.edit({ + components: [disabled], + }); + } + }); + + async function update(m) { + m.edit({ + embeds: [await embed()], + }).catch(null); + + const collector = m.createMessageComponentCollector({ + componentType: "BUTTON", + time: 120000, + }); + collector.on("collect", async i => { + if (i.user.id === interaction.user.id) { + i.deferUpdate(); + await update(m); + collector.stop(); + } else { + i.reply({ + content: `These buttons aren't for you!`, + ephemeral: true, + }); + } + }); + collector.on("end", (mes, r) => { + if (r == "time") { + m.edit({ + components: [disabled], + }); + } + }); + } + }, +}; diff --git a/util/Data/domains.json b/util/Data/domains.json @@ -1,5 +1,10 @@ { "scam": [ + "disceord.gift", + "discode.gift", + "discosb.gift", + "discorx.gift", + "disocrds.gift", "disocrde.gift", "discrods.gift", "discordsgift.com", diff --git a/util/functions/common.js b/util/functions/common.js @@ -345,7 +345,7 @@ function attachmentsIdentifier(inpmsg, gun) { probables[probables.length - 1].length != 1 || probables.length < splitInputAttachmentsName.length ) { - // ask the user if he/she means xxx = which attachment + // ask the user if he means xxx = which attachment errors.push( `\` ${curr @@ -358,6 +358,7 @@ function attachmentsIdentifier(inpmsg, gun) { "\`` ); } + // push the attachment to the output list outAttachments.push(gun.aments[probables[probables.length - 1][0]]); }